On some platforms it makes sense to limit the available PCM modules to
the really required ones (application specific) or useful ones (hardware
specific). This change enables the user to select specific modules which
will be later on present in the run-time system.

To be backward compatible, the default keyword 'all' will still build all
available PCM modules. The list of available PCM modules is part of the
package's 'configure' help text.

Signed-off-by: Juergen Borleis <j...@pengutronix.de>
---
 rules/alsa-lib.in   | 13 +++++++++++++
 rules/alsa-lib.make |  8 ++++++--
 2 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/rules/alsa-lib.in b/rules/alsa-lib.in
index adba896ac..edc40e186 100644
--- a/rules/alsa-lib.in
+++ b/rules/alsa-lib.in
@@ -47,6 +47,19 @@ config ALSA_LIB_PCM
        help
          Disable the PCM component if you do not need it
 
+config ALSA_LIB_PCM_MODULES
+       depends on ALSA_LIB_PCM
+       string
+       prompt "pcm modules"
+       default "all"
+       help
+         You can use the keyword 'all' here for all supported PCM modules or a
+         comma separated list of required module keywords. The list of module
+         keywords is:
+           copy linear route mulaw alaw adpcm rate plug multi shm file null
+           empty share meter hooks lfloat ladspa dmix dshare dsnoop asym
+           iec958 softvol extplug ioplug mmap_emul
+
 config ALSA_LIB_RAWMIDI
        bool
        default y
diff --git a/rules/alsa-lib.make b/rules/alsa-lib.make
index 3dac61ea5..227a4156e 100644
--- a/rules/alsa-lib.make
+++ b/rules/alsa-lib.make
@@ -62,8 +62,12 @@ ALSA_LIB_CONF_OPT    := \
        --with-pthread \
        --with-librt \
        --with-alsa-devdir=/dev/snd \
-       --with-aload-devdir=/dev \
-       --with-pcm-plugins=all
+       --with-aload-devdir=/dev
+
+ifdef PTXCONF_ALSA_LIB_PCM
+ALSA_LIB_CONF_OPT += \
+       --with-pcm-plugins=$(PTXCONF_ALSA_LIB_PCM_MODULES)
+endif
 
 # ----------------------------------------------------------------------------
 # Target-Install
-- 
2.11.0


_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de

Reply via email to