blob: e57b859b20438ed2c7b8ab118badc830a1094e90 [file] [log] [blame]
Naresh Tanniruf1290152018-11-27 12:16:45 +05301ifneq ($(AUDIO_USE_STUB_HAL), true)
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -08002ifeq ($(strip $(BOARD_USES_ALSA_AUDIO)),true)
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -08003LOCAL_PATH := $(call my-dir)
4
5include $(CLEAR_VARS)
6
7LOCAL_ARM_MODE := arm
8
Ajay Dudanibe3335a2013-08-19 18:47:21 -07009AUDIO_PLATFORM := $(TARGET_BOARD_PLATFORM)
Ravi Kumar Alamanda48c921d2013-10-29 06:07:44 -070010
Deepthi Gunturi6167e2b2020-04-10 09:52:53 +053011ifneq ($(filter msm8974 msm8226 msm8084 msm8610 apq8084 msm8994 msm8992 msm8996 msm8998 apq8098_latv sdm845 sdm710 qcs605 sdmshrike msmnile kona lahaina holi sdm660 msm8937 msm8953 $(MSMSTEPPE) $(TRINKET) lito atoll bengal,$(TARGET_BOARD_PLATFORM)),)
Ajay Dudanibe3335a2013-08-19 18:47:21 -070012 # B-family platform uses msm8974 code base
13 AUDIO_PLATFORM = msm8974
Ravi Kumar Alamanda48c921d2013-10-29 06:07:44 -070014 MULTIPLE_HW_VARIANTS_ENABLED := true
Aalique Grahame22e49102018-12-18 14:23:57 -080015ifneq ($(filter msm8974,$(TARGET_BOARD_PLATFORM)),)
16 LOCAL_CFLAGS := -DPLATFORM_MSM8974
17 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="2"
18endif
Mingming Yin8e5a4f62013-10-07 15:23:41 -070019ifneq ($(filter msm8610,$(TARGET_BOARD_PLATFORM)),)
20 LOCAL_CFLAGS := -DPLATFORM_MSM8610
21endif
Shiv Maliyappanahalli34b585f2013-10-01 15:49:05 -070022ifneq ($(filter msm8226,$(TARGET_BOARD_PLATFORM)),)
23 LOCAL_CFLAGS := -DPLATFORM_MSM8x26
Aalique Grahame22e49102018-12-18 14:23:57 -080024 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="2"
25endif
26ifneq ($(filter msm8084,$(TARGET_BOARD_PLATFORM)),)
27 LOCAL_CFLAGS := -DPLATFORM_MSM8084
28 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="2"
Shiv Maliyappanahalli34b585f2013-10-01 15:49:05 -070029endif
Vidyakumar Athotad9d9ff32013-11-13 11:46:52 -080030ifneq ($(filter apq8084,$(TARGET_BOARD_PLATFORM)),)
31 LOCAL_CFLAGS := -DPLATFORM_APQ8084
32endif
Mingming Yin0e1b2902014-05-19 18:20:59 -070033ifneq ($(filter msm8994,$(TARGET_BOARD_PLATFORM)),)
34 LOCAL_CFLAGS := -DPLATFORM_MSM8994
Aalique Grahame22e49102018-12-18 14:23:57 -080035 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="4"
36 LOCAL_CFLAGS += -DKPI_OPTIMIZE_ENABLED
Mingming Yin0e1b2902014-05-19 18:20:59 -070037endif
Fred Oh68ad1d32014-12-09 13:08:07 -080038ifneq ($(filter msm8992,$(TARGET_BOARD_PLATFORM)),)
39 LOCAL_CFLAGS := -DPLATFORM_MSM8994
Aalique Grahame22e49102018-12-18 14:23:57 -080040 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="4"
41 LOCAL_CFLAGS += -DKPI_OPTIMIZE_ENABLED
Fred Oh68ad1d32014-12-09 13:08:07 -080042endif
Mingming Yin89c6a7f2015-03-24 11:56:14 -070043ifneq ($(filter msm8996,$(TARGET_BOARD_PLATFORM)),)
44 LOCAL_CFLAGS := -DPLATFORM_MSM8996
Aalique Grahame22e49102018-12-18 14:23:57 -080045 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="4"
46 LOCAL_CFLAGS += -DKPI_OPTIMIZE_ENABLED
47 LOCAL_CFLAGS += -DINCALL_MUSIC_ENABLED
Banajit Goswami22582e72014-10-15 18:29:34 -070048endif
Venkataraman Nerellapallib8689ec2017-05-04 11:55:29 +053049ifneq ($(filter msm8998 apq8098_latv,$(TARGET_BOARD_PLATFORM)),)
Ben Romberger22d41232016-11-16 14:55:25 -080050 LOCAL_CFLAGS := -DPLATFORM_MSM8998
Ramjee Singha394f472019-10-07 12:31:13 +053051 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="8"
Aalique Grahame22e49102018-12-18 14:23:57 -080052 LOCAL_CFLAGS += -DINCALL_MUSIC_ENABLED
Banajit Goswami4c0dff22016-03-04 18:31:22 -080053endif
Soumild9f5bfa2017-04-04 19:31:22 -070054ifneq ($(filter sdm845,$(TARGET_BOARD_PLATFORM)),)
Garmond Leung986024b2017-04-28 14:41:10 -070055 LOCAL_CFLAGS := -DPLATFORM_SDM845
Ramjee Singh4752c892019-03-25 18:02:19 +053056 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="8"
Aalique Grahame22e49102018-12-18 14:23:57 -080057 LOCAL_CFLAGS += -DINCALL_MUSIC_ENABLED
58 LOCAL_CFLAGS += -DINCALL_STEREO_CAPTURE_ENABLED
Xiaoyu Ye0afc9232017-03-28 21:31:22 -070059endif
Naresh Tanniru42e0e602018-03-16 19:45:21 +053060ifneq ($(filter sdm710,$(TARGET_BOARD_PLATFORM)),)
61 LOCAL_CFLAGS := -DPLATFORM_SDM710
Ramjee Singh4752c892019-03-25 18:02:19 +053062 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="8"
Sharad Sangled39232d2017-08-08 20:27:18 +053063endif
Ashok Sidipotu5accc8d2017-11-08 11:21:55 +053064ifneq ($(filter qcs605,$(TARGET_BOARD_PLATFORM)),)
65 LOCAL_CFLAGS := -DPLATFORM_QCS605
66endif
Vijayakumar Badiger3c199ff2019-06-15 15:19:20 -070067ifneq ($(filter msmnile sdmshrike,$(TARGET_BOARD_PLATFORM)),)
Xiaoyu Ye91553e62017-11-21 17:35:50 -080068 LOCAL_CFLAGS := -DPLATFORM_MSMNILE
Aalique Grahame22e49102018-12-18 14:23:57 -080069 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="4"
70 LOCAL_CFLAGS += -DINCALL_MUSIC_ENABLED
71 LOCAL_CFLAGS += -DINCALL_STEREO_CAPTURE_ENABLED
Xiaoyu Ye91553e62017-11-21 17:35:50 -080072endif
Mingshu Pang2c3f3642020-09-18 21:19:45 +080073ifneq ($(filter kona,$(TARGET_BOARD_PLATFORM)),)
Meng Wangef2f6e12018-10-08 13:06:05 +080074 LOCAL_CFLAGS := -DPLATFORM_KONA
Aalique Grahameee8c0ed2019-02-26 14:15:52 -080075 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="4"
Aalique Grahameb14dfdd2019-04-29 11:36:37 -070076 LOCAL_CFLAGS += -DINCALL_STEREO_CAPTURE_ENABLED
Meng Wangef2f6e12018-10-08 13:06:05 +080077endif
Mingshu Pang2c3f3642020-09-18 21:19:45 +080078ifneq ($(filter lahaina,$(TARGET_BOARD_PLATFORM)),)
79 LOCAL_CFLAGS := -DPLATFORM_LAHAINA
80 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="4"
81 LOCAL_CFLAGS += -DINCALL_STEREO_CAPTURE_ENABLED
82endif
Tanya Dixit6e3bccc2018-04-05 13:42:18 +053083ifneq ($(filter $(MSMSTEPPE) ,$(TARGET_BOARD_PLATFORM)),)
84 LOCAL_CFLAGS := -DPLATFORM_MSMSTEPPE
Ramjee Singh970ad432019-03-13 10:28:43 +053085 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="4"
Tanya Dixit6e3bccc2018-04-05 13:42:18 +053086endif
Hari Veerubhotlae56a5fa2018-10-14 16:52:10 +053087ifneq ($(filter $(TRINKET) ,$(TARGET_BOARD_PLATFORM)),)
88 LOCAL_CFLAGS := -DPLATFORM_TRINKET
Ramjee Singh970ad432019-03-13 10:28:43 +053089 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="4"
Hari Veerubhotlae56a5fa2018-10-14 16:52:10 +053090endif
Manisha Agarwal888e9762019-02-27 22:18:49 +053091ifneq ($(filter lito,$(TARGET_BOARD_PLATFORM)),)
92 LOCAL_CFLAGS := -DPLATFORM_LITO
Preetam Singh Ranawat7f875d42019-05-29 13:50:00 +053093 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="4"
Kunlei Zhang86094562019-07-12 16:23:33 +080094 LOCAL_CFLAGS += -DINCALL_STEREO_CAPTURE_ENABLED
Manisha Agarwal888e9762019-02-27 22:18:49 +053095endif
Faiz Nabi Kuchayccc996e2020-07-25 16:02:15 +053096ifneq ($(filter holi,$(TARGET_BOARD_PLATFORM)),)
97 LOCAL_CFLAGS := -DPLATFORM_HOLI
98 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="4"
99 LOCAL_CFLAGS += -DINCALL_STEREO_CAPTURE_ENABLED
100endif
Preetam Singh Ranawat9bfe1322019-07-20 16:13:05 +0530101ifneq ($(filter bengal,$(TARGET_BOARD_PLATFORM)),)
102 LOCAL_CFLAGS := -DPLATFORM_BENGAL
103 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="4"
Jaideep Sharmade870aa2019-09-26 10:54:04 +0530104 LOCAL_CFLAGS += -DINCALL_STEREO_CAPTURE_ENABLED
Preetam Singh Ranawat9bfe1322019-07-20 16:13:05 +0530105endif
Manisha Agarwal13c65ae2019-05-16 10:48:28 +0800106ifneq ($(filter atoll,$(TARGET_BOARD_PLATFORM)),)
107 LOCAL_CFLAGS := -DPLATFORM_ATOLL
108 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="4"
Faiz Nabi Kuchay0b79d7d2019-08-05 20:36:31 +0530109 LOCAL_CFLAGS += -DINCALL_STEREO_CAPTURE_ENABLED
Manisha Agarwal13c65ae2019-05-16 10:48:28 +0800110endif
Arusha Goyalfda29152016-12-26 10:53:39 +0530111ifneq ($(filter sdm660,$(TARGET_BOARD_PLATFORM)),)
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530112 LOCAL_CFLAGS := -DPLATFORM_MSMFALCON
Sujin Panickerb904fbe2019-04-04 13:28:07 +0530113 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="8"
114endif
115ifneq ($(filter msm8937,$(TARGET_BOARD_PLATFORM)),)
116 LOCAL_CFLAGS := -DPLATFORM_MSM8937
117 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="8"
Dhananjay Kumard3ab9f42016-07-20 17:05:47 +0530118endif
Sujin Panickerd53dd1b2019-12-23 18:56:54 +0530119ifneq ($(filter msm8953,$(TARGET_BOARD_PLATFORM)),)
120 LOCAL_CFLAGS := -DPLATFORM_MSM8953
121 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="8"
122endif
Naresh Tannirudb72d1e2014-03-05 17:33:47 +0530123endif
Naresh Tanniru8b919ac2014-01-30 19:12:53 +0530124
Derek Chen3e5b30a2018-10-24 01:04:25 -0700125ifeq ($(TARGET_BOARD_AUTO),true)
126 LOCAL_CFLAGS += -DPLATFORM_AUTO
127endif
128
Sriram Kumar9c836482020-10-27 20:34:35 +0530129ifeq ($(TARGET_SUPPORTS_WEARABLES),true)
130 LOCAL_CFLAGS += -DENABLE_HFP_CALIBRATION
131endif
132
Viraja Kommaraju7d407e12019-11-15 21:25:36 +0530133ifeq ($(strip $(AUDIO_FEATURE_ENABLED_DAEMON_SUPPORT)), true)
134 LOCAL_CFLAGS += -DDAEMON_SUPPORT_AUTO
135endif
136
Bruce Levycea5f172018-01-31 16:06:04 -0800137LOCAL_CFLAGS += -Wno-macro-redefined
138
Revathi Uddarajue8bd13c2018-04-02 21:27:54 +0530139LOCAL_HEADER_LIBRARIES := libhardware_headers
140
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -0800141LOCAL_SRC_FILES := \
Weiyin Jiange6ce6312019-01-28 18:28:22 +0800142 audio_hw.c \
Arun Mirpurie008ed22019-03-21 11:21:04 -0700143 acdb.c \
Weiyin Jiange6ce6312019-01-28 18:28:22 +0800144 platform_info.c \
145 $(AUDIO_PLATFORM)/platform.c \
Arun Mirpurie008ed22019-03-21 11:21:04 -0700146 voice.c
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -0800147
Subhash Chandra Bose Naripeddy19dc03b2014-03-10 14:43:05 -0700148LOCAL_SRC_FILES += audio_extn/audio_extn.c \
Weiyin Jiange6ce6312019-01-28 18:28:22 +0800149 audio_extn/audio_hidl.cpp \
Arun Mirpurie008ed22019-03-21 11:21:04 -0700150 audio_extn/compress_in.c \
Arun Mirpurib1bec9c2019-01-29 16:42:45 -0800151 audio_extn/fm.c \
Arun Mirpurie008ed22019-03-21 11:21:04 -0700152 audio_extn/keep_alive.c \
153 audio_extn/source_track.c \
154 audio_extn/usb.c \
155 audio_extn/utils.c \
Aniket Kumar Lata0e6e1e52019-11-14 21:43:55 -0800156 audio_extn/device_utils.c \
Arun Mirpurib1bec9c2019-01-29 16:42:45 -0800157 voice_extn/compress_voip.c \
Arun Mirpurie008ed22019-03-21 11:21:04 -0700158 voice_extn/voice_extn.c
Bharath Gopal01310bb2016-12-05 15:39:32 +0530159
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -0800160LOCAL_SHARED_LIBRARIES := \
Arun Mirpurie008ed22019-03-21 11:21:04 -0700161 libbase \
Aalique Grahame22e49102018-12-18 14:23:57 -0800162 liblog \
163 libcutils \
164 libtinyalsa \
Arun Mirpurib1bec9c2019-01-29 16:42:45 -0800165 libtinycompress \
Aalique Grahame22e49102018-12-18 14:23:57 -0800166 libaudioroute \
167 libdl \
168 libaudioutils \
Aniket Kumar Lata808e8d62019-01-28 22:54:28 -0800169 libexpat \
Weiyin Jiange6ce6312019-01-28 18:28:22 +0800170 libhidlbase \
Arun Mirpurie008ed22019-03-21 11:21:04 -0700171 libprocessgroup \
172 libutils
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -0800173
174LOCAL_C_INCLUDES += \
Aalique Grahame22e49102018-12-18 14:23:57 -0800175 external/tinyalsa/include \
176 external/tinycompress/include \
177 system/media/audio_utils/include \
178 external/expat/lib \
Aniket Kumar Lata808e8d62019-01-28 22:54:28 -0800179 vendor/qcom/opensource/core-utils/fwk-detect \
Aalique Grahame22e49102018-12-18 14:23:57 -0800180 $(call include-path-for, audio-route) \
181 $(call include-path-for, audio-effects) \
182 $(LOCAL_PATH)/$(AUDIO_PLATFORM) \
183 $(LOCAL_PATH)/audio_extn \
184 $(LOCAL_PATH)/voice_extn
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -0800185
Arun Mirpurie008ed22019-03-21 11:21:04 -0700186LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include
Vignesh Kulothunganc49bdfa2020-01-08 14:24:17 -0800187LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include/audio
Arun Mirpurie008ed22019-03-21 11:21:04 -0700188LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/techpack/audio/include
189LOCAL_ADDITIONAL_DEPENDENCIES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr
190
191
192# Hardware specific feature
193ifeq ($(strip $(AUDIO_FEATURE_ENABLED_DLKM)),true)
194 LOCAL_HEADER_LIBRARIES += audio_kernel_headers
195 LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/vendor/qcom/opensource/audio-kernel/include
196endif
197
Weiyin Jiangd9b5a4e2019-07-18 17:24:21 +0800198ifeq ($(strip $(AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT)),true)
199 LOCAL_CFLAGS += -DENABLE_EXTENDED_COMPRESS_FORMAT
200endif
201
Arun Mirpurie008ed22019-03-21 11:21:04 -0700202LOCAL_CFLAGS += -DUSE_VENDOR_EXTN
203
204# Legacy feature
205ifdef MULTIPLE_HW_VARIANTS_ENABLED
206 LOCAL_CFLAGS += -DHW_VARIANTS_ENABLED
207 LOCAL_SRC_FILES += $(AUDIO_PLATFORM)/hw_info.c
208endif
209
210# Legacy feature
211ifeq ($(strip $(AUDIO_FEATURE_ENABLED_DTS_EAGLE)),true)
212 LOCAL_CFLAGS += -DDTS_EAGLE
213 LOCAL_SRC_FILES += audio_extn/dts_eagle.c
214endif
215
216# Legacy feature
217ifeq ($(strip $(DOLBY_DDP)),true)
218 LOCAL_CFLAGS += -DDS1_DOLBY_DDP_ENABLED
219 LOCAL_SRC_FILES += audio_extn/dolby.c
220endif
221
222# Legacy feature
223ifeq ($(strip $(DS1_DOLBY_DAP)),true)
224 LOCAL_CFLAGS += -DDS1_DOLBY_DAP_ENABLED
225ifneq ($(strip $(DOLBY_DDP)),true)
226 LOCAL_SRC_FILES += audio_extn/dolby.c
227endif
228endif
229
230# Legacy feature
231ifeq ($(strip $(AUDIO_FEATURE_ENABLED_DS2_DOLBY_DAP)),true)
232 LOCAL_CFLAGS += -DDS2_DOLBY_DAP_ENABLED
233 LOCAL_CFLAGS += -DDS1_DOLBY_DDP_ENABLED
234ifneq ($(strip $(DOLBY_DDP)),true)
235 ifneq ($(strip $(DS1_DOLBY_DAP)),true)
236 LOCAL_SRC_FILES += audio_extn/dolby.c
237 endif
238endif
239endif
240
241# NonLA feature
242ifeq ($(strip $(AUDIO_FEATURE_ENABLED_QAF)),true)
243 LOCAL_CFLAGS += -DQAF_EXTN_ENABLED
244 LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio/qaf/
245 LOCAL_SRC_FILES += audio_extn/qaf.c
246endif
247
248# Hardware specific feature
Sidipotu Ashokd2f10ba2019-05-06 15:41:56 +0530249ifeq ($(strip $(AUDIO_FEATURE_ENABLED_QAP)),true)
250LOCAL_CFLAGS += -DQAP_EXTN_ENABLED -Wno-tautological-pointer-compare
251LOCAL_SRC_FILES += audio_extn/qap.c
252LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio/qap_wrapper/
253LOCAL_HEADER_LIBRARIES += audio_qaf_headers
254LOCAL_SHARED_LIBRARIES += libqap_wrapper liblog
Arun Mirpurie008ed22019-03-21 11:21:04 -0700255endif
256
Kiran Kandi910e1862013-10-29 13:29:42 -0700257ifeq ($(strip $(AUDIO_FEATURE_ENABLED_LISTEN)),true)
258 LOCAL_CFLAGS += -DAUDIO_LISTEN_ENABLED
259 LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio/audio-listen
260 LOCAL_SRC_FILES += audio_extn/listen.c
261endif
262
Arun Mirpurie008ed22019-03-21 11:21:04 -0700263# Hardware specific feature
Srinivas Rao Narne8ff4db52018-01-25 16:04:44 -0800264ifeq ($(TARGET_COMPILE_WITH_MSM_KERNEL),true)
Aalique Grahame22e49102018-12-18 14:23:57 -0800265 LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include
Vignesh Kulothunganc49bdfa2020-01-08 14:24:17 -0800266 LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include/audio
Srinivas Rao Narne8ff4db52018-01-25 16:04:44 -0800267 LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/techpack/audio/include
Satish Babu Patakokila1d3b15d2018-07-03 17:09:40 +0530268 LOCAL_ADDITIONAL_DEPENDENCIES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr
Srinivas Rao Narne8ff4db52018-01-25 16:04:44 -0800269endif
270
Arun Mirpurie008ed22019-03-21 11:21:04 -0700271# Legacy feature
Aalique Grahame22e49102018-12-18 14:23:57 -0800272ifeq ($(strip $(AUDIO_FEATURE_SUPPORTED_EXTERNAL_BT)),true)
273 LOCAL_CFLAGS += -DEXTERNAL_BT_SUPPORTED
274endif
275
Arun Mirpurie008ed22019-03-21 11:21:04 -0700276# Legacy feature
Aalique Grahame22e49102018-12-18 14:23:57 -0800277ifeq ($(strip $(AUDIO_FEATURE_FLICKER_SENSOR_INPUT)),true)
278 LOCAL_CFLAGS += -DFLICKER_SENSOR_INPUT
279endif
280
Arun Mirpurie008ed22019-03-21 11:21:04 -0700281# Legacy feature
Aalique Grahame22e49102018-12-18 14:23:57 -0800282ifeq ($(strip $(AUDIO_FEATURE_NO_AUDIO_OUT)),true)
283 LOCAL_CFLAGS += -DNO_AUDIO_OUT
284endif
285
Arun Mirpurie008ed22019-03-21 11:21:04 -0700286# NonLA feature
Ashish Jain81eb2a82015-05-13 10:52:34 +0530287ifeq ($(strip $(AUDIO_FEATURE_ENABLED_EXT_HDMI)),true)
288 LOCAL_CFLAGS += -DAUDIO_EXTERNAL_HDMI_ENABLED
Sujin Panickerb904fbe2019-04-04 13:28:07 +0530289 LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio/audio-parsers
290 LOCAL_SHARED_LIBRARIES += libaudioparsers
Ashish Jain81eb2a82015-05-13 10:52:34 +0530291endif
292
Arun Mirpurie008ed22019-03-21 11:21:04 -0700293# Hardware specific feature
Ravi Kumar Alamanda8fa6b192014-09-09 16:06:42 -0700294ifeq ($(strip $(BOARD_SUPPORTS_SOUND_TRIGGER)),true)
Banajit Goswami710f3532016-08-28 14:48:33 -0700295 ST_FEATURE_ENABLE := true
296endif
297
Arun Mirpurie008ed22019-03-21 11:21:04 -0700298# Hardware specific feature
Banajit Goswami710f3532016-08-28 14:48:33 -0700299ifeq ($(strip $(BOARD_SUPPORTS_SOUND_TRIGGER_HAL)),true)
300 ST_FEATURE_ENABLE := true
301endif
302
Arun Mirpurie008ed22019-03-21 11:21:04 -0700303# Hardware specific feature
Banajit Goswami710f3532016-08-28 14:48:33 -0700304ifeq ($(ST_FEATURE_ENABLE), true)
Ravi Kumar Alamanda8fa6b192014-09-09 16:06:42 -0700305 LOCAL_CFLAGS += -DSOUND_TRIGGER_ENABLED
306 LOCAL_CFLAGS += -DSOUND_TRIGGER_PLATFORM_NAME=$(TARGET_BOARD_PLATFORM)
307 LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio/sound_trigger
308 LOCAL_SRC_FILES += audio_extn/soundtrigger.c
Aalique Grahame22e49102018-12-18 14:23:57 -0800309ifneq ($(filter msm8996,$(TARGET_BOARD_PLATFORM)),)
310 LOCAL_HEADER_LIBRARIES += sound_trigger.primary_headers
311endif
Ravi Kumar Alamanda8fa6b192014-09-09 16:06:42 -0700312endif
313
Arun Mirpurie008ed22019-03-21 11:21:04 -0700314# Legacy feature
Damir Didjustof1d46c72013-11-06 17:59:04 -0800315ifeq ($(strip $(AUDIO_FEATURE_ENABLED_AUXPCM_BT)),true)
316 LOCAL_CFLAGS += -DAUXPCM_BT_ENABLED
317endif
318
Arun Mirpurie008ed22019-03-21 11:21:04 -0700319# Legacy feature
Preetam Singh Ranawat2d0e4632015-02-02 12:40:59 +0530320ifeq ($(strip $(AUDIO_FEATURE_ENABLED_PM_SUPPORT)),true)
321 LOCAL_CFLAGS += -DPM_SUPPORT_ENABLED
322 LOCAL_SRC_FILES += audio_extn/pm.c
323 LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/libperipheralclient/inc
324 LOCAL_SHARED_LIBRARIES += libperipheral_client
325endif
326
Shiv Maliyappanahallic0656402016-09-03 14:13:26 -0700327
Arun Mirpurie008ed22019-03-21 11:21:04 -0700328# Hardare specific featre
Weiyin Jiangaa80acd2016-09-21 16:42:11 +0800329ifeq ($(strip $(AUDIO_FEATURE_ENABLED_GEF_SUPPORT)),true)
330 LOCAL_CFLAGS += -DAUDIO_GENERIC_EFFECT_FRAMEWORK_ENABLED
331 LOCAL_SRC_FILES += audio_extn/gef.c
332endif
333
Arun Mirpurie008ed22019-03-21 11:21:04 -0700334# Hardware specific feature
Ben Rombergerd771a7c2017-02-22 18:05:17 -0800335ifeq ($(strip $($AUDIO_FEATURE_ADSP_HDLR_ENABLED)),true)
336 LOCAL_CFLAGS += -DAUDIO_EXTN_ADSP_HDLR_ENABLED
337 LOCAL_SRC_FILES += audio_extn/adsp_hdlr.c
338endif
339
Arun Mirpurie008ed22019-03-21 11:21:04 -0700340
Revathi Uddaraju1eac8b02017-05-18 17:13:33 +0530341ifeq ($(strip $(AUDIO_FEATURE_ENABLED_DYNAMIC_LOG)), true)
342 LOCAL_CFLAGS += -DDYNAMIC_LOG_ENABLED
343 LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio/audio-log-utils
344 LOCAL_SHARED_LIBRARIES += libaudio_log_utils
345endif
346
Arun Mirpurie008ed22019-03-21 11:21:04 -0700347# Hardware specific feature
Aditya Bavanari29bcea22017-10-03 20:10:35 +0530348ifeq ($(strip $(AUDIO_FEATURE_ENABLED_INSTANCE_ID)), true)
349 LOCAL_CFLAGS += -DINSTANCE_ID_ENABLED
350endif
351
Vignesh Kulothungan4fa89d12020-01-27 11:24:13 -0800352# Kernel specific feature
Meng Wang4c32fb42020-01-16 17:57:11 +0800353ifeq ($(strip $(AUDIO_FEATURE_ENABLED_GKI)), true)
354 LOCAL_CFLAGS += -DAUDIO_GKI_ENABLED
355endif
356
Arun Mirpurie008ed22019-03-21 11:21:04 -0700357# Legacy feature
Dhanalakshmi Siddani57b014e2018-04-23 12:52:02 +0530358ifeq ($(strip $(AUDIO_FEATURE_ENABLED_KEEP_ALIVE_ARM_FFV)), true)
Dhanalakshmi Siddani30e06a22018-03-27 23:11:34 +0530359 LOCAL_CFLAGS += -DRUN_KEEP_ALIVE_IN_ARM_FFV
360endif
361
Arun Mirpurie008ed22019-03-21 11:21:04 -0700362# Legacy feature
Dhanalakshmi Siddani57b014e2018-04-23 12:52:02 +0530363ifeq ($(strip $(AUDIO_FEATURE_ENABLED_FFV)), true)
Dhanalakshmi Siddani30e06a22018-03-27 23:11:34 +0530364 LOCAL_CFLAGS += -DFFV_ENABLED
Dhanalakshmi Siddani57b014e2018-04-23 12:52:02 +0530365 LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio-noship/include/ffv
Dhanalakshmi Siddani30e06a22018-03-27 23:11:34 +0530366 LOCAL_SRC_FILES += audio_extn/ffv.c
367endif
368
Arun Mirpurie008ed22019-03-21 11:21:04 -0700369# Hardware Specific feature
Weiyin Jiange6ce6312019-01-28 18:28:22 +0800370ifeq ($(strip $(AUDIO_FEATURE_ENABLED_AHAL_EXT)),true)
371 LOCAL_CFLAGS += -DAHAL_EXT_ENABLED
372 LOCAL_SHARED_LIBRARIES += vendor.qti.hardware.audiohalext@1.0
373endif
374
Dhanalakshmi Siddani999d5642019-03-22 15:27:44 +0530375LOCAL_CFLAGS += -D_GNU_SOURCE
Satya Krishna Pindiprolif1cd92b2016-04-14 19:05:23 +0530376LOCAL_CFLAGS += -Wall -Werror
Alexy Josephb1379942016-01-29 15:49:38 -0800377
Mingming Yin5b7c0b32014-08-04 15:49:24 -0700378LOCAL_COPY_HEADERS_TO := mm-audio
379LOCAL_COPY_HEADERS := audio_extn/audio_defs.h
380
Vatsal Buchac09ae062018-11-14 13:25:08 +0530381ifeq ($(strip $(AUDIO_FEATURE_ENABLED_GCOV)),true)
382 LOCAL_CFLAGS += --coverage -fprofile-arcs -ftest-coverage
383 LOCAL_CPPFLAGS += --coverage -fprofile-arcs -ftest-coverage
384 LOCAL_STATIC_LIBRARIES += libprofile_rt
385endif
386
Jaideep Sharma31341f22019-12-06 10:45:29 +0530387LOCAL_SHARED_LIBRARIES += libbase libhidlbase libutils android.hardware.power@1.2 liblog
vivek mehtad15d2bf2019-05-17 13:35:10 -0700388LOCAL_SRC_FILES += audio_perf.cpp
Derek Chend2530072014-11-24 12:39:14 -0800389
Rahul Sharma99770982019-03-06 17:05:26 +0530390ifeq ($(strip $(AUDIO_FEATURE_ENABLED_FM_TUNER_EXT)),true)
391 LOCAL_CFLAGS += -DFM_TUNER_EXT_ENABLED
392endif
393
Mingming Yin8e5a4f62013-10-07 15:23:41 -0700394LOCAL_MODULE := audio.primary.$(TARGET_BOARD_PLATFORM)
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -0800395
Apoorv Raghuvanshi1b555f72014-05-29 12:48:15 -0700396LOCAL_MODULE_RELATIVE_PATH := hw
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -0800397
398LOCAL_MODULE_TAGS := optional
399
Aalique Grahame22e49102018-12-18 14:23:57 -0800400LOCAL_MODULE_OWNER := qti
401
Naresh Tanniru10758b62017-06-05 21:05:53 +0530402LOCAL_VENDOR_MODULE := true
403
Deepthi Gunturi6167e2b2020-04-10 09:52:53 +0530404ifneq ($(filter kona lahaina holi,$(TARGET_BOARD_PLATFORM)),)
Vikram Panduranga6ff1c952019-08-07 13:33:01 -0700405LOCAL_SANITIZE := integer_overflow
406endif
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -0800407include $(BUILD_SHARED_LIBRARY)
408
Soumil Shah196157e2018-01-22 17:39:48 -0800409LOCAL_CFLAGS += -Wno-unused-variable
410LOCAL_CFLAGS += -Wno-sign-compare
411LOCAL_CFLAGS += -Wno-unused-parameter
412LOCAL_CFLAGS += -Wno-unused-label
413LOCAL_CFLAGS += -Wno-gnu-designator
414LOCAL_CFLAGS += -Wno-typedef-redefinition
415LOCAL_CFLAGS += -Wno-shorten-64-to-32
416LOCAL_CFLAGS += -Wno-tautological-compare
417LOCAL_CFLAGS += -Wno-unused-function
418LOCAL_CFLAGS += -Wno-unused-local-typedef
419
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -0800420endif
Naresh Tanniruf1290152018-11-27 12:16:45 +0530421endif