• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#
2# Copyright 2017 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8#      http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16
17LOCAL_PATH:= $(call my-dir)
18
19# Build a tiny library that the test app can dynamically load
20
21include $(CLEAR_VARS)
22
23LOCAL_MODULE_TAGS := tests
24LOCAL_MODULE := DynamicCodeLoggerTestLibrary
25LOCAL_SRC_FILES := $(call all-java-files-under, src/com/android/dcl)
26
27include $(BUILD_JAVA_LIBRARY)
28
29dynamiccodeloggertest_jar := $(LOCAL_BUILT_MODULE)
30
31
32# Also build a native library that the test app can dynamically load
33
34include $(CLEAR_VARS)
35
36LOCAL_MODULE_TAGS := tests
37LOCAL_MODULE := DynamicCodeLoggerNativeTestLibrary
38LOCAL_SRC_FILES := src/cpp/com_android_dcl_Jni.cpp
39LOCAL_C_INCLUDES += \
40    $(JNI_H_INCLUDE)
41LOCAL_SDK_VERSION := 28
42LOCAL_NDK_STL_VARIANT := c++_static
43
44include $(BUILD_SHARED_LIBRARY)
45
46# And a standalone native executable that we can exec.
47
48include $(CLEAR_VARS)
49
50LOCAL_MODULE_TAGS := tests
51LOCAL_MODULE := DynamicCodeLoggerNativeExecutable
52LOCAL_SRC_FILES := src/cpp/test_executable.cpp
53
54include $(BUILD_EXECUTABLE)
55
56dynamiccodeloggertest_executable := $(LOCAL_BUILT_MODULE)
57
58# Build the test app itself
59
60include $(CLEAR_VARS)
61
62LOCAL_MODULE_TAGS := tests
63LOCAL_PACKAGE_NAME := DynamicCodeLoggerIntegrationTests
64LOCAL_SDK_VERSION := current
65LOCAL_COMPATIBILITY_SUITE := device-tests
66LOCAL_CERTIFICATE := shared
67LOCAL_SRC_FILES := $(call all-java-files-under, src/com/android/server/pm)
68
69LOCAL_STATIC_JAVA_LIBRARIES := \
70    androidx.test.rules \
71    truth-prebuilt \
72
73# Include both versions of the .so if we have 2 arch
74LOCAL_MULTILIB := both
75LOCAL_JNI_SHARED_LIBRARIES := \
76    DynamicCodeLoggerNativeTestLibrary \
77
78# This gets us the javalib.jar built by DynamicCodeLoggerTestLibrary above as well as the various
79# native binaries.
80LOCAL_JAVA_RESOURCE_FILES := \
81    $(dynamiccodeloggertest_jar) \
82    $(dynamiccodeloggertest_executable) \
83
84include $(BUILD_PACKAGE)
85