forked from openkylin/platform_build
Support "LOCAL_SDK_VERSION := system_current"
A module can declare "LOCAL_SDK_VERSION := system_current" to build against the android system stubs generated from source. For now this is only supported in platform build. Change-Id: I1e9bbd159886bc0ea3a02b1dc4cbcb1a56e9cb15
This commit is contained in:
parent
50367cc77d
commit
efb935800b
|
@ -207,12 +207,12 @@ aidl_sources := $(addprefix $(TOP_DIR)$(LOCAL_PATH)/, $(aidl_sources))
|
||||||
aidl_preprocess_import :=
|
aidl_preprocess_import :=
|
||||||
LOCAL_SDK_VERSION:=$(strip $(LOCAL_SDK_VERSION))
|
LOCAL_SDK_VERSION:=$(strip $(LOCAL_SDK_VERSION))
|
||||||
ifdef LOCAL_SDK_VERSION
|
ifdef LOCAL_SDK_VERSION
|
||||||
ifeq ($(LOCAL_SDK_VERSION)$(TARGET_BUILD_APPS),current)
|
ifneq ($(filter current system_current, $(LOCAL_SDK_VERSION)$(TARGET_BUILD_APPS)),)
|
||||||
# LOCAL_SDK_VERSION is current and no TARGET_BUILD_APPS
|
# LOCAL_SDK_VERSION is current and no TARGET_BUILD_APPS
|
||||||
aidl_preprocess_import := $(TARGET_OUT_COMMON_INTERMEDIATES)/framework.aidl
|
aidl_preprocess_import := $(TARGET_OUT_COMMON_INTERMEDIATES)/framework.aidl
|
||||||
else
|
else
|
||||||
aidl_preprocess_import := $(HISTORICAL_SDK_VERSIONS_ROOT)/$(LOCAL_SDK_VERSION)/framework.aidl
|
aidl_preprocess_import := $(HISTORICAL_SDK_VERSIONS_ROOT)/$(LOCAL_SDK_VERSION)/framework.aidl
|
||||||
endif # !current
|
endif # not current or system_current
|
||||||
else
|
else
|
||||||
# build against the platform.
|
# build against the platform.
|
||||||
LOCAL_AIDL_INCLUDES += $(FRAMEWORKS_BASE_JAVA_SRC_DIRS)
|
LOCAL_AIDL_INCLUDES += $(FRAMEWORKS_BASE_JAVA_SRC_DIRS)
|
||||||
|
@ -395,9 +395,11 @@ else
|
||||||
ifeq ($(LOCAL_SDK_VERSION)$(TARGET_BUILD_APPS),current)
|
ifeq ($(LOCAL_SDK_VERSION)$(TARGET_BUILD_APPS),current)
|
||||||
# LOCAL_SDK_VERSION is current and no TARGET_BUILD_APPS.
|
# LOCAL_SDK_VERSION is current and no TARGET_BUILD_APPS.
|
||||||
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_BOOTCLASSPATH := -bootclasspath $(call java-lib-files,android_stubs_current)
|
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_BOOTCLASSPATH := -bootclasspath $(call java-lib-files,android_stubs_current)
|
||||||
|
else ifeq ($(LOCAL_SDK_VERSION)$(TARGET_BUILD_APPS),system_current)
|
||||||
|
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_BOOTCLASSPATH := -bootclasspath $(call java-lib-files,android_system_stubs_current)
|
||||||
else
|
else
|
||||||
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_BOOTCLASSPATH := -bootclasspath $(call java-lib-files,sdk_v$(LOCAL_SDK_VERSION))
|
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_BOOTCLASSPATH := -bootclasspath $(call java-lib-files,sdk_v$(LOCAL_SDK_VERSION))
|
||||||
endif # current
|
endif # current or system_current
|
||||||
endif # LOCAL_SDK_VERSION
|
endif # LOCAL_SDK_VERSION
|
||||||
endif # TARGET_
|
endif # TARGET_
|
||||||
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_RESOURCE_DIR := $(LOCAL_RESOURCE_DIR)
|
$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_RESOURCE_DIR := $(LOCAL_RESOURCE_DIR)
|
||||||
|
|
|
@ -585,7 +585,8 @@ endef
|
||||||
|
|
||||||
TARGET_AVAILABLE_SDK_VERSIONS := $(call numerically_sort,\
|
TARGET_AVAILABLE_SDK_VERSIONS := $(call numerically_sort,\
|
||||||
$(patsubst $(HISTORICAL_SDK_VERSIONS_ROOT)/%/android.jar,%, \
|
$(patsubst $(HISTORICAL_SDK_VERSIONS_ROOT)/%/android.jar,%, \
|
||||||
$(wildcard $(HISTORICAL_SDK_VERSIONS_ROOT)/*/android.jar)))
|
$(wildcard $(HISTORICAL_SDK_VERSIONS_ROOT)/*/android.jar))) \
|
||||||
|
system_current
|
||||||
|
|
||||||
INTERNAL_PLATFORM_API_FILE := $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/public_api.txt
|
INTERNAL_PLATFORM_API_FILE := $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/public_api.txt
|
||||||
INTERNAL_PLATFORM_REMOVED_API_FILE := $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/removed.txt
|
INTERNAL_PLATFORM_REMOVED_API_FILE := $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/removed.txt
|
||||||
|
|
|
@ -64,6 +64,9 @@ ifneq ($(LOCAL_SDK_VERSION),)
|
||||||
# Use android_stubs_current if LOCAL_SDK_VERSION is current and no TARGET_BUILD_APPS.
|
# Use android_stubs_current if LOCAL_SDK_VERSION is current and no TARGET_BUILD_APPS.
|
||||||
LOCAL_JAVA_LIBRARIES := android_stubs_current $(LOCAL_JAVA_LIBRARIES)
|
LOCAL_JAVA_LIBRARIES := android_stubs_current $(LOCAL_JAVA_LIBRARIES)
|
||||||
$(full_target): PRIVATE_BOOTCLASSPATH := $(call java-lib-files, android_stubs_current)
|
$(full_target): PRIVATE_BOOTCLASSPATH := $(call java-lib-files, android_stubs_current)
|
||||||
|
else ifeq ($(LOCAL_SDK_VERSION)$(TARGET_BUILD_APPS),system_current)
|
||||||
|
LOCAL_JAVA_LIBRARIES := android_system_stubs_current $(LOCAL_JAVA_LIBRARIES)
|
||||||
|
$(full_target): PRIVATE_BOOTCLASSPATH := $(call java-lib-files, android_system_stubs_current)
|
||||||
else
|
else
|
||||||
LOCAL_JAVA_LIBRARIES := sdk_v$(LOCAL_SDK_VERSION) $(LOCAL_JAVA_LIBRARIES)
|
LOCAL_JAVA_LIBRARIES := sdk_v$(LOCAL_SDK_VERSION) $(LOCAL_JAVA_LIBRARIES)
|
||||||
$(full_target): PRIVATE_BOOTCLASSPATH := $(call java-lib-files, sdk_v$(LOCAL_SDK_VERSION))
|
$(full_target): PRIVATE_BOOTCLASSPATH := $(call java-lib-files, sdk_v$(LOCAL_SDK_VERSION))
|
||||||
|
|
|
@ -26,6 +26,8 @@ ifneq ($(LOCAL_SDK_VERSION),)
|
||||||
ifeq ($(LOCAL_SDK_VERSION)$(TARGET_BUILD_APPS),current)
|
ifeq ($(LOCAL_SDK_VERSION)$(TARGET_BUILD_APPS),current)
|
||||||
# Use android_stubs_current if LOCAL_SDK_VERSION is current and no TARGET_BUILD_APPS.
|
# Use android_stubs_current if LOCAL_SDK_VERSION is current and no TARGET_BUILD_APPS.
|
||||||
LOCAL_JAVA_LIBRARIES := android_stubs_current $(LOCAL_JAVA_LIBRARIES)
|
LOCAL_JAVA_LIBRARIES := android_stubs_current $(LOCAL_JAVA_LIBRARIES)
|
||||||
|
else ifeq ($(LOCAL_SDK_VERSION)$(TARGET_BUILD_APPS),system_current)
|
||||||
|
LOCAL_JAVA_LIBRARIES := android_system_stubs_current $(LOCAL_JAVA_LIBRARIES)
|
||||||
else
|
else
|
||||||
LOCAL_JAVA_LIBRARIES := sdk_v$(LOCAL_SDK_VERSION) $(LOCAL_JAVA_LIBRARIES)
|
LOCAL_JAVA_LIBRARIES := sdk_v$(LOCAL_SDK_VERSION) $(LOCAL_JAVA_LIBRARIES)
|
||||||
endif
|
endif
|
||||||
|
@ -142,7 +144,7 @@ renderscript_target_api := $(LOCAL_RENDERSCRIPT_TARGET_API)
|
||||||
else
|
else
|
||||||
ifneq (,$(LOCAL_SDK_VERSION))
|
ifneq (,$(LOCAL_SDK_VERSION))
|
||||||
# Set target-api for LOCAL_SDK_VERSIONs other than current.
|
# Set target-api for LOCAL_SDK_VERSIONs other than current.
|
||||||
ifneq (,$(filter-out current, $(LOCAL_SDK_VERSION)))
|
ifneq (,$(filter-out current system_current, $(LOCAL_SDK_VERSION)))
|
||||||
renderscript_target_api := $(LOCAL_SDK_VERSION)
|
renderscript_target_api := $(LOCAL_SDK_VERSION)
|
||||||
endif
|
endif
|
||||||
endif # LOCAL_SDK_VERSION is set
|
endif # LOCAL_SDK_VERSION is set
|
||||||
|
@ -158,7 +160,7 @@ renderscript_flags := -Wall -Werror
|
||||||
renderscript_flags += $(LOCAL_RENDERSCRIPT_FLAGS)
|
renderscript_flags += $(LOCAL_RENDERSCRIPT_FLAGS)
|
||||||
|
|
||||||
# prepend the RenderScript system include path
|
# prepend the RenderScript system include path
|
||||||
ifneq ($(filter-out current,$(LOCAL_SDK_VERSION))$(if $(TARGET_BUILD_APPS),$(filter current,$(LOCAL_SDK_VERSION))),)
|
ifneq ($(filter-out current system_current,$(LOCAL_SDK_VERSION))$(if $(TARGET_BUILD_APPS),$(filter current system_current,$(LOCAL_SDK_VERSION))),)
|
||||||
# if a numeric LOCAL_SDK_VERSION, or current LOCAL_SDK_VERSION with TARGET_BUILD_APPS
|
# if a numeric LOCAL_SDK_VERSION, or current LOCAL_SDK_VERSION with TARGET_BUILD_APPS
|
||||||
LOCAL_RENDERSCRIPT_INCLUDES := \
|
LOCAL_RENDERSCRIPT_INCLUDES := \
|
||||||
$(HISTORICAL_SDK_VERSIONS_ROOT)/renderscript/clang-include \
|
$(HISTORICAL_SDK_VERSIONS_ROOT)/renderscript/clang-include \
|
||||||
|
|
|
@ -194,7 +194,7 @@ include $(BUILD_SYSTEM)/android_manifest.mk
|
||||||
|
|
||||||
$(LOCAL_INTERMEDIATE_TARGETS): \
|
$(LOCAL_INTERMEDIATE_TARGETS): \
|
||||||
PRIVATE_ANDROID_MANIFEST := $(full_android_manifest)
|
PRIVATE_ANDROID_MANIFEST := $(full_android_manifest)
|
||||||
ifneq (,$(filter-out current, $(LOCAL_SDK_VERSION)))
|
ifneq (,$(filter-out current system_current, $(LOCAL_SDK_VERSION)))
|
||||||
$(LOCAL_INTERMEDIATE_TARGETS): \
|
$(LOCAL_INTERMEDIATE_TARGETS): \
|
||||||
PRIVATE_DEFAULT_APP_TARGET_SDK := $(LOCAL_SDK_VERSION)
|
PRIVATE_DEFAULT_APP_TARGET_SDK := $(LOCAL_SDK_VERSION)
|
||||||
else
|
else
|
||||||
|
@ -282,7 +282,7 @@ else
|
||||||
# Most packages should link against the resources defined by framework-res.
|
# Most packages should link against the resources defined by framework-res.
|
||||||
# Even if they don't have their own resources, they may use framework
|
# Even if they don't have their own resources, they may use framework
|
||||||
# resources.
|
# resources.
|
||||||
ifneq ($(filter-out current,$(LOCAL_SDK_RES_VERSION))$(if $(TARGET_BUILD_APPS),$(filter current,$(LOCAL_SDK_RES_VERSION))),)
|
ifneq ($(filter-out current system_current,$(LOCAL_SDK_RES_VERSION))$(if $(TARGET_BUILD_APPS),$(filter current system_current,$(LOCAL_SDK_RES_VERSION))),)
|
||||||
# for released sdk versions, the platform resources were built into android.jar.
|
# for released sdk versions, the platform resources were built into android.jar.
|
||||||
framework_res_package_export := \
|
framework_res_package_export := \
|
||||||
$(HISTORICAL_SDK_VERSIONS_ROOT)/$(LOCAL_SDK_RES_VERSION)/android.jar
|
$(HISTORICAL_SDK_VERSIONS_ROOT)/$(LOCAL_SDK_RES_VERSION)/android.jar
|
||||||
|
|
|
@ -78,7 +78,7 @@ framework_res_package_export :=
|
||||||
framework_res_package_export_deps :=
|
framework_res_package_export_deps :=
|
||||||
# Please refer to package.mk
|
# Please refer to package.mk
|
||||||
ifneq ($(LOCAL_NO_STANDARD_LIBRARIES),true)
|
ifneq ($(LOCAL_NO_STANDARD_LIBRARIES),true)
|
||||||
ifneq ($(filter-out current,$(LOCAL_SDK_RES_VERSION))$(if $(TARGET_BUILD_APPS),$(filter current,$(LOCAL_SDK_RES_VERSION))),)
|
ifneq ($(filter-out current system_current,$(LOCAL_SDK_RES_VERSION))$(if $(TARGET_BUILD_APPS),$(filter current system_current,$(LOCAL_SDK_RES_VERSION))),)
|
||||||
framework_res_package_export := \
|
framework_res_package_export := \
|
||||||
$(HISTORICAL_SDK_VERSIONS_ROOT)/$(LOCAL_SDK_RES_VERSION)/android.jar
|
$(HISTORICAL_SDK_VERSIONS_ROOT)/$(LOCAL_SDK_RES_VERSION)/android.jar
|
||||||
framework_res_package_export_deps := $(framework_res_package_export)
|
framework_res_package_export_deps := $(framework_res_package_export)
|
||||||
|
@ -98,7 +98,7 @@ $(R_file_stamp): PRIVATE_ANDROID_MANIFEST := $(full_android_manifest)
|
||||||
$(R_file_stamp): PRIVATE_RESOURCE_PUBLICS_OUTPUT := $(intermediates.COMMON)/public_resources.xml
|
$(R_file_stamp): PRIVATE_RESOURCE_PUBLICS_OUTPUT := $(intermediates.COMMON)/public_resources.xml
|
||||||
$(R_file_stamp): PRIVATE_RESOURCE_DIR := $(LOCAL_RESOURCE_DIR)
|
$(R_file_stamp): PRIVATE_RESOURCE_DIR := $(LOCAL_RESOURCE_DIR)
|
||||||
$(R_file_stamp): PRIVATE_AAPT_INCLUDES := $(framework_res_package_export)
|
$(R_file_stamp): PRIVATE_AAPT_INCLUDES := $(framework_res_package_export)
|
||||||
ifneq (,$(filter-out current, $(LOCAL_SDK_VERSION)))
|
ifneq (,$(filter-out current system_current, $(LOCAL_SDK_VERSION)))
|
||||||
$(R_file_stamp): PRIVATE_DEFAULT_APP_TARGET_SDK := $(LOCAL_SDK_VERSION)
|
$(R_file_stamp): PRIVATE_DEFAULT_APP_TARGET_SDK := $(LOCAL_SDK_VERSION)
|
||||||
else
|
else
|
||||||
$(R_file_stamp): PRIVATE_DEFAULT_APP_TARGET_SDK := $(DEFAULT_APP_TARGET_SDK)
|
$(R_file_stamp): PRIVATE_DEFAULT_APP_TARGET_SDK := $(DEFAULT_APP_TARGET_SDK)
|
||||||
|
|
Loading…
Reference in New Issue