From 801f286dfdf898213a4c6c21eadad55767be6a9c Mon Sep 17 00:00:00 2001 From: Arun Raghavan Date: Tue, 17 Jul 2012 13:08:20 +0530 Subject: [PATCH] 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++. --- src/Makefile.am | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/Makefile.am b/src/Makefile.am index 4f6bd4f..65b2743 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1838,10 +1838,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 -- 2.7.4