[pulseaudio-discuss] [PATCH] build-sys: Stop using symdef headers for modules

Tanu Kaskinen tanuk at iki.fi
Sat Dec 9 07:49:08 UTC 2017


On Thu, 2017-12-07 at 05:39 +0530, Arun Raghavan wrote:
> This removes the symdef header generation m4 magic in favour of a
> simpler macro method, allowing us to skip one unnecessary build step
> while moving to meson, and removing an 11 year old todo!
> ---
>  src/.gitignore                                    |   1 -
>  src/Makefile.am                                   | 271 ++++++++--------------
>  src/modules/alsa/module-alsa-card.c               |   1 -
>  src/modules/alsa/module-alsa-sink.c               |   1 -
>  src/modules/alsa/module-alsa-source.c             |   1 -
>  src/modules/bluetooth/module-bluetooth-discover.c |   2 -
>  src/modules/bluetooth/module-bluetooth-policy.c   |   2 -
>  src/modules/bluetooth/module-bluez4-device.c      |   1 -
>  src/modules/bluetooth/module-bluez4-discover.c    |   1 -
>  src/modules/bluetooth/module-bluez5-device.c      |   2 -
>  src/modules/bluetooth/module-bluez5-discover.c    |   2 -
>  src/modules/dbus/module-dbus-protocol.c           |   2 -
>  src/modules/echo-cancel/module-echo-cancel.c      |   2 -
>  src/modules/gconf/module-gconf.c                  |   2 -
>  src/modules/jack/module-jack-sink.c               |   2 -
>  src/modules/jack/module-jack-source.c             |   2 -
>  src/modules/jack/module-jackdbus-detect.c         |   2 -
>  src/modules/macosx/module-bonjour-publish.c       |   2 -
>  src/modules/macosx/module-coreaudio-detect.c      |   2 -
>  src/modules/macosx/module-coreaudio-device.c      |   2 -
>  src/modules/module-allow-passthrough.c            |   2 -
>  src/modules/module-always-sink.c                  |   2 -
>  src/modules/module-always-source.c                |   2 -
>  src/modules/module-augment-properties.c           |   2 -
>  src/modules/module-card-restore.c                 |   2 -
>  src/modules/module-cli.c                          |   2 -
>  src/modules/module-combine-sink.c                 |   2 -
>  src/modules/module-combine.c                      |   2 -
>  src/modules/module-console-kit.c                  |   2 -
>  src/modules/module-default-device-restore.c       |   2 -
>  src/modules/module-defs.h.m4                      |  35 ---
>  src/modules/module-detect.c                       |   2 -
>  src/modules/module-device-manager.c               |   2 -
>  src/modules/module-device-restore.c               |   2 -
>  src/modules/module-equalizer-sink.c               |   2 -
>  src/modules/module-esound-compat-spawnfd.c        |   2 -
>  src/modules/module-esound-compat-spawnpid.c       |   2 -
>  src/modules/module-esound-sink.c                  |   2 -
>  src/modules/module-filter-apply.c                 |   2 -
>  src/modules/module-filter-heuristics.c            |   2 -
>  src/modules/module-hal-detect-compat.c            |   2 -
>  src/modules/module-intended-roles.c               |   2 -
>  src/modules/module-ladspa-sink.c                  |   1 -
>  src/modules/module-lirc.c                         |   2 -
>  src/modules/module-loopback.c                     |   2 -
>  src/modules/module-match.c                        |   2 -
>  src/modules/module-mmkbd-evdev.c                  |   2 -
>  src/modules/module-native-protocol-fd.c           |   2 -
>  src/modules/module-null-sink.c                    |   2 -
>  src/modules/module-null-source.c                  |   2 -
>  src/modules/module-pipe-sink.c                    |   2 -
>  src/modules/module-pipe-source.c                  |   2 -
>  src/modules/module-position-event-sounds.c        |   2 -
>  src/modules/module-protocol-stub.c                |  30 ---
>  src/modules/module-remap-sink.c                   |   2 -
>  src/modules/module-remap-source.c                 |   2 -
>  src/modules/module-rescue-streams.c               |   2 -
>  src/modules/module-role-cork.c                    |   2 -
>  src/modules/module-role-ducking.c                 |   2 -
>  src/modules/module-rygel-media-server.c           |   2 -
>  src/modules/module-sine-source.c                  |   2 -
>  src/modules/module-sine.c                         |   2 -
>  src/modules/module-solaris.c                      |   2 -
>  src/modules/module-stream-restore.c               |   2 -
>  src/modules/module-suspend-on-idle.c              |   2 -
>  src/modules/module-switch-on-connect.c            |   2 -
>  src/modules/module-switch-on-port-available.c     |   2 -
>  src/modules/module-systemd-login.c                |   2 -
>  src/modules/module-tunnel-sink-new.c              |   2 -
>  src/modules/module-tunnel-source-new.c            |   2 -
>  src/modules/module-tunnel.c                       |   6 -
>  src/modules/module-udev-detect.c                  |   2 -
>  src/modules/module-virtual-sink.c                 |   2 -
>  src/modules/module-virtual-source.c               |   2 -
>  src/modules/module-virtual-surround-sink.c        |   2 -
>  src/modules/module-volume-restore.c               |   2 -
>  src/modules/module-waveout.c                      |   2 -
>  src/modules/module-zeroconf-discover.c            |   2 -
>  src/modules/module-zeroconf-publish.c             |   2 -
>  src/modules/oss/module-oss.c                      |   1 -
>  src/modules/raop/module-raop-discover.c           |   1 -
>  src/modules/raop/module-raop-sink.c               |   2 -
>  src/modules/rtp/module-rtp-recv.c                 |   2 -
>  src/modules/rtp/module-rtp-send.c                 |   2 -
>  src/modules/x11/module-x11-bell.c                 |   2 -
>  src/modules/x11/module-x11-cork-request.c         |   2 -
>  src/modules/x11/module-x11-publish.c              |   2 -
>  src/modules/x11/module-x11-xsmp.c                 |   2 -
>  src/pulsecore/module.h                            |  29 +++
>  todo                                              |   1 -
>  90 files changed, 124 insertions(+), 407 deletions(-)
>  delete mode 100644 src/modules/module-defs.h.m4

