blob: ca4f6c283f9819fa75419b1c71e5ddb4fb67719b [file] [log] [blame]
dianlujitaob492f3f2020-09-11 13:23:18 +08001PATH_OVERRIDE_SOONG := $(shell echo $(TOOLS_PATH_OVERRIDE))
Rashed Abdel-Tawabdfc3d182019-09-06 10:44:50 -07002
Rashed Abdel-Tawab9fa7e802018-09-18 21:53:24 -07003# Add variables that we wish to make available to soong here.
4EXPORT_TO_SOONG := \
5 KERNEL_ARCH \
Rashed Abdel-Tawabba5ea352019-09-07 17:01:13 -07006 KERNEL_BUILD_OUT_PREFIX \
Rashed Abdel-Tawab9fa7e802018-09-18 21:53:24 -07007 KERNEL_CROSS_COMPILE \
Rashed Abdel-Tawabfb35b9d2019-09-05 21:21:13 -07008 KERNEL_MAKE_CMD \
Rashed Abdel-Tawab9fa7e802018-09-18 21:53:24 -07009 KERNEL_MAKE_FLAGS \
Rashed Abdel-Tawabdfc3d182019-09-06 10:44:50 -070010 PATH_OVERRIDE_SOONG \
Rashed Abdel-Tawab9fa7e802018-09-18 21:53:24 -070011 TARGET_KERNEL_CONFIG \
12 TARGET_KERNEL_SOURCE
13
14# Setup SOONG_CONFIG_* vars to export the vars listed above.
15# Documentation here:
16# https://github.com/LineageOS/android_build_soong/commit/8328367c44085b948c003116c0ed74a047237a69
17
Jackeagled6811aa2019-09-24 08:26:40 +020018SOONG_CONFIG_NAMESPACES += blissVarsPlugin
Rashed Abdel-Tawab9fa7e802018-09-18 21:53:24 -070019
Jackeagled6811aa2019-09-24 08:26:40 +020020SOONG_CONFIG_blissVarsPlugin :=
Rashed Abdel-Tawab9fa7e802018-09-18 21:53:24 -070021
22define addVar
Jackeagled6811aa2019-09-24 08:26:40 +020023 SOONG_CONFIG_blissVarsPlugin += $(1)
maxwen0aefc612023-10-07 18:51:12 +020024 SOONG_CONFIG_blissVarsPlugin_$(1) := $($1)
Rashed Abdel-Tawab9fa7e802018-09-18 21:53:24 -070025endef
26
27$(foreach v,$(EXPORT_TO_SOONG),$(eval $(call addVar,$(v))))
Pig02f678a2020-10-15 02:58:37 +080028
29SOONG_CONFIG_NAMESPACES += blissGlobalVars
30SOONG_CONFIG_blissGlobalVars += \
LuK1337eb28eac2023-06-24 21:03:23 -050031 aapt_version_code \
Pig02f678a2020-10-15 02:58:37 +080032 additional_gralloc_10_usage_bits \
Nolen Johnsonfc326dd2023-03-18 00:31:32 -040033 bootloader_message_offset \
Lup Gabriel09fc6852021-06-06 18:24:41 +090034 camera_needs_client_info \
Pig02f678a2020-10-15 02:58:37 +080035 target_init_vendor_lib \
daniml325cc5272021-01-21 16:56:41 +010036 target_inputdispatcher_skip_event_key \
Pig02f678a2020-10-15 02:58:37 +080037 target_ld_shim_libs \
TheScarastic8541a942021-10-19 08:07:54 +000038 target_surfaceflinger_udfps_lib \
LuK1337bc866dd2022-03-23 20:39:30 +010039 target_trust_usb_control_path \
40 target_trust_usb_control_enable \
41 target_trust_usb_control_disable \
Chirayu Desai981d2102022-09-17 04:47:54 +053042 uses_egl_display_array \
Rohit Sekharaf632112023-09-19 15:48:20 +053043 camera_override_format_from_reserved \
Bruno Martins21d15722023-05-16 21:40:28 +010044 gralloc_handle_has_custom_content_md_reserved_size \
Chirayu Desai981d2102022-09-17 04:47:54 +053045 gralloc_handle_has_reserved_size \
Luofan Chen506d14a2023-11-27 22:30:51 +080046 sdmcore_has_is_display_hw_available_func \
Jake Weinstein48d18812024-04-27 14:39:45 -050047 target_camera_package_name \
AdarshGrewal7546df22024-06-19 15:46:50 +053048 gralloc_handle_has_ubwcp_format \
Luofan Chenac764a42023-05-05 10:54:14 +080049 target_health_charging_control_charging_path \
50 target_health_charging_control_charging_enabled \
51 target_health_charging_control_charging_disabled \
52 target_health_charging_control_deadline_path \
53 target_health_charging_control_supports_bypass \
54 target_health_charging_control_supports_deadline \
55 target_health_charging_control_supports_toggle \
Hikari-no-Tenshi1de1c912023-06-25 17:10:37 -050056 camera_needs_client_info_lib \
ShevT8ad27442023-06-25 17:17:24 -050057 camera_needs_client_info_lib_oplus \
cjh124913135624f3be32024-03-10 22:18:41 -050058 needs_camera_boottime \
johnmart193f6eb3a2024-04-27 14:57:16 -050059 include_miui_camera \
Adithya Rc0a47a62024-03-10 22:24:45 -050060 uses_miui_camera \
cjh124913135624f3be32024-03-10 22:18:41 -050061 uses_nothing_camera \
62 uses_oplus_camera \
Arian1446a6e2024-05-18 15:40:29 +020063 uses_oppo_camera \
AnierinB03eb6962024-07-19 18:09:00 +000064 target_power_libperfmgr_mode_extension_lib \
65 spoof_first_api_level_32 \
Cosmin Tanislavb6087242024-08-22 13:25:31 +030066 target_powershare_path \
67 target_powershare_enabled \
Michael Bestas3e5a9392024-10-18 19:57:45 +030068 target_powershare_disabled
Pig02f678a2020-10-15 02:58:37 +080069
70SOONG_CONFIG_NAMESPACES += blissNvidiaVars
71SOONG_CONFIG_blissNvidiaVars += \
Aaron Kling4e3ee912022-03-24 22:55:35 -050072 uses_nvidia_enhancements
Pig02f678a2020-10-15 02:58:37 +080073
74SOONG_CONFIG_NAMESPACES += blissQcomVars
75SOONG_CONFIG_blissQcomVars += \
Michael Bestas3e5a9392024-10-18 19:57:45 +030076 no_fm_firmware \
Arian770e37e2023-11-04 10:49:49 +010077 qti_vibrator_effect_lib \
78 qti_vibrator_use_effect_stream \
LuK1337e7aff482021-04-10 10:56:15 +020079 supports_audio_accessory \
80 supports_debug_accessory \
Pig02f678a2020-10-15 02:58:37 +080081 supports_extended_compress_format \
Pig02f678a2020-10-15 02:58:37 +080082 uses_pre_uplink_features_netmgrd \
srgrussoe7185de2023-06-25 16:55:25 -050083 uses_qti_camera_device
Pig02f678a2020-10-15 02:58:37 +080084
Alessandro Astone3fc779e2021-01-05 18:04:14 +010085# Only create display_headers_namespace var if dealing with UM platforms to avoid breaking build for all other platforms
Pig02f678a2020-10-15 02:58:37 +080086ifneq ($(filter $(UM_PLATFORMS),$(TARGET_BOARD_PLATFORM)),)
87SOONG_CONFIG_blissQcomVars += \
Alessandro Astone3fc779e2021-01-05 18:04:14 +010088 qcom_display_headers_namespace
Pig02f678a2020-10-15 02:58:37 +080089endif
90
91# Soong bool variables
Michael Bestasd65cc352023-10-20 01:47:13 +030092SOONG_CONFIG_blissGlobalVars_gralloc_handle_has_ubwcp_format := $(TARGET_GRALLOC_HANDLE_HAS_UBWCP_FORMAT)
Danny Trunkbcd72202022-03-23 22:28:02 +010093SOONG_CONFIG_blissGlobalVars_uses_egl_display_array := $(TARGET_USES_EGL_DISPLAY_ARRAY)
Lup Gabriel09fc6852021-06-06 18:24:41 +090094SOONG_CONFIG_blissGlobalVars_camera_needs_client_info := $(TARGET_CAMERA_NEEDS_CLIENT_INFO)
Michael Bestas3e5a9392024-10-18 19:57:45 +030095SOONG_CONFIG_blissQcomVars_no_fm_firmware := $(TARGET_QCOM_NO_FM_FIRMWARE)
Arian770e37e2023-11-04 10:49:49 +010096SOONG_CONFIG_blissQcomVars_qti_vibrator_use_effect_stream := $(TARGET_QTI_VIBRATOR_USE_EFFECT_STREAM)
Aaron Kling4e3ee912022-03-24 22:55:35 -050097SOONG_CONFIG_blissNvidiaVars_uses_nvidia_enhancements := $(NV_ANDROID_FRAMEWORK_ENHANCEMENTS)
LuK1337e7aff482021-04-10 10:56:15 +020098SOONG_CONFIG_blissQcomVars_supports_audio_accessory := $(TARGET_QTI_USB_SUPPORTS_AUDIO_ACCESSORY)
99SOONG_CONFIG_blissQcomVars_supports_debug_accessory := $(TARGET_QTI_USB_SUPPORTS_DEBUG_ACCESSORY)
Pig02f678a2020-10-15 02:58:37 +0800100SOONG_CONFIG_blissQcomVars_supports_extended_compress_format := $(AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT)
Pig02f678a2020-10-15 02:58:37 +0800101SOONG_CONFIG_blissQcomVars_uses_pre_uplink_features_netmgrd := $(TARGET_USES_PRE_UPLINK_FEATURES_NETMGRD)
Pig02f678a2020-10-15 02:58:37 +0800102SOONG_CONFIG_blissQcomVars_uses_qti_camera_device := $(TARGET_USES_QTI_CAMERA_DEVICE)
Rohit Sekharaf632112023-09-19 15:48:20 +0530103SOONG_CONFIG_blissGlobalVars_camera_override_format_from_reserved := $(TARGET_CAMERA_OVERRIDE_FORMAT_FROM_RESERVED)
Bruno Martins21d15722023-05-16 21:40:28 +0100104SOONG_CONFIG_blissGlobalVars_gralloc_handle_has_custom_content_md_reserved_size := $(TARGET_GRALLOC_HANDLE_HAS_CUSTOM_CONTENT_MD_RESERVED_SIZE)
Chirayu Desai981d2102022-09-17 04:47:54 +0530105SOONG_CONFIG_blissGlobalVars_gralloc_handle_has_reserved_size := $(TARGET_GRALLOC_HANDLE_HAS_RESERVED_SIZE)
Luofan Chen506d14a2023-11-27 22:30:51 +0800106SOONG_CONFIG_blissGlobalVars_sdmcore_has_is_display_hw_available_func := $(TARGET_SDMCORE_HAS_IS_DISPLAY_HW_AVAILABLE_FUNC)
Hikari-no-Tenshi1de1c912023-06-25 17:10:37 -0500107SOONG_CONFIG_blissGlobalVars_camera_needs_client_info_lib := $(TARGET_CAMERA_NEEDS_CLIENT_INFO_LIB)
ShevT8ad27442023-06-25 17:17:24 -0500108SOONG_CONFIG_blissGlobalVars_camera_needs_client_info_lib_oplus := $(TARGET_CAMERA_NEEDS_CLIENT_INFO_LIB_OPLUS)
Sebastiano Barezzid881fbd2023-06-25 17:05:50 -0500109SOONG_CONFIG_blissGlobalVars_needs_camera_boottime := $(TARGET_CAMERA_BOOTTIME_TIMESTAMP)
johnmart193f6eb3a2024-04-27 14:57:16 -0500110SOONG_CONFIG_blissGlobalVars_include_miui_camera := $(TARGET_INCLUDES_MIUI_CAMERA)
Adithya Rc0a47a62024-03-10 22:24:45 -0500111SOONG_CONFIG_blissGlobalVars_uses_miui_camera := $(TARGET_USES_MIUI_CAMERA)
cjh124913135624f3be32024-03-10 22:18:41 -0500112SOONG_CONFIG_blissGlobalVars_uses_nothing_camera := $(TARGET_USES_NOTHING_CAMERA)
113SOONG_CONFIG_blissGlobalVars_uses_oplus_camera := $(TARGET_USES_OPLUS_CAMERA)
114SOONG_CONFIG_blissGlobalVars_uses_oppo_camera := $(TARGET_USES_OPPO_CAMERA)
Pig02f678a2020-10-15 02:58:37 +0800115
116# Set default values
Nolen Johnsonfc326dd2023-03-18 00:31:32 -0400117BOOTLOADER_MESSAGE_OFFSET ?= 0
Bruno Martins3ed1eb92020-10-17 10:20:37 +0100118TARGET_ADDITIONAL_GRALLOC_10_USAGE_BITS ?= 0
Rohit Sekharaf632112023-09-19 15:48:20 +0530119TARGET_CAMERA_OVERRIDE_FORMAT_FROM_RESERVED ?= false
Bruno Martins21d15722023-05-16 21:40:28 +0100120TARGET_GRALLOC_HANDLE_HAS_CUSTOM_CONTENT_MD_RESERVED_SIZE ?= false
Chirayu Desai981d2102022-09-17 04:47:54 +0530121TARGET_GRALLOC_HANDLE_HAS_RESERVED_SIZE ?= false
Michael Bestasd65cc352023-10-20 01:47:13 +0300122TARGET_GRALLOC_HANDLE_HAS_UBWCP_FORMAT ?= false
Luofan Chenac764a42023-05-05 10:54:14 +0800123TARGET_HEALTH_CHARGING_CONTROL_CHARGING_ENABLED ?= 1
124TARGET_HEALTH_CHARGING_CONTROL_CHARGING_DISABLED ?= 0
125TARGET_HEALTH_CHARGING_CONTROL_SUPPORTS_BYPASS ?= true
126TARGET_HEALTH_CHARGING_CONTROL_SUPPORTS_DEADLINE ?= false
127TARGET_HEALTH_CHARGING_CONTROL_SUPPORTS_TOGGLE ?= true
Pig02f678a2020-10-15 02:58:37 +0800128TARGET_INIT_VENDOR_LIB ?= vendor_init
daniml325cc5272021-01-21 16:56:41 +0100129TARGET_INPUTDISPATCHER_SKIP_EVENT_KEY ?= 0
Arian1446a6e2024-05-18 15:40:29 +0200130TARGET_POWER_LIBPERFMGR_MODE_EXTENSION_LIB ?= libperfmgr-ext
Cosmin Tanislavb6087242024-08-22 13:25:31 +0300131TARGET_POWERSHARE_ENABLED ?= 1
132TARGET_POWERSHARE_DISABLED ?= 0
Arian770e37e2023-11-04 10:49:49 +0100133TARGET_QTI_VIBRATOR_EFFECT_LIB ?= libqtivibratoreffect
Luofan Chen506d14a2023-11-27 22:30:51 +0800134TARGET_SDMCORE_HAS_IS_DISPLAY_HW_AVAILABLE_FUNC ?= true
TheScarastic8541a942021-10-19 08:07:54 +0000135TARGET_SURFACEFLINGER_UDFPS_LIB ?= surfaceflinger_udfps_lib
LuK1337bc866dd2022-03-23 20:39:30 +0100136TARGET_TRUST_USB_CONTROL_PATH ?= /proc/sys/kernel/deny_new_usb
137TARGET_TRUST_USB_CONTROL_ENABLE ?= 1
138TARGET_TRUST_USB_CONTROL_DISABLE ?= 0
Pig02f678a2020-10-15 02:58:37 +0800139
140# Soong value variables
LuK1337eb28eac2023-06-24 21:03:23 -0500141SOONG_CONFIG_blissGlobalVars_aapt_version_code := $(shell date -u +%Y%m%d)
Nolen Johnsonfc326dd2023-03-18 00:31:32 -0400142SOONG_CONFIG_blissGlobalVars_bootloader_message_offset := $(BOOTLOADER_MESSAGE_OFFSET)
Pig02f678a2020-10-15 02:58:37 +0800143SOONG_CONFIG_blissGlobalVars_additional_gralloc_10_usage_bits := $(TARGET_ADDITIONAL_GRALLOC_10_USAGE_BITS)
Jake Weinstein48d18812024-04-27 14:39:45 -0500144SOONG_CONFIG_blissGlobalVars_target_camera_package_name := $(TARGET_CAMERA_PACKAGE_NAME)
Luofan Chenac764a42023-05-05 10:54:14 +0800145SOONG_CONFIG_blissGlobalVars_target_health_charging_control_charging_path := $(TARGET_HEALTH_CHARGING_CONTROL_CHARGING_PATH)
146SOONG_CONFIG_blissGlobalVars_target_health_charging_control_charging_enabled := $(TARGET_HEALTH_CHARGING_CONTROL_CHARGING_ENABLED)
147SOONG_CONFIG_blissGlobalVars_target_health_charging_control_charging_disabled := $(TARGET_HEALTH_CHARGING_CONTROL_CHARGING_DISABLED)
148SOONG_CONFIG_blissGlobalVars_target_health_charging_control_deadline_path := $(TARGET_HEALTH_CHARGING_CONTROL_DEADLINE_PATH)
149SOONG_CONFIG_blissGlobalVars_target_health_charging_control_supports_bypass := $(TARGET_HEALTH_CHARGING_CONTROL_SUPPORTS_BYPASS)
150SOONG_CONFIG_blissGlobalVars_target_health_charging_control_supports_deadline := $(TARGET_HEALTH_CHARGING_CONTROL_SUPPORTS_DEADLINE)
151SOONG_CONFIG_blissGlobalVars_target_health_charging_control_supports_toggle := $(TARGET_HEALTH_CHARGING_CONTROL_SUPPORTS_TOGGLE)
Pig02f678a2020-10-15 02:58:37 +0800152SOONG_CONFIG_blissGlobalVars_target_init_vendor_lib := $(TARGET_INIT_VENDOR_LIB)
153SOONG_CONFIG_blissGlobalVars_target_ld_shim_libs := $(subst $(space),:,$(TARGET_LD_SHIM_LIBS))
Arian1446a6e2024-05-18 15:40:29 +0200154SOONG_CONFIG_blissGlobalVars_target_power_libperfmgr_mode_extension_lib := $(TARGET_POWER_LIBPERFMGR_MODE_EXTENSION_LIB)
Cosmin Tanislavb6087242024-08-22 13:25:31 +0300155SOONG_CONFIG_blissGlobalVars_target_powershare_path := $(TARGET_POWERSHARE_PATH)
156SOONG_CONFIG_blissGlobalVars_target_powershare_enabled := $(TARGET_POWERSHARE_ENABLED)
157SOONG_CONFIG_blissGlobalVars_target_powershare_disabled := $(TARGET_POWERSHARE_DISABLED)
TheScarastic8541a942021-10-19 08:07:54 +0000158SOONG_CONFIG_blissGlobalVars_target_surfaceflinger_udfps_lib := $(TARGET_SURFACEFLINGER_UDFPS_LIB)
LuK1337bc866dd2022-03-23 20:39:30 +0100159SOONG_CONFIG_blissGlobalVars_target_trust_usb_control_path := $(TARGET_TRUST_USB_CONTROL_PATH)
160SOONG_CONFIG_blissGlobalVars_target_trust_usb_control_enable := $(TARGET_TRUST_USB_CONTROL_ENABLE)
161SOONG_CONFIG_blissGlobalVars_target_trust_usb_control_disable := $(TARGET_TRUST_USB_CONTROL_DISABLE)
daniml325cc5272021-01-21 16:56:41 +0100162SOONG_CONFIG_blissGlobalVars_target_inputdispatcher_skip_event_key := $(TARGET_INPUTDISPATCHER_SKIP_EVENT_KEY)
AnierinB03eb6962024-07-19 18:09:00 +0000163SOONG_CONFIG_blissGlobalVars_spoof_first_api_level_32 := $(SPOOF_FIRST_API_LEVEL_32)
daniml325cc5272021-01-21 16:56:41 +0100164
Alessandro Astone3fc779e2021-01-05 18:04:14 +0100165ifneq ($(filter $(QSSI_SUPPORTED_PLATFORMS),$(TARGET_BOARD_PLATFORM)),)
166SOONG_CONFIG_blissQcomVars_qcom_display_headers_namespace := vendor/qcom/opensource/commonsys-intf/display
167else
168SOONG_CONFIG_blissQcomVars_qcom_display_headers_namespace := $(QCOM_SOONG_NAMESPACE)/display
Pig02f678a2020-10-15 02:58:37 +0800169endif
Arian770e37e2023-11-04 10:49:49 +0100170SOONG_CONFIG_blissQcomVars_qti_vibrator_effect_lib := $(TARGET_QTI_VIBRATOR_EFFECT_LIB)
Pig033b4402020-09-19 08:44:33 +0800171
Adithya R2ee2c762021-10-26 22:58:24 +0530172ifneq ($(TARGET_USES_NQ_NFC),true)
173PRODUCT_SOONG_NAMESPACES += hardware/nxp
174endif #TARGET_USES_NQ_NFC
Michael Bestas34cb33b2024-11-02 20:10:21 -0400175
176# libfmjni
177ifeq ($(BOARD_HAVE_QCOM_FM),true)
178 PRODUCT_SOONG_NAMESPACES += \
179 vendor/qcom/opensource/libfmjni
180else ifeq ($(BOARD_HAVE_BCM_FM),true)
181 PRODUCT_SOONG_NAMESPACES += \
182 hardware/broadcom/fm
183else ifeq ($(BOARD_HAVE_SLSI_FM),true)
184 PRODUCT_SOONG_NAMESPACES += \
185 hardware/samsung_slsi/fm
186else ifneq ($(BOARD_HAVE_MTK_FM),true)
187 PRODUCT_SOONG_NAMESPACES += \
188 packages/apps/FMRadio/jni/fmr
189endif