Uday Kishore Pasupuleti | 582e0a5 | 2016-01-06 19:12:41 -0800 | [diff] [blame^] | 1 | ifeq ($(strip $(BOARD_USES_ALSA_AUDIO)),true) |
| 2 | |
| 3 | LOCAL_PATH := $(call my-dir) |
| 4 | |
| 5 | include $(CLEAR_VARS) |
| 6 | |
| 7 | LOCAL_ARM_MODE := arm |
| 8 | |
| 9 | AUDIO_PLATFORM := $(TARGET_BOARD_PLATFORM) |
| 10 | |
| 11 | ifneq ($(filter msm8974 msm8226 msm8610 apq8084 msm8994,$(TARGET_BOARD_PLATFORM)),) |
| 12 | # B-family platform uses msm8974 code base |
| 13 | AUDIO_PLATFORM = msm8974 |
| 14 | MULTIPLE_HW_VARIANTS_ENABLED := true |
| 15 | ifneq ($(filter msm8610,$(TARGET_BOARD_PLATFORM)),) |
| 16 | LOCAL_CFLAGS := -DPLATFORM_MSM8610 |
| 17 | endif |
| 18 | ifneq ($(filter msm8226,$(TARGET_BOARD_PLATFORM)),) |
| 19 | LOCAL_CFLAGS := -DPLATFORM_MSM8x26 |
| 20 | endif |
| 21 | ifneq ($(filter apq8084,$(TARGET_BOARD_PLATFORM)),) |
| 22 | LOCAL_CFLAGS := -DPLATFORM_APQ8084 |
| 23 | endif |
| 24 | ifneq ($(filter msm8994,$(TARGET_BOARD_PLATFORM)),) |
| 25 | LOCAL_CFLAGS := -DPLATFORM_MSM8994 |
| 26 | endif |
| 27 | endif |
| 28 | |
| 29 | ifneq ($(filter msm8916 msm8909,$(TARGET_BOARD_PLATFORM)),) |
| 30 | AUDIO_PLATFORM = msm8916 |
| 31 | MULTIPLE_HW_VARIANTS_ENABLED := true |
| 32 | LOCAL_CFLAGS := -DPLATFORM_MSM8916 |
| 33 | ifneq ($(filter msm8909,$(TARGET_BOARD_PLATFORM)),) |
| 34 | LOCAL_CFLAGS := -DPLATFORM_MSM8909 |
| 35 | endif |
| 36 | endif |
| 37 | |
| 38 | LOCAL_SRC_FILES := \ |
| 39 | audio_hw.c \ |
| 40 | voice.c \ |
| 41 | platform_info.c \ |
| 42 | $(AUDIO_PLATFORM)/platform.c |
| 43 | |
| 44 | LOCAL_SRC_FILES += audio_extn/audio_extn.c \ |
| 45 | audio_extn/utils.c |
| 46 | |
| 47 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_PCM_OFFLOAD)),true) |
| 48 | LOCAL_CFLAGS += -DPCM_OFFLOAD_ENABLED |
| 49 | endif |
| 50 | |
| 51 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_ANC_HEADSET)),true) |
| 52 | LOCAL_CFLAGS += -DANC_HEADSET_ENABLED |
| 53 | endif |
| 54 | |
| 55 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_FLUENCE)),true) |
| 56 | LOCAL_CFLAGS += -DFLUENCE_ENABLED |
| 57 | endif |
| 58 | |
| 59 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_PROXY_DEVICE)),true) |
| 60 | LOCAL_CFLAGS += -DAFE_PROXY_ENABLED |
| 61 | endif |
| 62 | |
| 63 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_KPI_OPTIMIZE)),true) |
| 64 | LOCAL_CFLAGS += -DKPI_OPTIMIZE_ENABLED |
| 65 | endif |
| 66 | |
| 67 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_FM_POWER_OPT)),true) |
| 68 | LOCAL_CFLAGS += -DFM_POWER_OPT |
| 69 | LOCAL_SRC_FILES += audio_extn/fm.c |
| 70 | endif |
| 71 | |
| 72 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_USBAUDIO)),true) |
| 73 | LOCAL_CFLAGS += -DUSB_HEADSET_ENABLED |
| 74 | LOCAL_SRC_FILES += audio_extn/usb.c |
| 75 | endif |
| 76 | |
| 77 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_HFP)),true) |
| 78 | LOCAL_CFLAGS += -DHFP_ENABLED |
| 79 | LOCAL_SRC_FILES += audio_extn/hfp.c |
| 80 | endif |
| 81 | |
| 82 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_CUSTOMSTEREO)),true) |
| 83 | LOCAL_CFLAGS += -DCUSTOM_STEREO_ENABLED |
| 84 | endif |
| 85 | |
| 86 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_SSR)),true) |
| 87 | LOCAL_CFLAGS += -DSSR_ENABLED |
| 88 | LOCAL_SRC_FILES += audio_extn/ssr.c |
| 89 | LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio/surround_sound/ |
| 90 | LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/common/inc/ |
| 91 | endif |
| 92 | |
| 93 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS)),true) |
| 94 | LOCAL_CFLAGS += -DMULTI_VOICE_SESSION_ENABLED |
| 95 | LOCAL_SRC_FILES += voice_extn/voice_extn.c |
| 96 | |
| 97 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_INCALL_MUSIC)),true) |
| 98 | LOCAL_CFLAGS += -DINCALL_MUSIC_ENABLED |
| 99 | endif |
| 100 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_COMPRESS_VOIP)),true) |
| 101 | LOCAL_CFLAGS += -DCOMPRESS_VOIP_ENABLED |
| 102 | LOCAL_SRC_FILES += voice_extn/compress_voip.c |
| 103 | endif |
| 104 | |
| 105 | endif |
| 106 | |
| 107 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_EXTN_FORMATS)),true) |
| 108 | LOCAL_CFLAGS += -DFORMATS_ENABLED |
| 109 | endif |
| 110 | |
| 111 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_SPKR_PROTECTION)),true) |
| 112 | LOCAL_CFLAGS += -DSPKR_PROT_ENABLED |
| 113 | LOCAL_SRC_FILES += audio_extn/spkr_protection.c |
| 114 | endif |
| 115 | |
| 116 | ifdef MULTIPLE_HW_VARIANTS_ENABLED |
| 117 | LOCAL_CFLAGS += -DHW_VARIANTS_ENABLED |
| 118 | LOCAL_SRC_FILES += $(AUDIO_PLATFORM)/hw_info.c |
| 119 | endif |
| 120 | |
| 121 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_COMPRESS_CAPTURE)),true) |
| 122 | LOCAL_CFLAGS += -DCOMPRESS_CAPTURE_ENABLED |
| 123 | LOCAL_SRC_FILES += audio_extn/compress_capture.c |
| 124 | endif |
| 125 | |
| 126 | ifeq ($(strip $(DOLBY_DDP)),true) |
| 127 | LOCAL_CFLAGS += -DDS1_DOLBY_DDP_ENABLED |
| 128 | LOCAL_SRC_FILES += audio_extn/dolby.c |
| 129 | endif |
| 130 | |
| 131 | ifeq ($(strip $(DOLBY_DAP)),true) |
| 132 | LOCAL_CFLAGS += -DDS1_DOLBY_DAP_ENABLED |
| 133 | ifneq ($(strip $(DOLBY_DDP)),true) |
| 134 | LOCAL_SRC_FILES += audio_extn/dolby.c |
| 135 | endif |
| 136 | endif |
| 137 | |
| 138 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_MULTIPLE_TUNNEL)), true) |
| 139 | LOCAL_CFLAGS += -DMULTIPLE_OFFLOAD_ENABLED |
| 140 | endif |
| 141 | |
| 142 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_EXTN_FLAC_DECODER)),true) |
| 143 | LOCAL_CFLAGS += -DFLAC_OFFLOAD_ENABLED |
| 144 | LOCAL_CFLAGS += -DCOMPRESS_METADATA_NEEDED |
| 145 | endif |
| 146 | |
| 147 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_VORBIS_OFFLOAD)),true) |
| 148 | LOCAL_CFLAGS += -DVORBIS_OFFLOAD_ENABLED |
| 149 | LOCAL_CFLAGS += -DCOMPRESS_METADATA_NEEDED |
| 150 | |
| 151 | endif |
| 152 | |
| 153 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_WMA_OFFLOAD)),true) |
| 154 | LOCAL_CFLAGS += -DWMA_OFFLOAD_ENABLED |
| 155 | LOCAL_CFLAGS += -DCOMPRESS_METADATA_NEEDED |
| 156 | endif |
| 157 | |
| 158 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_ALAC_OFFLOAD)),true) |
| 159 | LOCAL_CFLAGS += -DALAC_OFFLOAD_ENABLED |
| 160 | LOCAL_CFLAGS += -DCOMPRESS_METADATA_NEEDED |
| 161 | endif |
| 162 | |
| 163 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_APE_OFFLOAD)),true) |
| 164 | LOCAL_CFLAGS += -DAPE_OFFLOAD_ENABLED |
| 165 | LOCAL_CFLAGS += -DCOMPRESS_METADATA_NEEDED |
| 166 | endif |
| 167 | |
| 168 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_DEV_ARBI)),true) |
| 169 | LOCAL_CFLAGS += -DDEV_ARBI_ENABLED |
| 170 | LOCAL_SRC_FILES += audio_extn/dev_arbi.c |
| 171 | endif |
| 172 | |
| 173 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_RECORD_PLAY_CONCURRENCY)),true) |
| 174 | LOCAL_CFLAGS += -DRECORD_PLAY_CONCURRENCY |
| 175 | endif |
| 176 | |
| 177 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_ACDB_LICENSE)), true) |
| 178 | LOCAL_CFLAGS += -DDOLBY_ACDB_LICENSE |
| 179 | endif |
| 180 | |
| 181 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_DS2_DOLBY_DAP)),true) |
| 182 | LOCAL_CFLAGS += -DDS2_DOLBY_DAP_ENABLED |
| 183 | ifneq ($(strip $(DOLBY_DDP)),true) |
| 184 | ifneq ($(strip $(DOLBY_DAP)),true) |
| 185 | LOCAL_SRC_FILES += audio_extn/dolby.c |
| 186 | endif |
| 187 | endif |
| 188 | endif |
| 189 | |
| 190 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_SPLIT_A2DP)),true) |
| 191 | LOCAL_CFLAGS += -DSPLIT_A2DP_ENABLED |
| 192 | LOCAL_SRC_FILES += audio_extn/a2dp.c |
| 193 | endif |
| 194 | |
| 195 | |
| 196 | LOCAL_SHARED_LIBRARIES := \ |
| 197 | liblog \ |
| 198 | libcutils \ |
| 199 | libtinyalsa \ |
| 200 | libtinycompress \ |
| 201 | libaudioroute \ |
| 202 | libdl \ |
| 203 | libhardware \ |
| 204 | libexpat |
| 205 | |
| 206 | LOCAL_C_INCLUDES += \ |
| 207 | external/tinyalsa/include \ |
| 208 | external/tinycompress/include \ |
| 209 | external/expat/lib \ |
| 210 | $(call include-path-for, audio-route) \ |
| 211 | $(call include-path-for, audio-effects) \ |
| 212 | $(LOCAL_PATH)/$(AUDIO_PLATFORM) \ |
| 213 | $(LOCAL_PATH)/audio_extn \ |
| 214 | $(LOCAL_PATH)/voice_extn |
| 215 | |
| 216 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_LISTEN)),true) |
| 217 | LOCAL_CFLAGS += -DAUDIO_LISTEN_ENABLED |
| 218 | LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio/audio-listen |
| 219 | LOCAL_SRC_FILES += audio_extn/listen.c |
| 220 | endif |
| 221 | |
| 222 | ifeq ($(strip $(BOARD_SUPPORTS_SOUND_TRIGGER)),true) |
| 223 | LOCAL_CFLAGS += -DSOUND_TRIGGER_ENABLED |
| 224 | LOCAL_CFLAGS += -DSOUND_TRIGGER_PLATFORM_NAME=$(TARGET_BOARD_PLATFORM) |
| 225 | LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio/sound_trigger |
| 226 | LOCAL_SRC_FILES += audio_extn/soundtrigger.c |
| 227 | endif |
| 228 | |
| 229 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_AUXPCM_BT)),true) |
| 230 | LOCAL_CFLAGS += -DAUXPCM_BT_ENABLED |
| 231 | endif |
| 232 | |
| 233 | ifeq ($(strip $(AUDIO_FEATURE_ENABLED_PM_SUPPORT)),true) |
| 234 | LOCAL_CFLAGS += -DPM_SUPPORT_ENABLED |
| 235 | LOCAL_SRC_FILES += audio_extn/pm.c |
| 236 | LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/libperipheralclient/inc |
| 237 | LOCAL_SHARED_LIBRARIES += libperipheral_client |
| 238 | endif |
| 239 | |
| 240 | LOCAL_COPY_HEADERS_TO := mm-audio |
| 241 | LOCAL_COPY_HEADERS := audio_extn/audio_defs.h |
| 242 | |
| 243 | LOCAL_MODULE := audio.primary.$(TARGET_BOARD_PLATFORM) |
| 244 | |
| 245 | LOCAL_MODULE_RELATIVE_PATH := hw |
| 246 | |
| 247 | LOCAL_MODULE_TAGS := optional |
| 248 | |
| 249 | include $(BUILD_SHARED_LIBRARY) |
| 250 | |
| 251 | endif |