From d6cdd80b0dce599df95ce3dba032bf074b75e1da Mon Sep 17 00:00:00 2001 From: Maarten Bosmans Date: Tue, 25 Jan 2011 11:01:46 +0100 Subject: build: Generate module symdefs in src/modules directory This will make it possible to remove the empty Makefile.am files. - module-...-symdef.h files are all generated in src/modules, instead of in the subdir of the module. - The default inclusion of src/modules subdirs in AM_CFLAGS can be removed, where necessary (raop) the subdir is included in the specific CFLAGS. - The src/daemon and src/modules directories are always created on make, to facilitate out of tree builds. - AM silent rules are used for the generation of symdef files by m4. - For echo-cancel, keep the build dir include for now (and mkdir it) although limit it to just the echo-cancel module's CFLAGS (Colin Guthrie) --- src/Makefile.am | 192 ++++++++++++++++++++++++++------------------------------ 1 file changed, 88 insertions(+), 104 deletions(-) diff --git a/src/Makefile.am b/src/Makefile.am index f67b2f68..ae9b1496 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -51,29 +51,8 @@ endif AM_CFLAGS = \ -I$(top_srcdir)/src \ - -I$(top_builddir)/src \ -I$(top_srcdir)/src/modules \ -I$(top_builddir)/src/modules \ - -I$(top_srcdir)/src/modules/rtp \ - -I$(top_builddir)/src/modules/rtp \ - -I$(top_srcdir)/src/modules/gconf \ - -I$(top_builddir)/src/modules/gconf \ - -I$(top_srcdir)/src/modules/bluetooth \ - -I$(top_builddir)/src/modules/bluetooth \ - -I$(top_srcdir)/src/modules/oss \ - -I$(top_builddir)/src/modules/oss \ - -I$(top_srcdir)/src/modules/alsa \ - -I$(top_builddir)/src/modules/alsa \ - -I$(top_srcdir)/src/modules/raop \ - -I$(top_builddir)/src/modules/raop \ - -I$(top_srcdir)/src/modules/x11 \ - -I$(top_builddir)/src/modules/x11 \ - -I$(top_srcdir)/src/modules/jack \ - -I$(top_builddir)/src/modules/jack \ - -I$(top_srcdir)/src/modules/dbus \ - -I$(top_builddir)/src/modules/dbus \ - -I$(top_srcdir)/src/modules/echo-cancel \ - -I$(top_builddir)/src/modules/echo-cancel \ $(PTHREAD_CFLAGS) -D_POSIX_PTHREAD_SEMANTICS \ $(LIBSAMPLERATE_CFLAGS) \ $(LIBSNDFILE_CFLAGS) \ @@ -983,7 +962,7 @@ librtp_la_LIBADD = $(AM_LIBADD) libpulsecore-@PA_MAJORMINOR@.la libpulsecommon-@ libraop_la_SOURCES = \ modules/raop/raop_client.c modules/raop/raop_client.h \ modules/raop/base64.c modules/raop/base64.h -libraop_la_CFLAGS = $(AM_CFLAGS) $(OPENSSL_CFLAGS) +libraop_la_CFLAGS = $(AM_CFLAGS) $(OPENSSL_CFLAGS) -I$(top_srcdir)/src/modules/rtp libraop_la_LDFLAGS = -avoid-version libraop_la_LIBADD = $(AM_LIBADD) $(OPENSSL_LIBS) libpulsecore-@PA_MAJORMINOR@.la librtp.la libpulsecommon-@PA_MAJORMINOR@.la libpulse.la @@ -1242,91 +1221,95 @@ endif # These are generated by an M4 script SYMDEF_FILES = \ - modules/module-cli-symdef.h \ - modules/module-cli-protocol-tcp-symdef.h \ - modules/module-cli-protocol-unix-symdef.h \ - modules/module-pipe-sink-symdef.h \ - modules/module-pipe-source-symdef.h \ - modules/module-simple-protocol-tcp-symdef.h \ - modules/module-simple-protocol-unix-symdef.h \ - modules/module-esound-protocol-tcp-symdef.h \ - modules/module-esound-protocol-unix-symdef.h \ - modules/module-native-protocol-tcp-symdef.h \ - modules/module-native-protocol-unix-symdef.h \ - modules/module-native-protocol-fd-symdef.h \ - modules/module-sine-symdef.h \ - modules/module-combine-symdef.h \ - modules/module-remap-sink-symdef.h \ - modules/module-ladspa-sink-symdef.h \ - modules/module-equalizer-sink-symdef.h \ - modules/module-esound-compat-spawnfd-symdef.h \ - modules/module-esound-compat-spawnpid-symdef.h \ - modules/module-match-symdef.h \ - modules/module-tunnel-sink-symdef.h \ - modules/module-tunnel-source-symdef.h \ - modules/module-null-sink-symdef.h \ - modules/module-sine-source-symdef.h \ - modules/module-esound-sink-symdef.h \ - modules/module-zeroconf-publish-symdef.h \ - modules/module-zeroconf-discover-symdef.h \ - modules/module-bonjour-publish-symdef.h \ - modules/module-lirc-symdef.h \ - modules/module-mmkbd-evdev-symdef.h \ - modules/module-http-protocol-tcp-symdef.h \ - modules/module-http-protocol-unix-symdef.h \ - modules/module-rygel-media-server-symdef.h \ - modules/x11/module-x11-bell-symdef.h \ - modules/x11/module-x11-publish-symdef.h \ - modules/x11/module-x11-xsmp-symdef.h \ - modules/x11/module-x11-cork-request-symdef.h \ - modules/oss/module-oss-symdef.h \ - modules/alsa/module-alsa-sink-symdef.h \ - modules/alsa/module-alsa-source-symdef.h \ - modules/alsa/module-alsa-card-symdef.h \ - modules/coreaudio/module-coreaudio-detect-symdef.h \ - modules/coreaudio/module-coreaudio-device-symdef.h \ - modules/module-solaris-symdef.h \ - modules/module-waveout-symdef.h \ - modules/module-detect-symdef.h \ - modules/rtp/module-rtp-send-symdef.h \ - modules/rtp/module-rtp-recv-symdef.h \ - modules/jack/module-jackdbus-detect-symdef.h \ - modules/jack/module-jack-sink-symdef.h \ - modules/jack/module-jack-source-symdef.h \ - modules/module-volume-restore-symdef.h \ - modules/module-device-manager-symdef.h \ - modules/module-device-restore-symdef.h \ - modules/module-stream-restore-symdef.h \ - modules/module-card-restore-symdef.h \ - modules/module-default-device-restore-symdef.h \ - modules/module-always-sink-symdef.h \ - modules/module-rescue-streams-symdef.h \ - modules/module-intended-roles-symdef.h \ - modules/module-suspend-on-idle-symdef.h \ - modules/echo-cancel/module-echo-cancel-symdef.h \ - modules/module-hal-detect-symdef.h \ - modules/module-udev-detect-symdef.h \ - modules/bluetooth/module-bluetooth-proximity-symdef.h \ - modules/bluetooth/module-bluetooth-discover-symdef.h \ - modules/bluetooth/module-bluetooth-device-symdef.h \ - modules/raop/module-raop-sink-symdef.h \ - modules/raop/module-raop-discover-symdef.h \ - modules/gconf/module-gconf-symdef.h \ - modules/module-position-event-sounds-symdef.h \ - modules/module-augment-properties-symdef.h \ - modules/module-cork-music-on-phone-symdef.h \ - modules/module-console-kit-symdef.h \ - modules/dbus/module-dbus-protocol-symdef.h \ - modules/module-loopback-symdef.h \ - modules/module-virtual-sink-symdef.h \ - modules/module-virtual-source-symdef.h + module-cli-symdef.h \ + module-cli-protocol-tcp-symdef.h \ + module-cli-protocol-unix-symdef.h \ + module-pipe-sink-symdef.h \ + module-pipe-source-symdef.h \ + module-simple-protocol-tcp-symdef.h \ + module-simple-protocol-unix-symdef.h \ + module-esound-protocol-tcp-symdef.h \ + module-esound-protocol-unix-symdef.h \ + module-native-protocol-tcp-symdef.h \ + module-native-protocol-unix-symdef.h \ + module-native-protocol-fd-symdef.h \ + module-sine-symdef.h \ + module-combine-symdef.h \ + module-remap-sink-symdef.h \ + module-ladspa-sink-symdef.h \ + module-equalizer-sink-symdef.h \ + module-esound-compat-spawnfd-symdef.h \ + module-esound-compat-spawnpid-symdef.h \ + module-match-symdef.h \ + module-tunnel-sink-symdef.h \ + module-tunnel-source-symdef.h \ + module-null-sink-symdef.h \ + module-sine-source-symdef.h \ + module-esound-sink-symdef.h \ + module-zeroconf-publish-symdef.h \ + module-zeroconf-discover-symdef.h \ + module-bonjour-publish-symdef.h \ + module-lirc-symdef.h \ + module-mmkbd-evdev-symdef.h \ + module-http-protocol-tcp-symdef.h \ + module-http-protocol-unix-symdef.h \ + module-rygel-media-server-symdef.h \ + module-x11-bell-symdef.h \ + module-x11-publish-symdef.h \ + module-x11-xsmp-symdef.h \ + module-x11-cork-request-symdef.h \ + module-oss-symdef.h \ + module-alsa-sink-symdef.h \ + module-alsa-source-symdef.h \ + module-alsa-card-symdef.h \ + module-coreaudio-detect-symdef.h \ + module-coreaudio-device-symdef.h \ + module-solaris-symdef.h \ + module-waveout-symdef.h \ + module-detect-symdef.h \ + module-rtp-send-symdef.h \ + module-rtp-recv-symdef.h \ + module-jackdbus-detect-symdef.h \ + module-jack-sink-symdef.h \ + module-jack-source-symdef.h \ + module-volume-restore-symdef.h \ + module-device-manager-symdef.h \ + module-device-restore-symdef.h \ + module-stream-restore-symdef.h \ + module-card-restore-symdef.h \ + module-default-device-restore-symdef.h \ + module-always-sink-symdef.h \ + module-rescue-streams-symdef.h \ + module-intended-roles-symdef.h \ + module-suspend-on-idle-symdef.h \ + module-echo-cancel-symdef.h \ + module-hal-detect-symdef.h \ + module-udev-detect-symdef.h \ + module-bluetooth-proximity-symdef.h \ + module-bluetooth-discover-symdef.h \ + module-bluetooth-device-symdef.h \ + module-raop-sink-symdef.h \ + module-raop-discover-symdef.h \ + module-gconf-symdef.h \ + module-position-event-sounds-symdef.h \ + module-augment-properties-symdef.h \ + module-cork-music-on-phone-symdef.h \ + module-console-kit-symdef.h \ + module-dbus-protocol-symdef.h \ + module-loopback-symdef.h \ + module-virtual-sink-symdef.h \ + module-virtual-source-symdef.h EXTRA_DIST += $(SYMDEF_FILES) -BUILT_SOURCES += $(SYMDEF_FILES) +BUILT_SOURCES += $(SYMDEF_FILES) builddirs $(SYMDEF_FILES): modules/module-defs.h.m4 - $(MKDIR_P) $(dir $@) - $(M4) -Dfname="$@" $< > $@ + $(AM_V_at)$(MKDIR_P) modules + $(AM_V_GEN)$(M4) -Dfname="$@" $< > $@ + +.PHONY: builddirs +builddirs: + $(AM_V_at)$(MKDIR_P) daemon modules src/modules/echo-cancel # Simple protocol @@ -1729,7 +1712,7 @@ module_echo_cancel_la_SOURCES = modules/echo-cancel/module-echo-cancel.c modules nodist_module_echo_cancel_la_SOURCES = $(ORC_NODIST_SOURCES) module_echo_cancel_la_LDFLAGS = $(MODULE_LDFLAGS) module_echo_cancel_la_LIBADD = $(MODULE_LIBADD) $(LIBSPEEX_LIBS) $(ORC_LIBS) -module_echo_cancel_la_CFLAGS = $(AM_CFLAGS) $(LIBSPEEX_CFLAGS) $(ORC_CFLAGS) +module_echo_cancel_la_CFLAGS = $(AM_CFLAGS) $(LIBSPEEX_CFLAGS) $(ORC_CFLAGS) -I$(top_builddir)/src/modules/echo-cancel # RTP modules module_rtp_send_la_SOURCES = modules/rtp/module-rtp-send.c @@ -1834,6 +1817,7 @@ module_bluetooth_device_la_CFLAGS = $(AM_CFLAGS) $(DBUS_CFLAGS) module_raop_sink_la_SOURCES = modules/raop/module-raop-sink.c module_raop_sink_la_LDFLAGS = $(MODULE_LDFLAGS) module_raop_sink_la_LIBADD = $(MODULE_LIBADD) librtp.la libraop.la +module_raop_sink_la_CFLAGS = $(AM_CFLAGS) -I$(top_srcdir)/src/modules/rtp module_raop_discover_la_SOURCES = modules/raop/module-raop-discover.c module_raop_discover_la_LDFLAGS = $(MODULE_LDFLAGS) -- cgit