diff options
author | Ying Wang <wangying@google.com> | 2010-01-25 09:56:41 -0800 |
---|---|---|
committer | Ying Wang <wangying@google.com> | 2010-02-11 14:23:23 -0800 |
commit | e3265fb743e13a1b602f220f58b398d82772eabb (patch) | |
tree | e5320863d9d4efa885dad2357e8059cc5a427113 | |
parent | 3b2bdf10338fb048fc749ce9f65a77f917f7d304 (diff) | |
download | build-e3265fb743e13a1b602f220f58b398d82772eabb.zip build-e3265fb743e13a1b602f220f58b398d82772eabb.tar.gz build-e3265fb743e13a1b602f220f58b398d82772eabb.tar.bz2 |
Makefile change for build against historical sdk versions.
If LOCAL_SDK_VERSION is current, link against the stub, otherwise
link against prebuilt historical sdk
-rw-r--r-- | core/base_rules.mk | 23 | ||||
-rw-r--r-- | core/java.mk | 6 |
2 files changed, 26 insertions, 3 deletions
diff --git a/core/base_rules.mk b/core/base_rules.mk index a2acb01..2b3e94b 100644 --- a/core/base_rules.mk +++ b/core/base_rules.mk @@ -186,7 +186,14 @@ ifneq ($(strip $(aidl_sources)),) aidl_java_sources := $(patsubst %.aidl,%.java,$(addprefix $(intermediates.COMMON)/src/, $(aidl_sources))) aidl_sources := $(addprefix $(TOP_DIR)$(LOCAL_PATH)/, $(aidl_sources)) -$(aidl_java_sources): PRIVATE_AIDL_FLAGS := -b -I$(LOCAL_PATH) -I$(LOCAL_PATH)/src $(addprefix -I,$(LOCAL_AIDL_INCLUDES)) +aidl_preprocess_import := +LOCAL_SDK_VERSION:=$(strip $(LOCAL_SDK_VERSION)) +ifdef LOCAL_SDK_VERSION +ifneq ($(LOCAL_SDK_VERSION),current) +aidl_preprocess_import := -p$(TOPDIR)prebuilt/sdk/$(LOCAL_SDK_VERSION)/framework.aidl +endif # !current +endif # LOCAL_SDK_VERSION +$(aidl_java_sources): PRIVATE_AIDL_FLAGS := -b $(aidl_preprocess_import) -I$(LOCAL_PATH) -I$(LOCAL_PATH)/src $(addprefix -I,$(LOCAL_AIDL_INCLUDES)) $(aidl_java_sources): $(intermediates.COMMON)/src/%.java: $(TOPDIR)$(LOCAL_PATH)/%.aidl $(PRIVATE_ADDITIONAL_DEPENDENCIES) $(AIDL) $(transform-aidl-to-java) @@ -330,9 +337,21 @@ ifdef LOCAL_IS_HOST_MODULE full_java_libs := $(addprefix $(HOST_OUT_JAVA_LIBRARIES)/,$(addsuffix $(COMMON_JAVA_PACKAGE_SUFFIX),$(LOCAL_JAVA_LIBRARIES))) full_java_lib_deps := $(full_java_libs) else +ifdef LOCAL_SDK_VERSION +ifneq ($(LOCAL_SDK_VERSION),current) +full_java_libs := $(call java-lib-files,$(LOCAL_JAVA_LIBRARIES),$(LOCAL_IS_HOST_MODULE)) +# For prebuilt sdk versions, we can't depend on the javalib.jar but classes.jar. +full_java_lib_deps := $(call java-lib-deps,$(filter-out sdk_v$(LOCAL_SDK_VERSION),$(LOCAL_JAVA_LIBRARIES)),$(LOCAL_IS_HOST_MODULE)) +full_java_lib_deps += $(call java-lib-files,sdk_v$(LOCAL_SDK_VERSION),$(LOCAL_IS_HOST_MODULE)) +else full_java_libs := $(call java-lib-files,$(LOCAL_JAVA_LIBRARIES),$(LOCAL_IS_HOST_MODULE)) full_java_lib_deps := $(call java-lib-deps,$(LOCAL_JAVA_LIBRARIES),$(LOCAL_IS_HOST_MODULE)) -endif +endif # !current +else +full_java_libs := $(call java-lib-files,$(LOCAL_JAVA_LIBRARIES),$(LOCAL_IS_HOST_MODULE)) +full_java_lib_deps := $(call java-lib-deps,$(LOCAL_JAVA_LIBRARIES),$(LOCAL_IS_HOST_MODULE)) +endif # LOCAL_SDK_VERSION +endif # !LOCAL_IS_HOST_MODULE full_java_libs += $(full_static_java_libs) $(LOCAL_CLASSPATH) full_java_lib_deps += $(full_static_java_libs) $(LOCAL_CLASSPATH) diff --git a/core/java.mk b/core/java.mk index d57ffca..fc28abf 100644 --- a/core/java.mk +++ b/core/java.mk @@ -20,7 +20,11 @@ ifneq ($(LOCAL_SDK_VERSION),) $(error $(LOCAL_PATH): Invalid LOCAL_SDK_VERSION '$(LOCAL_SDK_VERSION)' \ Choices are: $(TARGET_AVAILABLE_SDK_VERSIONS)) else - LOCAL_JAVA_LIBRARIES := android_stubs_$(LOCAL_SDK_VERSION) $(LOCAL_JAVA_LIBRARIES) + ifeq ($(LOCAL_SDK_VERSION),current) + LOCAL_JAVA_LIBRARIES := android_stubs_$(LOCAL_SDK_VERSION) $(LOCAL_JAVA_LIBRARIES) + else + LOCAL_JAVA_LIBRARIES := sdk_v$(LOCAL_SDK_VERSION) $(LOCAL_JAVA_LIBRARIES) + endif endif endif else |