> -
> -EXTRA_DIST += $(SYMDEF_FILES)
> -BUILT_SOURCES += $(SYMDEF_FILES) builddirs
> -
> -$(SYMDEF_FILES): modules/module-defs.h.m4
> -	$(AM_V_at)$(MKDIR_P) modules
> -	$(AM_V_GEN)$(M4) -Dfname="$@" $< > $@
> -
>  .PHONY: builddirs
>  builddirs:
>  	$(AM_V_at)$(MKDIR_P) daemon modules

If you remove builddirs from BUILT_SOURCES, you can also remove the
builddirs target definition, because nothing is referencing it any
more.

However, is it safe to remove builddirs from BUILT_SOURCES? The
builddirs target creates the daemon and modules directories, which
already exist in the source tree, so it's obviously not needed when the
build directory is the same as the source directory, but maybe it's
needed when the build directory is different than the source directory?

>  if HAVE_ESOUND
>  module_esound_protocol_tcp_la_SOURCES = modules/module-protocol-stub.c
> -module_esound_protocol_tcp_la_CFLAGS = -DUSE_TCP_SOCKETS -DUSE_PROTOCOL_ESOUND $(AM_CFLAGS)
> +module_esound_protocol_tcp_la_CFLAGS = -DUSE_TCP_SOCKETS -DUSE_PROTOCOL_ESOUND $(AM_CFLAGS) -DPA_MODULE_NAME=module_esound_protocol_tcp
>  module_esound_protocol_tcp_la_LDFLAGS = $(MODULE_LDFLAGS)
>  module_esound_protocol_tcp_la_LIBADD = $(MODULE_LIBADD) libprotocol-esound.la
>  
>  module_esound_protocol_unix_la_SOURCES = modules/module-protocol-stub.c
> -module_esound_protocol_unix_la_CFLAGS = -DUSE_UNIX_SOCKETS -DUSE_PROTOCOL_ESOUND $(AM_CFLAGS)
> +module_esound_protocol_unix_la_CFLAGS = -DUSE_UNIX_SOCKETS -DUSE_PROTOCOL_ESOUND $(AM_CFLAGS) -DPA_MODULE_NAME=module_esound_protocol_uniix

uniix -> unix

-- 
Tanu

https://www.patreon.com/tanuk


More information about the pulseaudio-discuss mailing list