soong: rework soong_config for Pie
Change-Id: I3c5001f02975e5487ba66a02217f1d24d2021272
Signed-off-by: Jackeagle <jackeagle102@gmail.com>
diff --git a/build/soong/soong_config.mk b/build/soong/soong_config.mk
index d4c1236..596399d 100644
--- a/build/soong/soong_config.mk
+++ b/build/soong/soong_config.mk
@@ -1,28 +1,16 @@
-bliss_soong:
- $(hide) mkdir -p $(dir $@)
- $(hide) (\
- echo '{'; \
- echo '"bliss": {'; \
- echo ' "Has_legacy_camera_hal1": $(if $(filter true,$(TARGET_HAS_LEGACY_CAMERA_HAL1)),true,false),'; \
- echo ' "Uses_media_extensions": $(if $(filter true,$(TARGET_USES_MEDIA_EXTENSIONS)),true,false),'; \
- echo ' "Uses_generic_camera_parameter_library": $(if $(TARGET_SPECIFIC_CAMERA_PARAMETER_LIBRARY),false,true),'; \
- echo ' "Specific_camera_parameter_library": "$(TARGET_SPECIFIC_CAMERA_PARAMETER_LIBRARY)",'; \
- echo ' "Needs_text_relocations": $(if $(filter true,$(TARGET_NEEDS_PLATFORM_TEXT_RELOCATIONS)),true,false),'; \
- echo ' "Mtk_hardware": $(if $(filter true,$(BOARD_USES_MTK_HARDWARE)),true,false),'; \
- echo ' "BoardUsesQTIHardware": $(if $(BOARD_USES_QTI_HARDWARE),true,false),'; \
- echo ' "Libart_img_base": "$(LIBART_IMG_BASE)",'; \
- echo ' "QTIAudioPath": "$(call project-path-for,qcom-audio)",'; \
- echo ' "QTIDisplayPath": "$(call project-path-for,qcom-display)",'; \
- echo ' "QTIMediaPath": "$(call project-path-for,qcom-media)",'; \
- echo ' "Cant_reallocate_omx_buffers": $(if $(filter omap4,$(TARGET_BOARD_PLATFORM)),true,false),'; \
- echo ' "Qcom_bsp_legacy": $(if $(filter msm7x27a msm7x30 msm8660 msm8960,$(TARGET_BOARD_PLATFORM)),true,false),'; \
- echo ' "Qti_flac_decoder": $(if $(strip $(AUDIO_FEATURE_ENABLED_EXTN_FLAC_DECODER)),true,false),'; \
- echo ' "Use_legacy_rescaling": $(if $(strip $(TARGET_OMX_LEGACY_RESCALING)),true,false),'; \
- echo ' "TargetUsesProprietaryLibs": $(if $(strip $(TARGET_USES_PROPRIETARY_LIBS)),true,false),'; \
- echo ' "Target_uses_qsml": $(if $(strip $(TARGET_USES_QSML)),true,false),'; \
- echo ' "Target_uses_eigen": $(if $(strip $(TARGET_USES_QSML)),false,true),'; \
- echo ' "Uses_qti_camera_device": $(if $(filter true,$(TARGET_USES_QTI_CAMERA_DEVICE)),true,false),'; \
- echo ' "Uses_nvidia_enhancements": $(if $(filter TRUE,$(NV_ANDROID_FRAMEWORK_ENHANCEMENTS)),true,false),'; \
- echo ' "Target_shim_libs": "$(subst $(space),:,$(TARGET_LD_SHIM_LIBS))"'; \
- echo '},'; \
- echo '') > $(SOONG_VARIABLES_TMP)
+_contents := $(_contents) "Bliss":{$(newline)
+
+# See build/core/soong_config.mk for the add_json_* functions you can use here.
+$(call add_json_bool, Has_legacy_camera_hal1, $(filter true,$(TARGET_HAS_LEGACY_CAMERA_HAL1)))
+$(call add_json_bool, Needs_text_relocations, $(filter true,$(TARGET_NEEDS_PLATFORM_TEXT_RELOCATIONS)))
+$(call add_json_str, Specific_camera_parameter_library, $(TARGET_SPECIFIC_CAMERA_PARAMETER_LIBRARY))
+$(call add_json_str, Target_shim_libs, $(TARGET_LD_SHIM_LIBS))
+$(call add_json_bool, Uses_generic_camera_parameter_library, $(if $(TARGET_SPECIFIC_CAMERA_PARAMETER_LIBRARY),false,true))
+$(call add_json_bool, Uses_nvidia_enhancements, $(filter TRUE,$(NV_ANDROID_FRAMEWORK_ENHANCEMENTS)))
+$(call add_json_bool, Uses_qcom_bsp_legacy, $(filter true,$(TARGET_USES_QCOM_BSP_LEGACY)))
+$(call add_json_bool, Uses_qti_camera_device, $(filter true,$(TARGET_USES_QTI_CAMERA_DEVICE)))
+
+# This causes the build system to strip out the last comma in our nested struct, to keep the JSON valid.
+_contents := $(_contents)__SV_END
+
+_contents := $(_contents) },$(newline)