Rename is_unbundled_app_build and UNBUNDLED_APP_BUILD to TARGET_BUILD_APPS.
Change-Id: I79e6f60e009dad3a48709962347441e4ca0c337a
diff --git a/core/envsetup.mk b/core/envsetup.mk
index f8a2027..86aa2f3 100644
--- a/core/envsetup.mk
+++ b/core/envsetup.mk
@@ -342,6 +342,7 @@
$(info TARGET_BUILD_VARIANT=$(TARGET_BUILD_VARIANT))
$(info TARGET_SIMULATOR=$(TARGET_SIMULATOR))
$(info TARGET_BUILD_TYPE=$(TARGET_BUILD_TYPE))
+$(info TARGET_BUILD_APPS=$(TARGET_BUILD_APPS))
$(info TARGET_ARCH=$(TARGET_ARCH))
$(info HOST_ARCH=$(HOST_ARCH))
$(info HOST_OS=$(HOST_OS))
diff --git a/core/main.mk b/core/main.mk
index 9485a02..8cf21bc 100644
--- a/core/main.mk
+++ b/core/main.mk
@@ -688,54 +688,55 @@
# The actual files built by the droidcore target changes depending
# on the build variant.
+ifneq ($(TARGET_BUILD_APPS),)
+ unbundled_build_modules :=
+ ifneq ($(filter all,$(TARGET_BUILD_APPS)),)
+ # If they used the magic goal "all" then build everything
+ unbundled_build_modules := $(sort $(call get-tagged-modules,$(ALL_MODULE_TAGS)))
+ else
+ unbundled_build_modules := $(TARGET_BUILD_APPS)
+ endif
+ default_goal_deps := $(unbundled_build_modules)
+else # TARGET_BUILD_APPS
+ default_goal_deps := droidcore
+endif # TARGET_BUILD_APPS
+
.PHONY: droid tests
-ifeq ($(strip $(is_unbundled_app_build)),true)
-unbundled_build_modules :=
-ifdef UNBUNDLED_APPS
-unbundled_build_modules := $(UNBUNDLED_APPS)
-else # UNBUNDLED_APPS
-# Otherwise we build all modules in the source tree.
-unbundled_build_modules := $(sort $(call get-tagged-modules,$(ALL_MODULE_TAGS)))
-endif # UNBUNDLED_APPS
-droid: $(unbundled_build_modules)
-else # is_unbundled_app_build
-droid: droidcore
-endif # is_unbundled_app_build
+droid: $(default_goal_deps)
tests: droidcore
-ifneq ($(strip $(is_unbundled_app_build)),true)
-$(call dist-for-goals, droid, \
- $(INTERNAL_UPDATE_PACKAGE_TARGET) \
- $(INTERNAL_OTA_PACKAGE_TARGET) \
- $(SYMBOLS_ZIP) \
- $(APPS_ZIP) \
- $(INTERNAL_EMULATOR_PACKAGE_TARGET) \
- $(PACKAGE_STATS_FILE) \
- $(INSTALLED_FILES_FILE) \
- $(INSTALLED_BUILD_PROP_TARGET) \
- $(BUILT_TARGET_FILES_PACKAGE) \
- $(INSTALLED_ANDROID_INFO_TXT_TARGET) \
- )
-
-# Tests are installed in userdata.img. If we're building the tests
-# variant, copy it for "make tests dist". Also copy a zip of the
-# contents of userdata.img, so that people can easily extract a
-# single .apk.
-ifeq ($(TARGET_BUILD_VARIANT),tests)
-$(call dist-for-goals, droid, \
- $(INSTALLED_USERDATAIMAGE_TARGET) \
- $(BUILT_TESTS_ZIP_PACKAGE) \
- )
-endif
-
-else # is_unbundled_app_build
-# dist the unbundled app.
-ifdef UNBUNDLED_APPS
+ifneq ($(TARGET_BUILD_APPS),)
+ # dist the unbundled app.
$(call dist-for-goals,droid, \
- $(foreach m,$(UNBUNDLED_APPS),$(ALL_MODULES.$(m).INSTALLED)) \
+ $(foreach m,$(unbundled_build_modules),$(ALL_MODULES.$(m).INSTALLED)) \
)
-endif # UNBUNDLED_APPS
-endif # is_unbundled_app_build
+
+else # TARGET_BUILD_APPS
+
+ $(call dist-for-goals, droid, \
+ $(INTERNAL_UPDATE_PACKAGE_TARGET) \
+ $(INTERNAL_OTA_PACKAGE_TARGET) \
+ $(SYMBOLS_ZIP) \
+ $(APPS_ZIP) \
+ $(INTERNAL_EMULATOR_PACKAGE_TARGET) \
+ $(PACKAGE_STATS_FILE) \
+ $(INSTALLED_FILES_FILE) \
+ $(INSTALLED_BUILD_PROP_TARGET) \
+ $(BUILT_TARGET_FILES_PACKAGE) \
+ $(INSTALLED_ANDROID_INFO_TXT_TARGET) \
+ )
+
+ # Tests are installed in userdata.img. If we're building the tests
+ # variant, copy it for "make tests dist". Also copy a zip of the
+ # contents of userdata.img, so that people can easily extract a
+ # single .apk.
+ ifeq ($(TARGET_BUILD_VARIANT),tests)
+ $(call dist-for-goals, droid, \
+ $(INSTALLED_USERDATAIMAGE_TARGET) \
+ $(BUILT_TESTS_ZIP_PACKAGE) \
+ )
+ endif
+endif # TARGET_BUILD_APPS
.PHONY: docs
docs: $(ALL_DOCS)
diff --git a/core/package.mk b/core/package.mk
index e7be05f..cdeefb4 100644
--- a/core/package.mk
+++ b/core/package.mk
@@ -311,7 +311,7 @@
# Define the rule to build the actual package.
$(LOCAL_BUILT_MODULE): $(AAPT) | $(ZIPALIGN)
$(LOCAL_BUILT_MODULE): PRIVATE_JNI_SHARED_LIBRARIES := $(jni_shared_libraries)
-ifeq ($(strip $(is_unbundled_app_build)),true)
+ifneq ($(TARGET_BUILD_APPS),)
# Include all resources for unbundled apps.
$(LOCAL_BUILT_MODULE): PRODUCT_AAPT_CONFIG :=
endif
diff --git a/core/product_config.mk b/core/product_config.mk
index e86b040..04f6ce1 100644
--- a/core/product_config.mk
+++ b/core/product_config.mk
@@ -157,13 +157,12 @@
ifneq ($(words $(unbundled_goals)),1)
$(error Only one APP-* goal may be specified; saw "$(unbundled_goals)"))
endif
- UNBUNDLED_APPS := $(strip $(subst -, ,$(patsubst APP-%,%,$(unbundled_goals))))
+ TARGET_BUILD_APPS := $(strip $(subst -, ,$(patsubst APP-%,%,$(unbundled_goals))))
ifneq ($(filter $(DEFAULT_GOAL),$(MAKECMDGOALS)),)
MAKECMDGOALS := $(patsubst $(unbundled_goals),,$(MAKECMDGOALS))
else
MAKECMDGOALS := $(patsubst $(unbundled_goals),$(DEFAULT_GOAL),$(MAKECMDGOALS))
endif
- is_unbundled_app_build := true
.PHONY: $(unbundled_goals)
$(unbundled_goals): $(MAKECMDGOALS)
@@ -178,7 +177,7 @@
include $(BUILD_SYSTEM)/product.mk
include $(BUILD_SYSTEM)/device.mk
-ifeq ($(strip $(is_unbundled_app_build)),true)
+ifneq ($(strip $(TARGET_BUILD_APPS)),)
# An unbundled app build needs only the core product makefiles.
$(call import-products,$(call get-product-makefiles,\
$(SRC_TARGET_DIR)/product/AndroidProducts.mk))
@@ -189,7 +188,7 @@
#TODO: when we start allowing direct pointers to product files,
# guarantee that they're in this list.
$(call import-products, $(get-all-product-makefiles))
-endif # is_unbundled_app_build
+endif # TARGET_BUILD_APPS
$(check-all-products)
#$(dump-products)
#$(error done)
diff --git a/target/product/AndroidProducts.mk b/target/product/AndroidProducts.mk
index 798c35c..3581da3 100644
--- a/target/product/AndroidProducts.mk
+++ b/target/product/AndroidProducts.mk
@@ -25,8 +25,8 @@
# it includes.
#
-ifeq ($(strip $(is_unbundled_app_build)),true)
# An unbundled app build needs only generic.mk.
+ifneq ($(TARGET_BUILD_APPS),)
PRODUCT_MAKEFILES := \
$(LOCAL_DIR)/core.mk \
$(LOCAL_DIR)/generic.mk
diff --git a/tools/Android.mk b/tools/Android.mk
index aea2785..fa9d0b7 100644
--- a/tools/Android.mk
+++ b/tools/Android.mk
@@ -16,7 +16,8 @@
LOCAL_PATH := $(my-dir)
-ifeq ($(strip $(is_unbundled_app_build)),true)
+# If we're building only unbundled apps, this is the only tool we need.
+ifneq ($(TARGET_BUILD_APPS),)
include $(LOCAL_PATH)/signapk/Android.mk
else
include $(call first-makefiles-under,$(LOCAL_PATH))