Skip to contentSkip to conversation

package/alsa-utils: alsamixer optionally depends on gettext

PATCH New Bernd Kuhls 2 participants 2 messages Oct 19, 2014 – Oct 26, 2014

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 package/alsa-utils: alsamixer optionally depends on gettext

To get a reproducable build add optional gettext dependency.

- Configure log without gettext

checking for GNU gettext in libc... no checking for iconv... yes
checking for working iconv... guessing yes checking for GNU gettext in libintl... no checking whether to use NLS... no

- Configure log with gettext built before alsa-utils

checking for GNU gettext in libc... no
checking for iconv... yes
checking for working iconv... guessing yes
checking for GNU gettext in libintl... yes
checking whether to use NLS... yes
checking where the gettext function comes from... external libintl checking how to link with libintl... -lintl

Tested using this defconfig

BR2_TOOLCHAIN_BUILDROOT_LARGEFILE=y BR2_TOOLCHAIN_BUILDROOT_INET_IPV6=y BR2_TOOLCHAIN_BUILDROOT_INET_RPC=y BR2_TOOLCHAIN_BUILDROOT_LOCALE=y BR2_PACKAGE_ALSA_UTILS=y BR2_PACKAGE_ALSA_UTILS_ALSACONF=y BR2_PACKAGE_ALSA_UTILS_AMIDI=y BR2_PACKAGE_ALSA_UTILS_AMIXER=y BR2_PACKAGE_ALSA_UTILS_APLAY=y BR2_PACKAGE_ALSA_UTILS_IECSET=y BR2_PACKAGE_ALSA_UTILS_ACONNECT=y BR2_PACKAGE_ALSA_UTILS_APLAYMIDI=y BR2_PACKAGE_ALSA_UTILS_ARECORDMIDI=y BR2_PACKAGE_ALSA_UTILS_ASEQDUMP=y BR2_PACKAGE_ALSA_UTILS_ASEQNET=y BR2_PACKAGE_ALSA_UTILS_SPEAKER_TEST=y BR2_PACKAGE_NCURSES_WCHAR=y

---
 package/alsa-utils/Config.in     |    1 +
 package/alsa-utils/alsa-utils.mk |    6 +++++-
 2 files changed, 6 insertions(+), 1 deletion(-)
package/alsa-utils/Config.in +1 -0
index 58ecf51..e932014 100644
@@ -26,6 +26,7 @@ config BR2_PACKAGE_ALSA_UTILS_ALSACTL
 
 config BR2_PACKAGE_ALSA_UTILS_ALSAMIXER
 	bool "alsamixer"
+	select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE
 	select BR2_PACKAGE_NCURSES
 	select BR2_PACKAGE_NCURSES_TARGET_PANEL
 	select BR2_PACKAGE_NCURSES_TARGET_FORM
package/alsa-utils/alsa-utils.mk +5 -1
index 5eba337..d42d06f 100644
@@ -20,7 +20,11 @@ ALSA_UTILS_CONF_OPTS = \
 	--disable-xmlto \
 	--with-curses=$(if $(BR2_PACKAGE_NCURSES_WCHAR),ncursesw,ncurses)
 
-ifneq ($(BR2_PACKAGE_ALSA_UTILS_ALSAMIXER),y)
+ifeq ($(BR2_PACKAGE_ALSA_UTILS_ALSAMIXER),y)
+ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y)
+ALSA_UTILS_DEPENDENCIES += gettext
+endif
+else
 ALSA_UTILS_CONF_OPTS += --disable-alsamixer --disable-alsatest
 endif
 
Signature · 1 line
1.7.10.4
#1 lore raw

PATCH 1/1 package/alsa-utils: alsamixer optionally depends on gettext

Dear Bernd Kuhls,

Quoted 40 lines · Bernd Kuhls

To get a reproducable build add optional gettext dependency.

- Configure log without gettext

checking for GNU gettext in libc... no checking for iconv... yes
checking for working iconv... guessing yes checking for GNU gettext in libintl... no checking whether to use NLS... no

- Configure log with gettext built before alsa-utils

checking for GNU gettext in libc... no
checking for iconv... yes
checking for working iconv... guessing yes
checking for GNU gettext in libintl... yes
checking whether to use NLS... yes
checking where the gettext function comes from... external libintl checking how to link with libintl... -lintl

Tested using this defconfig

BR2_TOOLCHAIN_BUILDROOT_LARGEFILE=y BR2_TOOLCHAIN_BUILDROOT_INET_IPV6=y BR2_TOOLCHAIN_BUILDROOT_INET_RPC=y BR2_TOOLCHAIN_BUILDROOT_LOCALE=y BR2_PACKAGE_ALSA_UTILS=y BR2_PACKAGE_ALSA_UTILS_ALSACONF=y BR2_PACKAGE_ALSA_UTILS_AMIDI=y BR2_PACKAGE_ALSA_UTILS_AMIXER=y BR2_PACKAGE_ALSA_UTILS_APLAY=y BR2_PACKAGE_ALSA_UTILS_IECSET=y BR2_PACKAGE_ALSA_UTILS_ACONNECT=y BR2_PACKAGE_ALSA_UTILS_APLAYMIDI=y BR2_PACKAGE_ALSA_UTILS_ARECORDMIDI=y BR2_PACKAGE_ALSA_UTILS_ASEQDUMP=y BR2_PACKAGE_ALSA_UTILS_ASEQNET=y BR2_PACKAGE_ALSA_UTILS_SPEAKER_TEST=y BR2_PACKAGE_NCURSES_WCHAR=y

Quoted 5 lines
---
 package/alsa-utils/Config.in     |    1 +
 package/alsa-utils/alsa-utils.mk |    6 +++++-
 2 files changed, 6 insertions(+), 1 deletion(-)

I've applied this, but I've done some changes because I didn't agree with your solution:

[Thomas:
- it's not only alsamixer, but also several other alsa-utils utilities, like aplay or arecord, which optionally depend on gettext. Therefore, the patch was changed to have the optional gettext dependency apply to the entire package.
- in addition, we don't need gettext when locales are enabled:
alsa-utils builds perfectly fine with a toolchain having locales enabled even without gettext. So all we really want is to have gettext built before alsa-utils, if gettext is enabled.]

Of course, if you disagree, do not hesitate to comment.

Thanks a lot!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com