From a3afbb9562ae63ef43e28f130687226916076e1f Mon Sep 17 00:00:00 2001 From: Dan Albert Date: Wed, 29 Mar 2017 13:58:13 -0700 Subject: [PATCH] Expose PLATFORM_VERSION_ALL_CODENAMES to soong. Test: make checkbuild Bug: None Change-Id: I9c8d8ff38b617ac352b951214d428f9c9af0f79d --- core/soong_config.mk | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/core/soong_config.mk b/core/soong_config.mk index 576c8abe0..6416dc6cb 100644 --- a/core/soong_config.mk +++ b/core/soong_config.mk @@ -13,6 +13,17 @@ BINDER32BIT := true endif endif +# Converts a list to a JSON list. +# $1: List separator. +# $2: List. +_json_list = [$(if $(2),"$(subst $(1),"$(comma)",$(2))")] + +# Converts a space-separated list to a JSON list. +json_list = $(call _json_list,$(space),$(1)) + +# Converts a comma-separated list to a JSON list. +csv_to_json_list = $(call _json_list,$(comma),$(1)) + # Create soong.variables with copies of makefile settings. Runs every build, # but only updates soong.variables if it changes SOONG_VARIABLES_TMP := $(SOONG_VARIABLES).$$$$ @@ -23,13 +34,14 @@ $(SOONG_VARIABLES): FORCE echo ' "Make_suffix": "-$(TARGET_PRODUCT)",'; \ echo ''; \ echo ' "Platform_sdk_version": $(PLATFORM_SDK_VERSION),'; \ + echo ' "Platform_version_all_codenames": $(call csv_to_json_list,$(PLATFORM_VERSION_ALL_CODENAMES)),'; \ echo ' "Unbundled_build": $(if $(TARGET_BUILD_APPS),true,false),'; \ echo ' "Brillo": $(if $(BRILLO),true,false),'; \ echo ' "Malloc_not_svelte": $(if $(filter true,$(MALLOC_SVELTE)),false,true),'; \ echo ' "Allow_missing_dependencies": $(if $(TARGET_BUILD_APPS)$(filter true,$(SOONG_ALLOW_MISSING_DEPENDENCIES)),true,false),'; \ - echo ' "SanitizeHost": [$(if $(SANITIZE_HOST),"$(subst $(space),"$(comma)",$(SANITIZE_HOST))")],'; \ - echo ' "SanitizeDevice": [$(if $(SANITIZE_TARGET),"$(subst $(space),"$(comma)",$(SANITIZE_TARGET))")],'; \ - echo ' "SanitizeDeviceArch": [$(if $(SANITIZE_TARGET_ARCH),"$(subst $(space),"$(comma)",$(SANITIZE_TARGET_ARCH))")],'; \ + echo ' "SanitizeHost": $(call json_list,$(SANITIZE_HOST)),'; \ + echo ' "SanitizeDevice": $(call json_list,$(SANITIZE_TARGET)),'; \ + echo ' "SanitizeDeviceArch": $(call json_list,$(SANITIZE_TARGET_ARCH)),'; \ echo ' "HostStaticBinaries": $(if $(strip $(BUILD_HOST_static)),true,false),'; \ echo ' "Binder32bit": $(if $(BINDER32BIT),true,false),'; \ echo ' "DevicePrefer32BitExecutables": $(if $(filter true,$(TARGET_PREFER_32_BIT_EXECUTABLES)),true,false),'; \ @@ -42,8 +54,8 @@ $(SOONG_VARIABLES): FORCE echo ' "TidyChecks": "$(WITH_TIDY_CHECKS)",'; \ echo ''; \ echo ' "NativeCoverage": $(if $(filter true,$(NATIVE_COVERAGE)),true,false),'; \ - echo ' "CoveragePaths": [$(if $(COVERAGE_PATHS),"$(subst $(space),"$(comma)",$(subst $(comma),$(space),$(COVERAGE_PATHS)))")],'; \ - echo ' "CoverageExcludePaths": [$(if $(COVERAGE_EXCLUDE_PATHS),"$(subst $(space),"$(comma)",$(subst $(comma),$(space),$(COVERAGE_EXCLUDE_PATHS)))")],'; \ + echo ' "CoveragePaths": $(call csv_to_json_list,$(COVERAGE_PATHS)),'; \ + echo ' "CoverageExcludePaths": $(call csv_to_json_list,$(COVERAGE_EXCLUDE_PATHS)),'; \ echo ''; \ echo ' "DeviceName": "$(TARGET_DEVICE)",'; \ echo ' "DeviceArch": "$(TARGET_ARCH)",'; \