blob: 7b3d1cfa87a0f19649e01d9908cc8fd27ef49f57 [file] [log] [blame]
Quinn Male2e883752019-03-22 11:28:54 -07001ifeq ($(strip $(BOARD_SUPPORTS_OPENSOURCE_STHAL)),true)
2
3LOCAL_PATH := $(call my-dir)
4
5include $(CLEAR_VARS)
6
7LOCAL_CFLAGS += -DSOUND_TRIGGER_PLATFORM=$(TARGET_BOARD_PLATFORM)
8
9# _ANDROID_ is needed by GCS, it uses this flag to determine the struct packing keyword per OS.
10# Ideally we should not need this as GCS should be able to
11# determine from copmiler flags
12LOCAL_CFLAGS += -D_ANDROID_
13
14LOCAL_CFLAGS += -Wall -Werror
15
16LOCAL_SRC_FILES := \
17 sound_trigger_hw.c \
18 sound_trigger_platform.c \
19 st_session.c \
20 st_hw_session_lsm.c \
21 st_hw_session_gcs.c \
22 st_hw_common.c \
23 st_buffering.c
24
25ifeq ($(strip $(BOARD_SUPPORTS_QSTHW_API)),true)
26 LOCAL_CFLAGS += -DST_EXTN_ENABLED
27 LOCAL_SRC_FILES += st_extn/st_hw_extn.c
28 LOCAL_SRC_FILES += st_extn/st_hw_extn_intf.c
29endif
30
31ifeq ($(strip $(SOUND_TRIGGER_FEATURE_LPMA_ENABLED)),true)
32 LOCAL_CFLAGS += -DST_LMPA_EXTN_ENABLED
33 LOCAL_SRC_FILES += st_extn/st_hw_lpma_extn.c
34endif
35
36ifeq ($(strip $(AUDIO_FEATURE_ENABLED_KEEP_ALIVE)),true)
37 LOCAL_CFLAGS += -DUSE_KEEP_ALIVE
38endif
39
40ifeq ($(strip $(AUDIO_FEATURE_ENABLED_SVA_MULTI_STAGE)),true)
41 LOCAL_CFLAGS += -DST_MULTI_STAGE_ENABLED
Quinn Maleef3e6722019-06-10 18:18:25 -070042 LOCAL_C_INCLUDES += $(LOCAL_PATH)/ext_headers
Quinn Male2e883752019-03-22 11:28:54 -070043 LOCAL_SRC_FILES += st_second_stage.c
44endif
45
46ifeq ($(call is-platform-sdk-version-at-least,29),true)
47 LOCAL_CFLAGS += -DST_SUPPORT_GET_MODEL_STATE
48endif
49
50ifeq ($(strip $(BOARD_SUPPORTS_SOUND_TRIGGER_CPU_AFFINITY_SET)),true)
51 LOCAL_CFLAGS += -DSOUND_TRIGGER_CPU_AFFINITY_SET -D_GNU_SOURCE
52endif
53
54ifeq ($(strip $(AUDIO_FEATURE_ENABLED_GCOV)),true)
55LOCAL_CFLAGS += --coverage -fprofile-arcs -ftest-coverage
56LOCAL_CPPFLAGS += --coverage -fprofile-arcs -ftest-coverage
57LOCAL_STATIC_LIBRARIES += libprofile_rt
58endif
59
60LOCAL_C_INCLUDES += \
61 external/tinyalsa/include \
62 external/expat/lib \
63 $(call include-path-for, audio-route) \
64 $(LOCAL_PATH)/st_extn
65ifeq ($(call is-platform-sdk-version-at-least,28),true) #Android P and above
66LOCAL_HEADER_LIBRARIES += libhardware_headers \
67 libsystem_headers
68endif
69
70LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio/graphite-client/gcs
71LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio/graphite-client/osal
72LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include
Vignesh Kulothungandd3a9732020-01-08 14:29:13 -080073LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include/audio
Quinn Male2e883752019-03-22 11:28:54 -070074LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/techpack/audio/include
75LOCAL_ADDITIONAL_DEPENDENCIES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr
76ifeq ($(strip $(AUDIO_FEATURE_ENABLED_DLKM)),true)
77 LOCAL_HEADER_LIBRARIES += audio_kernel_headers
78 LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/vendor/qcom/opensource/audio-kernel/include
79endif
80
81LOCAL_SHARED_LIBRARIES := \
82 liblog \
83 libcutils \
84 libtinyalsa \
85 libaudioroute \
86 libdl \
87 libexpat \
88 libhardware_legacy
89
90LOCAL_MODULE := sound_trigger.primary.$(TARGET_BOARD_PLATFORM)
91LOCAL_MODULE_RELATIVE_PATH := hw
92LOCAL_MODULE_OWNER := qti
93LOCAL_MODULE_TAGS := optional
94LOCAL_VENDOR_MODULE := true
95LOCAL_MULTILIB := $(AUDIOSERVER_MULTILIB)
96
97LOCAL_COPY_HEADERS_TO := mm-audio/sound_trigger
98LOCAL_COPY_HEADERS := sound_trigger_prop_intf.h
99
100include $(BUILD_SHARED_LIBRARY)
101
102#
103# to build sound_trigger_test executable
104# uncomment the lines below
105#
106#include $(CLEAR_VARS)
107#
108#LOCAL_SRC_FILES := sound_trigger_test.c
109#LOCAL_C_INCLUDES += \
110# system/core/include \
111# hardware/libhardware/include
112#
113#LOCAL_SHARED_LIBRARIES := \
114# libcutils \
115# libhardware
116#
117#LOCAL_MODULE := sound_trigger_test
118#LOCAL_MODULE_OWNER := qti
119#LOCAL_MODULE_TAGS := optional
120#LOCAL_32_BIT_ONLY := true
121#LOCAL_VENDOR_MODULE := true
122#
123#include $(BUILD_EXECUTABLE)
124
125endif