hal: Add feature flag for daemon support
Use DAEMON_SUPPORT_AUTO flag in hal to call client
libraries of acdb-loader and audio-hal-plugin daemons.
Change-Id: I77a2bb325fdd2441860b0b27f2632414837e64de
diff --git a/hal/Android.mk b/hal/Android.mk
index 42f26bf..4cc91a2 100644
--- a/hal/Android.mk
+++ b/hal/Android.mk
@@ -126,6 +126,10 @@
LOCAL_CFLAGS += -DPLATFORM_AUTO
endif
+ifeq ($(strip $(AUDIO_FEATURE_ENABLED_DAEMON_SUPPORT)), true)
+ LOCAL_CFLAGS += -DDAEMON_SUPPORT_AUTO
+endif
+
LOCAL_CFLAGS += -Wno-macro-redefined
LOCAL_HEADER_LIBRARIES := libhardware_headers
diff --git a/hal/acdb.h b/hal/acdb.h
index 10a78d3..e1ab942 100644
--- a/hal/acdb.h
+++ b/hal/acdb.h
@@ -24,7 +24,13 @@
#include <linux/msm_audio_calibration.h>
#define MAX_CVD_VERSION_STRING_SIZE 100
+
+#ifdef DAEMON_SUPPORT_AUTO
+#define LIB_ACDB_LOADER "libacdbloaderclient.so"
+#else
#define LIB_ACDB_LOADER "libacdbloader.so"
+#endif
+
#define CVD_VERSION_MIXER_CTL "CVD Version"
#define ACDB_METAINFO_KEY_MODULE_NAME_LEN 100
diff --git a/hal/audio_extn/Android.mk b/hal/audio_extn/Android.mk
index eaf8926..4c1b5ef 100644
--- a/hal/audio_extn/Android.mk
+++ b/hal/audio_extn/Android.mk
@@ -493,6 +493,10 @@
-Wno-unused-function \
-Wno-unused-variable
+ifeq ($(strip $(AUDIO_FEATURE_ENABLED_DAEMON_SUPPORT)), true)
+ LOCAL_CFLAGS += -DDAEMON_SUPPORT_AUTO
+endif
+
LOCAL_SHARED_LIBRARIES := \
libaudioroute \
libaudioutils \
diff --git a/hal/audio_extn/ext_hw_plugin.c b/hal/audio_extn/ext_hw_plugin.c
index 5c78caa..141e7d2 100644
--- a/hal/audio_extn/ext_hw_plugin.c
+++ b/hal/audio_extn/ext_hw_plugin.c
@@ -62,7 +62,11 @@
};
/* This can be defined in platform specific file or use compile flag */
+#ifdef DAEMON_SUPPORT_AUTO
+#define LIB_PLUGIN_DRIVER "libaudiohalpluginclient.so"
+#else
#define LIB_PLUGIN_DRIVER "libaudiohalplugin.so"
+#endif
void* ext_hw_plugin_init(struct audio_device *adev, ext_hw_plugin_init_config_t init_config)
{
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index 7ff3873..0ad24ac 100644
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -100,7 +100,12 @@
#define TOSTRING_(x) #x
#define TOSTRING(x) TOSTRING_(x)
+#ifdef DAEMON_SUPPORT_AUTO
+#define LIB_ACDB_LOADER "libacdbloaderclient.so"
+#else
#define LIB_ACDB_LOADER "libacdbloader.so"
+#endif
+
#define CVD_VERSION_MIXER_CTL "CVD Version"
#define FLAC_COMPRESS_OFFLOAD_FRAGMENT_SIZE (256 * 1024)