diff --git a/Changes.md b/Changes.md index 6b3095cfc..2cea33412 100644 --- a/Changes.md +++ b/Changes.md @@ -194,11 +194,9 @@ you're not trying to actively debug the kernel. ## `export` and `unexport` deprecation {#export_keyword} -The `export` and `unexport` keywords have been deprecated, and will throw -warnings or errors depending on where they are used. +The `export` and `unexport` keywords are obsolete, and will throw errors when +used. -Early in the make system, during product configuration and BoardConfig.mk -reading: these will throw a warnings, and will be an error in the future. Device specific configuration should not be able to affect common core build steps -- we're looking at triggering build steps to be invalidated if the set of environment variables they can access changes. If device specific @@ -206,10 +204,9 @@ configuration is allowed to change those, switching devices with the same output directory could become significantly more expensive than it already can be. -Later, during Android.mk files, and later tasks: these will throw errors, since -it is increasingly likely that they are being used incorrectly, attempting to -change the environment for a single build step, and instead setting it for -hundreds of thousands. +If used during Android.mk files, and later tasks, it is increasingly likely +that they are being used incorrectly. Attempting to change the environment for +a single build step, and instead setting it for hundreds of thousands. It is not recommended to just move the environment variable setting outside of the build (in vendorsetup.sh, or some other configuration script or wrapper). diff --git a/Deprecation.md b/Deprecation.md index 0d925cbc5..131ec0d11 100644 --- a/Deprecation.md +++ b/Deprecation.md @@ -14,16 +14,16 @@ have any problems converting, please contact us via: | Module type | State | | -------------------------------- | --------- | -| `BUILD_AUX_EXECUTABLE` | Warning | -| `BUILD_AUX_STATIC_LIBRARY` | Warning | -| `BUILD_HOST_FUZZ_TEST` | Warning | -| `BUILD_HOST_NATIVE_TEST` | Warning | +| `BUILD_AUX_EXECUTABLE` | Error | +| `BUILD_AUX_STATIC_LIBRARY` | Error | +| `BUILD_HOST_FUZZ_TEST` | Error | +| `BUILD_HOST_NATIVE_TEST` | Error | | `BUILD_HOST_SHARED_TEST_LIBRARY` | Error | -| `BUILD_HOST_STATIC_TEST_LIBRARY` | Warning | +| `BUILD_HOST_STATIC_TEST_LIBRARY` | Error | | `BUILD_HOST_TEST_CONFIG` | Error | -| `BUILD_NATIVE_BENCHMARK` | Warning | +| `BUILD_NATIVE_BENCHMARK` | Error | | `BUILD_SHARED_TEST_LIBRARY` | Error | -| `BUILD_STATIC_TEST_LIBRARY` | Warning | +| `BUILD_STATIC_TEST_LIBRARY` | Error | | `BUILD_TARGET_TEST_CONFIG` | Error | | `BUILD_*` | Available | diff --git a/core/board_config.mk b/core/board_config.mk index 851bf8a16..9c9e8b18c 100644 --- a/core/board_config.mk +++ b/core/board_config.mk @@ -85,7 +85,6 @@ _dynamic_partitions_var_list += \ _board_strip_readonly_list += $(_dynamic_partitions_var_list) _build_broken_var_list := \ - BUILD_BROKEN_ANDROIDMK_EXPORTS \ BUILD_BROKEN_DUP_RULES \ BUILD_BROKEN_USES_NETWORK \ @@ -229,10 +228,6 @@ TARGET_CPU_ABI_LIST := $(subst $(space),$(comma),$(strip $(TARGET_CPU_ABI_LIST)) TARGET_CPU_ABI_LIST_32_BIT := $(subst $(space),$(comma),$(strip $(TARGET_CPU_ABI_LIST_32_BIT))) TARGET_CPU_ABI_LIST_64_BIT := $(subst $(space),$(comma),$(strip $(TARGET_CPU_ABI_LIST_64_BIT))) -ifneq ($(BUILD_BROKEN_ANDROIDMK_EXPORTS),true) -$(KATI_obsolete_export It is a global setting. See $(CHANGES_URL)#export_keyword) -endif - ########################################### # Now we can substitute with the real value of TARGET_COPY_OUT_RAMDISK ifeq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE),true) diff --git a/core/config.mk b/core/config.mk index 3b2286631..1efbca050 100644 --- a/core/config.mk +++ b/core/config.mk @@ -98,9 +98,8 @@ $(KATI_obsolete_var TARGET_ROOT_OUT_SBIN_UNSTRIPPED,/sbin has been removed, use $(KATI_obsolete_var BUILD_BROKEN_PHONY_TARGETS) $(KATI_obsolete_var BUILD_BROKEN_DUP_COPY_HEADERS) $(KATI_obsolete_var BUILD_BROKEN_ENG_DEBUG_TAGS) - -# This is marked as obsolete in envsetup.mk after reading the BoardConfig.mk -$(KATI_deprecate_export It is a global setting. See $(CHANGES_URL)#export_keyword) +$(KATI_obsolete_export It is a global setting. See $(CHANGES_URL)#export_keyword) +$(KATI_obsolete_var BUILD_BROKEN_ANDROIDMK_EXPORTS) # Used to force goals to build. Only use for conditionally defined goals. .PHONY: FORCE diff --git a/core/deprecation.mk b/core/deprecation.mk index 11fe290bd..f1e198d51 100644 --- a/core/deprecation.mk +++ b/core/deprecation.mk @@ -28,19 +28,19 @@ AVAILABLE_BUILD_MODULE_TYPES :=$= \ # relevant BUILD_BROKEN_USES_BUILD_* variables, then these would move to # DEFAULT_ERROR_BUILD_MODULE_TYPES. DEFAULT_WARNING_BUILD_MODULE_TYPES :=$= \ - BUILD_AUX_EXECUTABLE \ - BUILD_AUX_STATIC_LIBRARY \ - BUILD_HOST_FUZZ_TEST \ - BUILD_HOST_NATIVE_TEST \ - BUILD_HOST_STATIC_TEST_LIBRARY \ - BUILD_NATIVE_BENCHMARK \ - BUILD_STATIC_TEST_LIBRARY \ # These are BUILD_* variables that are errors to reference, but you can set # BUILD_BROKEN_USES_BUILD_* in your BoardConfig.mk in order to turn them back # to warnings. DEFAULT_ERROR_BUILD_MODULE_TYPES :=$= \ + BUILD_AUX_EXECUTABLE \ + BUILD_AUX_STATIC_LIBRARY \ + BUILD_HOST_FUZZ_TEST \ + BUILD_HOST_NATIVE_TEST \ + BUILD_HOST_STATIC_TEST_LIBRARY \ BUILD_HOST_TEST_CONFIG \ + BUILD_NATIVE_BENCHMARK \ + BUILD_STATIC_TEST_LIBRARY \ BUILD_TARGET_TEST_CONFIG \ # These are BUILD_* variables that are always errors to reference.