summaryrefslogtreecommitdiff
path: root/package/multimedia/alsa-lib
diff options
context:
space:
mode:
Diffstat (limited to 'package/multimedia/alsa-lib')
-rw-r--r--package/multimedia/alsa-lib/Config.in51
-rw-r--r--package/multimedia/alsa-lib/alsa-lib-1.0.18-fix-off_t-in-kernel-struct.patch30
-rw-r--r--package/multimedia/alsa-lib/alsa-lib.mk40
3 files changed, 90 insertions, 31 deletions
diff --git a/package/multimedia/alsa-lib/Config.in b/package/multimedia/alsa-lib/Config.in
index 78a22d042..84629e66a 100644
--- a/package/multimedia/alsa-lib/Config.in
+++ b/package/multimedia/alsa-lib/Config.in
@@ -16,3 +16,54 @@ config BR2_PACKAGE_ALSA_LIB_PYTHON
in the target directory
http://www.alsa-project.org/
+if BR2_PACKAGE_ALSA_LIB
+menu "ALSA lib selection"
+
+config BR2_PACKAGE_ALSA_LIB_DEVDIR
+ string "directory with ALSA device files"
+ default "/dev/snd"
+
+config BR2_PACKAGE_ALSA_LIB_PCM_PLUGINS
+ string "built PCM plugins"
+ default "all"
+
+config BR2_PACKAGE_ALSA_LIB_CTL_PLUGINS
+ string "built control plugins"
+ default "all"
+
+config BR2_PACKAGE_ALSA_LIB_ALOAD
+ bool "aload"
+ default y
+
+config BR2_PACKAGE_ALSA_LIB_MIXER
+ bool "mixer"
+ default y
+
+config BR2_PACKAGE_ALSA_LIB_PCM
+ bool "pcm"
+ default y
+
+config BR2_PACKAGE_ALSA_LIB_RAWMIDI
+ bool "rawmidi"
+ default y
+
+config BR2_PACKAGE_ALSA_LIB_HWDEP
+ bool "hwdep"
+ default y
+
+config BR2_PACKAGE_ALSA_LIB_SEQ
+ bool "seq"
+ default y
+
+config BR2_PACKAGE_ALSA_LIB_ALISP
+ bool "alisp"
+ default y
+
+config BR2_PACKAGE_ALSA_LIB_OLD_SYMBOLS
+ bool "old-symbols"
+ default y
+
+endmenu
+
+endif
+
diff --git a/package/multimedia/alsa-lib/alsa-lib-1.0.18-fix-off_t-in-kernel-struct.patch b/package/multimedia/alsa-lib/alsa-lib-1.0.18-fix-off_t-in-kernel-struct.patch
deleted file mode 100644
index 7dfde9498..000000000
--- a/package/multimedia/alsa-lib/alsa-lib-1.0.18-fix-off_t-in-kernel-struct.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From c821f2e7f2534ece24a10402df3f501536a09cbd Mon Sep 17 00:00:00 2001
-From: Takashi Iwai <tiwai@suse.de>
-Date: Wed, 28 Jan 2009 15:00:35 +0100
-Subject: [PATCH] Fix off_t in kernel struct
-
-The off_t in kernel struct (for ioctls) is actually different from the
-definition of user-space off_t. The kernel off_t is equial with long
-while user-space off_t depends on the large-file support.
-
-Signed-off-by: Takashi Iwai <tiwai@suse.de>
----
- include/sound/asound.h | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/include/sound/asound.h b/include/sound/asound.h
-index 977b2d6..62d1e57 100644
---- a/include/sound/asound.h
-+++ b/include/sound/asound.h
-@@ -402,7 +402,7 @@ struct sndrv_pcm_sw_params {
-
- struct sndrv_pcm_channel_info {
- unsigned int channel;
-- off_t offset; /* mmap offset */
-+ long offset; /* mmap offset */
- unsigned int first; /* offset to first sample in bits */
- unsigned int step; /* samples distance in bits */
- };
---
-1.5.6.5
-
diff --git a/package/multimedia/alsa-lib/alsa-lib.mk b/package/multimedia/alsa-lib/alsa-lib.mk
index 517021d1b..1f120c6f7 100644
--- a/package/multimedia/alsa-lib/alsa-lib.mk
+++ b/package/multimedia/alsa-lib/alsa-lib.mk
@@ -3,7 +3,7 @@
# alsa-lib
#
#############################################################
-ALSA_LIB_VERSION = 1.0.18
+ALSA_LIB_VERSION = 1.0.22
ALSA_LIB_SOURCE = alsa-lib-$(ALSA_LIB_VERSION).tar.bz2
ALSA_LIB_SITE = ftp://ftp.alsa-project.org/pub/lib
ALSA_LIB_INSTALL_STAGING = YES
@@ -13,8 +13,36 @@ ALSA_LIB_CFLAGS=$(TARGET_CFLAGS)
ALSA_LIB_CONF_OPT = --enable-shared \
--enable-static \
+ --with-alsa-devdir=$(call qstrip,$(BR2_PACKAGE_ALSA_LIB_DEVDIR)) \
+ --with-pcm-plugins="$(call qstrip,$(BR2_PACKAGE_ALSA_LIB_PCM_PLUGINS))" \
+ --with-ctl-plugins="$(call qstrip,$(BR2_PACKAGE_ALSA_LIB_CTL_PLUGINS))" \
--without-versioned
+ifneq ($(BR2_PACKAGE_ALSA_LIB_ALOAD),y)
+ALSA_LIB_CONF_OPT += --disable-aload
+endif
+ifneq ($(BR2_PACKAGE_ALSA_LIB_MIXER),y)
+ALSA_LIB_CONF_OPT += --disable-mixer
+endif
+ifneq ($(BR2_PACKAGE_ALSA_LIB_PCM),y)
+ALSA_LIB_CONF_OPT += --disable-pcm
+endif
+ifneq ($(BR2_PACKAGE_ALSA_LIB_RAWMIDI),y)
+ALSA_LIB_CONF_OPT += --disable-rawmidi
+endif
+ifneq ($(BR2_PACKAGE_ALSA_LIB_HWDEP),y)
+ALSA_LIB_CONF_OPT += --disable-hwdep
+endif
+ifneq ($(BR2_PACKAGE_ALSA_LIB_SEQ),y)
+ALSA_LIB_CONF_OPT += --disable-seq
+endif
+ifneq ($(BR2_PACKAGE_ALSA_LIB_ALISP),y)
+ALSA_LIB_CONF_OPT += --disable-alisp
+endif
+ifneq ($(BR2_PACKAGE_ALSA_LIB_OLD_SYMBOLS),y)
+ALSA_LIB_CONF_OPT += --disable-old-symbols
+endif
+
ifeq ($(BR2_ENABLE_DEBUG),y)
# install-exec doesn't install the config files
ALSA_LIB_INSTALL_TARGET_OPT = DESTDIR=$(TARGET_DIR) install
@@ -44,3 +72,13 @@ ALSA_LIB_USE_CONFIG_CACHE = NO
$(eval $(call AUTOTARGETS,package/multimedia,alsa-lib))
+$(ALSA_LIB_TARGET_UNINSTALL):
+ -rm -f $(TARGET_DIR)/usr/lib/libasound.so*
+ -rm -rf $(TARGET_DIR)/usr/lib/alsa-lib
+ -rm -rf $(TARGET_DIR)/usr/share/alsa
+
+$(ALSA_LIB_TARGET_CLEAN):
+ -rm -f $(STAGING_DIR)/usr/lib/libasound.*
+ -rm -rf $(STAGING_DIR)/usr/lib/alsa-lib
+ -rm -rf $(STAGING_DIR)/usr/share/alsa
+