From: Carlos Santos Date: Tue, 3 Dec 2019 00:14:05 +0000 (-0300) Subject: package/glibc: drop dependency of utilities on bash X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=862cda57e5e2110a432e9c7592d2f258913223fb;p=buildroot.git package/glibc: drop dependency of utilities on bash The dependency was added because ldd uses bash-specific syntax to localize messages. Add a post-patch hook, instead, to replace the occurrences of $"foo" by "foo", simply, so the code becomes POSIX sh compliant if bash is not selected. Also set the configuration environment accordingly to replace the /bin/bash hashbang by /bin/sh. Signed-off-by: Carlos Santos Signed-off-by: Thomas Petazzoni --- diff --git a/package/glibc/Config.in b/package/glibc/Config.in index b8c2573d96..7b2f246947 100644 --- a/package/glibc/Config.in +++ b/package/glibc/Config.in @@ -11,10 +11,6 @@ endif config BR2_PACKAGE_GLIBC_UTILS bool "Install glibc utilities" - depends on BR2_PACKAGE_BASH help Enabling this option will compile and install the getconf, ldconfig, ldd and locale glibc utilities for the target. - -comment "glibc utilities need bash" - depends on !BR2_PACKAGE_BASH diff --git a/package/glibc/glibc.mk b/package/glibc/glibc.mk index 8eafa55ae1..1b38f8aedb 100644 --- a/package/glibc/glibc.mk +++ b/package/glibc/glibc.mk @@ -74,10 +74,19 @@ endef endif GLIBC_CONF_ENV = \ - ac_cv_path_BASH_SHELL=/bin/bash \ + ac_cv_path_BASH_SHELL=/bin/$(if $(BR2_PACKAGE_BASH),bash,sh) \ libc_cv_forced_unwind=yes \ libc_cv_ssp=no +# POSIX shell does not support localization, so remove the corresponding +# syntax from ldd if bash is not selected. +ifeq ($(BR2_PACKAGE_BASH),) +define GLIBC_LDD_NO_BASH + $(SED) 's/$$"/"/g' $(@D)/elf/ldd.bash.in +endef +GLIBC_POST_PATCH_HOOKS += GLIBC_LDD_NO_BASH +endif + # Override the default library locations of /lib64/ and # /usr/lib64// for RISC-V. ifeq ($(BR2_riscv),y)