Build android.test.* with java_sdk_library
android.test.* are built with java_sdk_library and api files are added
by running "make update-api".
android.test.base_static is created for allowing to use
android.test.base as a static library.
Bug:77577799
Test: make -j
Test: make checkapi
Test: make checkapi fails with a random change in the txt file
Test: adb shell cmd package list libraries |\
grep android.test.*
And check the android.test.* libraries
Change-Id: Ia27612657532e50b077a9c55dbef59ee3ec04b8a
This commit is contained in:
@@ -19,9 +19,8 @@
|
||||
// This contains the junit.framework and android.test classes that were in
|
||||
// Android API level 25 excluding those from android.test.runner.
|
||||
// Also contains the com.android.internal.util.Predicate[s] classes.
|
||||
java_library {
|
||||
java_sdk_library {
|
||||
name: "android.test.base",
|
||||
installable: true,
|
||||
|
||||
srcs: ["src/**/*.java"],
|
||||
|
||||
@@ -29,11 +28,38 @@ java_library {
|
||||
javacflags: ["-Xep:DepAnn:ERROR"],
|
||||
},
|
||||
|
||||
hostdex: true,
|
||||
|
||||
api_packages: [
|
||||
"android.test",
|
||||
"android.test.suitebuilder.annotation",
|
||||
"com.android.internal.util",
|
||||
"junit.framework",
|
||||
],
|
||||
|
||||
droiddoc_options: ["stubsourceonly"],
|
||||
compile_dex: true,
|
||||
}
|
||||
|
||||
// Build the android.test.base_static library
|
||||
// ==========================================
|
||||
// This is only intended for inclusion in the android.test.runner-minus-junit,
|
||||
// robolectric_android-all-stub and repackaged.android.test.* libraries.
|
||||
// Must not be used elewhere.
|
||||
java_library_static {
|
||||
name: "android.test.base_static",
|
||||
installable: false,
|
||||
|
||||
srcs: ["src/**/*.java"],
|
||||
|
||||
errorprone: {
|
||||
javacflags: ["-Xep:DepAnn:ERROR"],
|
||||
},
|
||||
|
||||
// Needs to be consistent with the repackaged version of this make target.
|
||||
java_version: "1.8",
|
||||
|
||||
sdk_version: "current",
|
||||
hostdex: true,
|
||||
}
|
||||
|
||||
// Build the legacy-test library
|
||||
@@ -46,7 +72,7 @@ java_library {
|
||||
installable: true,
|
||||
|
||||
sdk_version: "current",
|
||||
static_libs: ["android.test.base"],
|
||||
static_libs: ["android.test.base_static"],
|
||||
}
|
||||
|
||||
// Build the repackaged.android.test.base library
|
||||
@@ -57,7 +83,7 @@ java_library_static {
|
||||
name: "repackaged.android.test.base",
|
||||
|
||||
sdk_version: "current",
|
||||
static_libs: ["android.test.base"],
|
||||
static_libs: ["android.test.base_static"],
|
||||
|
||||
jarjar_rules: "jarjar-rules.txt",
|
||||
// Pin java_version until jarjar is certified to support later versions. http://b/72703434
|
||||
@@ -84,38 +110,3 @@ java_library_static {
|
||||
],
|
||||
}
|
||||
|
||||
droiddoc {
|
||||
name: "android-test-base-api-stubs-gen-docs",
|
||||
srcs: [
|
||||
"src/**/*.java",
|
||||
],
|
||||
custom_template: "droiddoc-templates-sdk",
|
||||
installable: false,
|
||||
args: "-stubpackages android.test:" +
|
||||
"android.test.suitebuilder.annotation:" +
|
||||
"com.android.internal.util:" +
|
||||
"junit.framework -stubsourceonly -nodocs",
|
||||
sdk_version: "current",
|
||||
api_tag_name: "ANDROID_TEST_BASE",
|
||||
api_filename: "android-test-base-api.txt",
|
||||
removed_api_filename: "android-test-base-removed.txt",
|
||||
}
|
||||
|
||||
// Build the android.test.base.stubs library
|
||||
// =========================================
|
||||
java_library_static {
|
||||
name: "android.test.base.stubs",
|
||||
srcs: [
|
||||
":android-test-base-api-stubs-gen-docs",
|
||||
],
|
||||
product_variables: {
|
||||
pdk: {
|
||||
enabled: false,
|
||||
},
|
||||
unbundled_build: {
|
||||
enabled: false,
|
||||
},
|
||||
},
|
||||
sdk_version: "current",
|
||||
compile_dex: true,
|
||||
}
|
||||
|
||||
@@ -16,50 +16,6 @@
|
||||
|
||||
LOCAL_PATH:= $(call my-dir)
|
||||
|
||||
# For unbundled build we'll use the prebuilt jar from prebuilts/sdk.
|
||||
ifeq (,$(TARGET_BUILD_APPS)$(filter true,$(TARGET_BUILD_PDK)))
|
||||
|
||||
ANDROID_TEST_BASE_API_FILE := $(LOCAL_PATH)/api/android-test-base-current.txt
|
||||
ANDROID_TEST_BASE_REMOVED_API_FILE := $(LOCAL_PATH)/api/android-test-base-removed.txt
|
||||
|
||||
full_classes_jar := $(call intermediates-dir-for,JAVA_LIBRARIES,android.test.base.stubs,,COMMON)/classes.jar
|
||||
# Archive a copy of the classes.jar in SDK build.
|
||||
$(call dist-for-goals,sdk win_sdk,$(full_classes_jar):android.test.base.stubs.jar)
|
||||
|
||||
# Check that the android.test.base.stubs library has not changed
|
||||
# ==============================================================
|
||||
|
||||
# Check that the API we're building hasn't changed from the not-yet-released
|
||||
# SDK version.
|
||||
$(eval $(call check-api, \
|
||||
check-android-test-base-api-current, \
|
||||
$(ANDROID_TEST_BASE_API_FILE), \
|
||||
$(INTERNAL_PLATFORM_ANDROID_TEST_BASE_API_FILE), \
|
||||
$(ANDROID_TEST_BASE_REMOVED_API_FILE), \
|
||||
$(INTERNAL_PLATFORM_ANDROID_TEST_BASE_REMOVED_API_FILE), \
|
||||
-error 2 -error 3 -error 4 -error 5 -error 6 \
|
||||
-error 7 -error 8 -error 9 -error 10 -error 11 -error 12 -error 13 -error 14 -error 15 \
|
||||
-error 16 -error 17 -error 18 -error 19 -error 20 -error 21 -error 23 -error 24 \
|
||||
-error 25 -error 26 -error 27, \
|
||||
cat $(LOCAL_PATH)/api/apicheck_msg_android_test_base.txt, \
|
||||
check-android-test-base-api, \
|
||||
$(OUT_DOCS)/android-test-base-api-stubs-gen-docs-stubs.srcjar \
|
||||
))
|
||||
|
||||
.PHONY: check-android-test-base-api
|
||||
checkapi: check-android-test-base-api
|
||||
|
||||
.PHONY: update-android-test-base-api
|
||||
update-api: update-android-test-base-api
|
||||
|
||||
update-android-test-base-api: $(INTERNAL_PLATFORM_ANDROID_TEST_BASE_API_FILE) | $(ACP)
|
||||
@echo Copying current.txt
|
||||
$(hide) $(ACP) $(INTERNAL_PLATFORM_ANDROID_TEST_BASE_API_FILE) $(ANDROID_TEST_BASE_API_FILE)
|
||||
@echo Copying removed.txt
|
||||
$(hide) $(ACP) $(INTERNAL_PLATFORM_ANDROID_TEST_BASE_REMOVED_API_FILE) $(ANDROID_TEST_BASE_REMOVED_API_FILE)
|
||||
|
||||
endif # not TARGET_BUILD_APPS not TARGET_BUILD_PDK=true
|
||||
|
||||
ifeq ($(HOST_OS),linux)
|
||||
# Build the legacy-performance-test-hostdex library
|
||||
# =================================================
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
|
||||
******************************
|
||||
You have tried to change the API from what has been previously approved.
|
||||
|
||||
To make these errors go away, you have two choices:
|
||||
1) You can add "@hide" javadoc comments to the methods, etc. listed in the
|
||||
errors above.
|
||||
|
||||
2) You can update android-test-base-current.txt by executing the following command:
|
||||
make update-android-test-base-api
|
||||
|
||||
To submit the revised android-test-base-current.txt to the main Android repository,
|
||||
you will need approval.
|
||||
******************************
|
||||
|
||||
|
||||
|
||||
0
test-base/api/system-current.txt
Normal file
0
test-base/api/system-current.txt
Normal file
0
test-base/api/system-removed.txt
Normal file
0
test-base/api/system-removed.txt
Normal file
0
test-base/api/test-current.txt
Normal file
0
test-base/api/test-current.txt
Normal file
0
test-base/api/test-removed.txt
Normal file
0
test-base/api/test-removed.txt
Normal file
Reference in New Issue
Block a user