diff options
Diffstat (limited to 'Android.mk')
| -rw-r--r-- | Android.mk | 224 |
1 files changed, 35 insertions, 189 deletions
diff --git a/Android.mk b/Android.mk index a984a0fdd5b4..c68eb46ce05d 100644 --- a/Android.mk +++ b/Android.mk @@ -168,37 +168,25 @@ framework_docs_LOCAL_DROIDDOC_OPTIONS := \ -hidePackage com.android.internal.util \ -hidePackage com.android.okhttp \ -hidePackage com.android.org.conscrypt \ - -hidePackage com.android.server \ - -since $(SRC_API_DIR)/1.xml 1 \ - -since $(SRC_API_DIR)/2.xml 2 \ - -since $(SRC_API_DIR)/3.xml 3 \ - -since $(SRC_API_DIR)/4.xml 4 \ - -since $(SRC_API_DIR)/5.xml 5 \ - -since $(SRC_API_DIR)/6.xml 6 \ - -since $(SRC_API_DIR)/7.xml 7 \ - -since $(SRC_API_DIR)/8.xml 8 \ - -since $(SRC_API_DIR)/9.xml 9 \ - -since $(SRC_API_DIR)/10.xml 10 \ - -since $(SRC_API_DIR)/11.xml 11 \ - -since $(SRC_API_DIR)/12.xml 12 \ - -since $(SRC_API_DIR)/13.xml 13 \ - -since $(SRC_API_DIR)/14.txt 14 \ - -since $(SRC_API_DIR)/15.txt 15 \ - -since $(SRC_API_DIR)/16.txt 16 \ - -since $(SRC_API_DIR)/17.txt 17 \ - -since $(SRC_API_DIR)/18.txt 18 \ - -since $(SRC_API_DIR)/19.txt 19 \ - -since $(SRC_API_DIR)/20.txt 20 \ - -since $(SRC_API_DIR)/21.txt 21 \ - -since $(SRC_API_DIR)/22.txt 22 \ - -since $(SRC_API_DIR)/23.txt 23 \ - -since $(SRC_API_DIR)/24.txt 24 \ - -since $(SRC_API_DIR)/25.txt 25 \ - -since $(SRC_API_DIR)/26.txt 26 \ - -since $(SRC_API_DIR)/27.txt 27 \ - -since $(SRC_API_DIR)/28.txt 28 \ + -hidePackage com.android.server + +# Convert an sdk level to a "since" argument. +since-arg = -since $(wildcard $(HISTORICAL_SDK_VERSIONS_ROOT)/$(1)/public/api/android.*) $(1) + +finalized_sdks := $(patsubst $(HISTORICAL_SDK_VERSIONS_ROOT)/%/public/api/android.xml,%,\ + $(wildcard $(HISTORICAL_SDK_VERSIONS_ROOT)/*/public/api/android.xml)) +finalized_sdks += $(patsubst $(HISTORICAL_SDK_VERSIONS_ROOT)/%/public/api/android.txt,%,\ + $(wildcard $(HISTORICAL_SDK_VERSIONS_ROOT)/*/public/api/android.txt)) +finalized_sdks := $(call numerically_sort,$(finalized_sdks)) + +framework_docs_LOCAL_DROIDDOC_OPTIONS += $(foreach sdk,$(finalized_sdks),$(call since-arg,$(sdk))) +ifneq ($(PLATFORM_VERSION_CODENAME),REL) + framework_docs_LOCAL_DROIDDOC_OPTIONS += \ + -since ./frameworks/base/api/current.txt $(PLATFORM_VERSION_CODENAME) +endif +framework_docs_LOCAL_DROIDDOC_OPTIONS += \ -werror -lerror -hide 111 -hide 113 -hide 125 -hide 126 -hide 127 -hide 128 \ - -overview $(LOCAL_PATH)/core/java/overview.html \ + -overview $(LOCAL_PATH)/core/java/overview.html framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR:= \ $(call intermediates-dir-for,JAVA_LIBRARIES,framework,,COMMON) @@ -257,6 +245,18 @@ framework_docs_LOCAL_DROIDDOC_OPTIONS += \ -federate AndroidX https://developer.android.com \ -federationapi AndroidX prebuilts/sdk/current/androidx-api.txt +# Get the highest numbered api txt for the given api level. +# $(1): the api level (e.g. public, system) +define highest_sdk_txt +$(HISTORICAL_SDK_VERSIONS_ROOT)/$(lastword $(call numerically_sort, \ + $(patsubst \ + $(HISTORICAL_SDK_VERSIONS_ROOT)/%,\ + %,\ + $(wildcard $(HISTORICAL_SDK_VERSIONS_ROOT)/*/$(1)/api/android.txt)\ + ) \ +)) +endef + # ==== Public API diff =========================== include $(CLEAR_VARS) @@ -272,13 +272,8 @@ LOCAL_ADDITIONAL_DEPENDENCIES := \ LOCAL_MODULE := offline-sdk-referenceonly -last_released_sdk_version := $(lastword $(call numerically_sort, \ - $(filter-out current, \ - $(patsubst $(SRC_API_DIR)/%.txt,%, $(wildcard $(SRC_API_DIR)/*.txt)) \ - )\ - )) - -LOCAL_APIDIFF_OLDAPI := $(LOCAL_PATH)/../../$(SRC_API_DIR)/$(last_released_sdk_version) +# Basename, because apidiff adds .txt internally. +LOCAL_APIDIFF_OLDAPI := $(basename $(call highest_sdk_txt,public)) LOCAL_APIDIFF_NEWAPI := $(LOCAL_PATH)/../../$(basename $(INTERNAL_PLATFORM_API_FILE)) include $(BUILD_APIDIFF) @@ -302,13 +297,8 @@ LOCAL_ADDITIONAL_DEPENDENCIES := \ LOCAL_MODULE := offline-system-sdk-referenceonly -last_released_sdk_version := $(lastword $(call numerically_sort, \ - $(filter-out current, \ - $(patsubst $(SRC_SYSTEM_API_DIR)/%.txt,%, $(wildcard $(SRC_SYSTEM_API_DIR)/*.txt)) \ - )\ - )) - -LOCAL_APIDIFF_OLDAPI := $(LOCAL_PATH)/../../$(SRC_SYSTEM_API_DIR)/$(last_released_sdk_version) +# Basename, because apidiff adds .txt internally. +LOCAL_APIDIFF_OLDAPI := $(basename $(call highest_sdk_txt,system)) LOCAL_APIDIFF_NEWAPI := $(LOCAL_PATH)/../../$(basename $(INTERNAL_PLATFORM_SYSTEM_API_FILE)) include $(BUILD_APIDIFF) @@ -317,151 +307,10 @@ include $(BUILD_APIDIFF) out_zip := $(OUT_DOCS)/$(LOCAL_MODULE)-docs.zip $(out_zip): $(full_target) -# ==== the api stubs and current.xml =========================== -include $(CLEAR_VARS) - -LOCAL_SRC_FILES:=$(framework_docs_LOCAL_API_CHECK_SRC_FILES) -LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES) -LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS) -LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES) -LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS) -LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH) -LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR) -LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR) -LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES) - -LOCAL_MODULE := api-stubs - -LOCAL_DROIDDOC_STUB_OUT_DIR := $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android_stubs_current_intermediates/src - -LOCAL_DROIDDOC_OPTIONS:=\ - $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \ - -referenceonly \ - -api $(INTERNAL_PLATFORM_API_FILE) \ - -removedApi $(INTERNAL_PLATFORM_REMOVED_API_FILE) \ - -nodocs - -LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk - -LOCAL_UNINSTALLABLE_MODULE := true - -include $(BUILD_DROIDDOC) - -$(full_target): .KATI_IMPLICIT_OUTPUTS := $(INTERNAL_PLATFORM_API_FILE) \ - $(INTERNAL_PLATFORM_REMOVED_API_FILE) $(call dist-for-goals,sdk,$(INTERNAL_PLATFORM_API_FILE)) - -# ==== the system api stubs =================================== -include $(CLEAR_VARS) - -LOCAL_SRC_FILES:=$(framework_docs_LOCAL_API_CHECK_SRC_FILES) -LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES) -LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS) -LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES) -LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS) -LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH) -LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR) -LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR) -LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES) - -LOCAL_MODULE := system-api-stubs - -LOCAL_DROIDDOC_STUB_OUT_DIR := $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android_system_stubs_current_intermediates/src - -LOCAL_DROIDDOC_OPTIONS:=\ - $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \ - -referenceonly \ - -showAnnotation android.annotation.SystemApi \ - -api $(INTERNAL_PLATFORM_SYSTEM_API_FILE) \ - -removedApi $(INTERNAL_PLATFORM_SYSTEM_REMOVED_API_FILE) \ - -exactApi $(INTERNAL_PLATFORM_SYSTEM_EXACT_API_FILE) \ - -nodocs - -LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk - -LOCAL_UNINSTALLABLE_MODULE := true - -include $(BUILD_DROIDDOC) - -$(full_target): .KATI_IMPLICIT_OUTPUTS := $(INTERNAL_PLATFORM_SYSTEM_API_FILE) \ - $(INTERNAL_PLATFORM_SYSTEM_REMOVED_API_FILE) \ - $(INTERNAL_PLATFORM_SYSTEM_EXACT_API_FILE) $(call dist-for-goals,sdk,$(INTERNAL_PLATFORM_SYSTEM_API_FILE)) - -# ==== the test api stubs =================================== -include $(CLEAR_VARS) - -LOCAL_SRC_FILES:=$(framework_docs_LOCAL_API_CHECK_SRC_FILES) -LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES) -LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS) -LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES) -LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS) -LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH) -LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR) -LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR) -LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES) - -LOCAL_MODULE := test-api-stubs - -LOCAL_DROIDDOC_STUB_OUT_DIR := $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android_test_stubs_current_intermediates/src - -LOCAL_DROIDDOC_OPTIONS:=\ - $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \ - -referenceonly \ - -stubs $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android_test_stubs_current_intermediates/src \ - -showAnnotation android.annotation.TestApi \ - -api $(INTERNAL_PLATFORM_TEST_API_FILE) \ - -removedApi $(INTERNAL_PLATFORM_TEST_REMOVED_API_FILE) \ - -exactApi $(INTERNAL_PLATFORM_TEST_EXACT_API_FILE) \ - -nodocs - -LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk - -LOCAL_UNINSTALLABLE_MODULE := true - -include $(BUILD_DROIDDOC) - -$(full_target): .KATI_IMPLICIT_OUTPUTS := $(INTERNAL_PLATFORM_TEST_API_FILE) \ - $(INTERNAL_PLATFORM_TEST_REMOVED_API_FILE) \ - $(INTERNAL_PLATFORM_TEST_EXACT_API_FILE) $(call dist-for-goals,sdk,$(INTERNAL_PLATFORM_TEST_API_FILE)) -# ==== the complete hidden api list =================================== -include $(CLEAR_VARS) - -LOCAL_SRC_FILES:=$(framework_docs_LOCAL_API_CHECK_SRC_FILES) -LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES) -LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS) -LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES) -LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS) -LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH) -LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR) -LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR) -LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES) - -LOCAL_MODULE := hidden-api-list - -LOCAL_DROIDDOC_OPTIONS:=\ - $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \ - -referenceonly \ - -showUnannotated \ - -showAnnotation android.annotation.SystemApi \ - -showAnnotation android.annotation.TestApi \ - -dexApi $(INTERNAL_PLATFORM_DEX_API_FILE) \ - -privateDexApi $(INTERNAL_PLATFORM_PRIVATE_DEX_API_FILE) \ - -removedDexApi $(INTERNAL_PLATFORM_REMOVED_DEX_API_FILE) \ - -nodocs - -LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk - -LOCAL_UNINSTALLABLE_MODULE := true - -include $(BUILD_DROIDDOC) - -$(full_target): .KATI_IMPLICIT_OUTPUTS := $(INTERNAL_PLATFORM_DEX_API_FILE) \ - $(INTERNAL_PLATFORM_PRIVATE_DEX_API_FILE) \ - $(INTERNAL_PLATFORM_REMOVED_DEX_API_FILE) - # ==== check javadoc comments but don't generate docs ======== include $(CLEAR_VARS) @@ -880,7 +729,6 @@ LOCAL_BLACKLIST := $(INTERNAL_PLATFORM_HIDDENAPI_BLACKLIST) LOCAL_SRC_GREYLIST := frameworks/base/config/hiddenapi-light-greylist.txt LOCAL_SRC_VENDOR_LIST := frameworks/base/config/hiddenapi-vendor-list.txt LOCAL_SRC_FORCE_BLACKLIST := frameworks/base/config/hiddenapi-force-blacklist.txt -LOCAL_SRC_PUBLIC_API := $(INTERNAL_PLATFORM_DEX_API_FILE) LOCAL_SRC_PRIVATE_API := $(INTERNAL_PLATFORM_PRIVATE_DEX_API_FILE) LOCAL_SRC_REMOVED_API := $(INTERNAL_PLATFORM_REMOVED_DEX_API_FILE) @@ -888,7 +736,6 @@ LOCAL_SRC_ALL := \ $(LOCAL_SRC_GREYLIST) \ $(LOCAL_SRC_VENDOR_LIST) \ $(LOCAL_SRC_FORCE_BLACKLIST) \ - $(LOCAL_SRC_PUBLIC_API) \ $(LOCAL_SRC_PRIVATE_API) \ $(LOCAL_SRC_REMOVED_API) @@ -961,8 +808,7 @@ $(LOCAL_LIGHT_GREYLIST): $(LOCAL_SRC_ALL) # (4) subtract entries shared with LOCAL_LIGHT_GREYLIST $(LOCAL_DARK_GREYLIST): $(LOCAL_SRC_ALL) $(LOCAL_LIGHT_GREYLIST) comm -13 <(sort $(LOCAL_LIGHT_GREYLIST) $(LOCAL_SRC_FORCE_BLACKLIST)) \ - <(cat $(LOCAL_SRC_PUBLIC_API) $(LOCAL_LIGHT_GREYLIST) | \ - sed 's/\->.*//' | sed 's/\(.*\/\).*/\1/' | sort | uniq | \ + <(sed 's/\->.*//' $(LOCAL_LIGHT_GREYLIST) | sed 's/\(.*\/\).*/\1/' | sort | uniq | \ while read PKG_NAME; do \ grep -E "^$${PKG_NAME}[^/;]*;" $(LOCAL_SRC_PRIVATE_API); \ done | sort | uniq) \ |