From c7f715639cee75a918636c4b532c4d32dbc80a1e Mon Sep 17 00:00:00 2001 From: Ulf Samuelsson Date: Thu, 22 Jan 2009 23:06:28 +0000 Subject: Add workarounds for alsa-utils --- .../alsa-utils/alsa-utils-1.0.18-acs_map.patch.arm | 29 ++++++++++++++++++++++ .../alsa-utils-1.0.18-acs_map.patch.avr32 | 29 ++++++++++++++++++++++ package/multimedia/alsa-utils/alsa-utils.mk | 5 +++- 3 files changed, 62 insertions(+), 1 deletion(-) create mode 100644 package/multimedia/alsa-utils/alsa-utils-1.0.18-acs_map.patch.arm create mode 100644 package/multimedia/alsa-utils/alsa-utils-1.0.18-acs_map.patch.avr32 diff --git a/package/multimedia/alsa-utils/alsa-utils-1.0.18-acs_map.patch.arm b/package/multimedia/alsa-utils/alsa-utils-1.0.18-acs_map.patch.arm new file mode 100644 index 000000000..e2103f850 --- /dev/null +++ b/package/multimedia/alsa-utils/alsa-utils-1.0.18-acs_map.patch.arm @@ -0,0 +1,29 @@ +When configuring alsa-utils, it will use the hosts +See: alsa-utils / alsamixer/.deps/alsamicer.Po +This will, on OpenSuSE 11.0, and possibly other distributions +result in that the preprocessor directive: +#define acs_map _nc_acs_map +which is present in the Buildroot build of ncurses, +is not executed, and the +extern acs_map[]; +declaration in the host ncurses will +result in an undefined symbol: acs_map. + +This patches give up trying to force alsa-utils to use the correct +ncurses, and just defines a byte with the needed symbol. + + +diff -urN alsa-utils-1.0.18-0rig//alsamixer/alsamixer.c alsa-utils-1.0.18/alsamixer/alsamixer.c +--- alsa-utils-1.0.18-0rig//alsamixer/alsamixer.c 2008-10-29 13:42:11.000000000 +0100 ++++ alsa-utils-1.0.18/alsamixer/alsamixer.c 2009-01-22 23:35:29.000000000 +0100 +@@ -115,6 +115,10 @@ + #include + + #include ++/* Ugly hack to get rid of undefined "acs_map" */ ++/* This is caused by configure using host ncurses.h */ ++/* instead of buildroot's ncurses.h */ ++unsigned long acs_map[1]; + + #ifndef CURSESINC + #include diff --git a/package/multimedia/alsa-utils/alsa-utils-1.0.18-acs_map.patch.avr32 b/package/multimedia/alsa-utils/alsa-utils-1.0.18-acs_map.patch.avr32 new file mode 100644 index 000000000..e2103f850 --- /dev/null +++ b/package/multimedia/alsa-utils/alsa-utils-1.0.18-acs_map.patch.avr32 @@ -0,0 +1,29 @@ +When configuring alsa-utils, it will use the hosts +See: alsa-utils / alsamixer/.deps/alsamicer.Po +This will, on OpenSuSE 11.0, and possibly other distributions +result in that the preprocessor directive: +#define acs_map _nc_acs_map +which is present in the Buildroot build of ncurses, +is not executed, and the +extern acs_map[]; +declaration in the host ncurses will +result in an undefined symbol: acs_map. + +This patches give up trying to force alsa-utils to use the correct +ncurses, and just defines a byte with the needed symbol. + + +diff -urN alsa-utils-1.0.18-0rig//alsamixer/alsamixer.c alsa-utils-1.0.18/alsamixer/alsamixer.c +--- alsa-utils-1.0.18-0rig//alsamixer/alsamixer.c 2008-10-29 13:42:11.000000000 +0100 ++++ alsa-utils-1.0.18/alsamixer/alsamixer.c 2009-01-22 23:35:29.000000000 +0100 +@@ -115,6 +115,10 @@ + #include + + #include ++/* Ugly hack to get rid of undefined "acs_map" */ ++/* This is caused by configure using host ncurses.h */ ++/* instead of buildroot's ncurses.h */ ++unsigned long acs_map[1]; + + #ifndef CURSESINC + #include diff --git a/package/multimedia/alsa-utils/alsa-utils.mk b/package/multimedia/alsa-utils/alsa-utils.mk index da04363f3..06c6f138b 100644 --- a/package/multimedia/alsa-utils/alsa-utils.mk +++ b/package/multimedia/alsa-utils/alsa-utils.mk @@ -16,7 +16,8 @@ $(DL_DIR)/$(ALSA_UTILS_SOURCE): $(ALSA_UTILS_DIR)/.unpacked: $(DL_DIR)/$(ALSA_UTILS_SOURCE) $(ALSA_UTILS_CAT) $(DL_DIR)/$(ALSA_UTILS_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - - toolchain/patch-kernel.sh $(ALSA_UTILS_DIR) package/multimedia/alsa-utils/ alsa-utils-$(ALSA_UTILS_VERSION)\*.patch\* + toolchain/patch-kernel.sh $(ALSA_UTILS_DIR) package/multimedia/alsa-utils/ alsa-utils-$(ALSA_UTILS_VERSION)\*.patch + toolchain/patch-kernel.sh $(ALSA_UTILS_DIR) package/multimedia/alsa-utils/ alsa-utils-$(ALSA_UTILS_VERSION)\*.patch.$(ARCH) $(CONFIG_UPDATE) $(ALSA_UTILS_DIR) touch $@ @@ -73,6 +74,8 @@ $(TARGET_DIR)/$(ALSA_UTILS_TARGET_BINARY): $(ALSA_UTILS_DIR)/$(ALSA_UTILS_BINARY alsa-utils: uclibc alsa-lib ncurses $(if $(BR2_PACKAGE_LIBINTL),libintl) $(if $(BR2_PACKAGE_LIBICONV),libiconv) $(TARGET_DIR)/$(ALSA_UTILS_TARGET_BINARY) +alsa-utils-unpacked: $(ALSA_UTILS_DIR)/.unpacked + alsa-utils-source: $(DL_DIR)/$(ALSA_UTILS_SOURCE) alsa-utils-clean: -- cgit v1.2.3