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++.
This commit is contained in:
Arun Raghavan 2012-07-17 13:08:20 +05:30
parent ee619d98a3
commit 7af7c98756

View file

@ -1834,10 +1834,17 @@ if HAVE_SPEEX
module_echo_cancel_la_SOURCES += modules/echo-cancel/speex.c module_echo_cancel_la_SOURCES += modules/echo-cancel/speex.c
endif endif
if HAVE_WEBRTC 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_CFLAGS += -DHAVE_WEBRTC=1
module_echo_cancel_la_CXXFLAGS = $(AM_CXXFLAGS) $(SERVER_CFLAGS) $(WEBRTC_CFLAGS) -DHAVE_WEBRTC=1 module_echo_cancel_la_LIBADD += libwebrtc-util.la
module_echo_cancel_la_LIBADD += $(WEBRTC_LIBS)
endif endif
# RTP modules # RTP modules