summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArun Raghavan <arun.raghavan@collabora.co.uk>2012-07-17 13:08:20 +0530
committerArun Raghavan <arun.raghavan@collabora.co.uk>2012-07-18 12:17:50 +0530
commit7af7c98756902a32f988c00de8c1aac18c1e79eb (patch)
tree8b639da26328fa608ccd2107021e801d39d08e05
parentee619d98a3bbfe53f81e9dc4b510dba5be6f1d3b (diff)
build: Avoid libstdc++ dep for module-echo-cancel if possible
This moves out the webrtc bits into a small helper library to shield the rest of module-echo-cancel from being linked with a C++ linker. This is required because automake will _always_ link module-echo-cancel in C++ mode if any of its deps (even conditional ones) are in C++.
-rw-r--r--src/Makefile.am13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index 4d27fbba..187e0307 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1834,10 +1834,17 @@ if HAVE_SPEEX
module_echo_cancel_la_SOURCES += modules/echo-cancel/speex.c
endif
if HAVE_WEBRTC
-module_echo_cancel_la_SOURCES += modules/echo-cancel/webrtc.cc
+# The webrtc code is split off into a helper library to avoid having automake
+# link module-echo-cancel with C++ (which it does if there are any C++ deps,
+# even conditional ones).
+modlibexec_LTLIBRARIES += libwebrtc-util.la
+
+libwebrtc_util_la_SOURCES = modules/echo-cancel/webrtc.cc
+libwebrtc_util_la_CXXFLAGS = $(AM_CXXFLAGS) $(SERVER_CFLAGS) $(WEBRTC_CFLAGS) -DHAVE_WEBRTC=1
+libwebrtc_util_la_LIBADD = $(WEBRTC_LIBS)
+
module_echo_cancel_la_CFLAGS += -DHAVE_WEBRTC=1
-module_echo_cancel_la_CXXFLAGS = $(AM_CXXFLAGS) $(SERVER_CFLAGS) $(WEBRTC_CFLAGS) -DHAVE_WEBRTC=1
-module_echo_cancel_la_LIBADD += $(WEBRTC_LIBS)
+module_echo_cancel_la_LIBADD += libwebrtc-util.la
endif
# RTP modules