Remove all usage of @BASH@ or ${BASH} in installed files, and hardcode /bin/bash...
authorRomain GEISSLER <romain.geissler@amadeus.com>
Wed, 12 May 2021 02:15:33 +0000 (07:45 +0530)
committerSiddhesh Poyarekar <siddhesh@sourceware.org>
Wed, 12 May 2021 02:17:11 +0000 (07:47 +0530)
(FYI, this is a repost of
https://sourceware.org/pipermail/libc-alpha/2019-July/105035.html now
that FSF papers have been signed and confirmed on FSF side).

This trivial patch attemps to fix BZ 24106. Basically the bash locally
used when building glibc on the host shall not leak on the installed
glibc, as the system where it is installed might be different and use
another bash location.

So I have looked for all occurences of @BASH@ or $(BASH) in installed
files, and replaced it by /bin/bash. This was suggested by Florian
Weimer in the bug report.

Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
debug/Makefile
debug/xtrace.sh
elf/Makefile
elf/ldd.bash.in
elf/sotruss.sh
malloc/Makefile
malloc/memusage.sh
timezone/Makefile

index 3f66666..6893111 100644 (file)
@@ -216,8 +216,7 @@ $(objpfx)pcprofiledump: $(objpfx)pcprofiledump.o
 
 $(objpfx)xtrace: xtrace.sh
        rm -f $@.new
-       sed -e 's|@BASH@|$(BASH)|' -e 's|@VERSION@|$(version)|' \
-           -e 's|@SLIBDIR@|$(sLIBdir)|' -e 's|@BINDIR@|$(bindir)|' \
-           -e 's|@PKGVERSION@|$(PKGVERSION)|' \
+       sed -e 's|@VERSION@|$(version)|' -e 's|@SLIBDIR@|$(sLIBdir)|' \
+           -e 's|@BINDIR@|$(bindir)|' -e 's|@PKGVERSION@|$(PKGVERSION)|' \
            -e 's|@REPORT_BUGS_TO@|$(REPORT_BUGS_TO)|' $^ > $@.new \
        && rm -f $@ && mv $@.new $@ && chmod +x $@
index 279fe59..9697fbe 100755 (executable)
@@ -1,4 +1,4 @@
-#! @BASH@
+#!/bin/bash
 # Copyright (C) 1999-2021 Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
 # Contributed by Ulrich Drepper <drepper@gnu.org>, 1999.
index 3241cb6..4e148e5 100644 (file)
@@ -144,8 +144,7 @@ $(objpfx)sotruss-lib.so: $(common-objpfx)libc.so $(objpfx)ld.so \
        $(common-objpfx)libc_nonshared.a
 
 $(objpfx)sotruss: sotruss.sh $(common-objpfx)config.make
-       sed -e 's%@BASH@%$(BASH)%g' \
-           -e 's%@VERSION@%$(version)%g' \
+       sed -e 's%@VERSION@%$(version)%g' \
            -e 's%@TEXTDOMAINDIR@%$(localedir)%g' \
            -e 's%@PREFIX@%$(prefix)%g' \
            -e 's|@PKGVERSION@|$(PKGVERSION)|g' \
@@ -654,7 +653,6 @@ ldd-rewrite = -e 's%@RTLD@%$(rtlddir)/$(rtld-installed-name)%g' \
              -e 's%@VERSION@%$(version)%g' \
              -e 's|@PKGVERSION@|$(PKGVERSION)|g' \
              -e 's|@REPORT_BUGS_TO@|$(REPORT_BUGS_TO)|g' \
-             -e 's%@BASH@%$(BASH)%g' \
              -e 's%@TEXTDOMAINDIR@%$(localedir)%g'
 
 ifeq ($(ldd-rewrite-script),no)
index 57442bc..ba73646 100644 (file)
@@ -1,4 +1,4 @@
-#! @BASH@
+#!/bin/bash
 # Copyright (C) 1996-2021 Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
 
index fd4da80..003cf4d 100755 (executable)
@@ -1,4 +1,4 @@
-#! @BASH@
+#!/bin/bash
 # Copyright (C) 2011-2021 Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
 
index 641967c..afcd296 100644 (file)
@@ -238,9 +238,8 @@ $(objpfx)mtrace: mtrace.pl
 
 $(objpfx)memusage: memusage.sh
        rm -f $@.new
-       sed -e 's|@BASH@|$(BASH)|' -e 's|@VERSION@|$(version)|' \
-           -e 's|@SLIBDIR@|$(sLIBdir)|' -e 's|@BINDIR@|$(bindir)|' \
-           -e 's|@PKGVERSION@|$(PKGVERSION)|' \
+       sed -e 's|@VERSION@|$(version)|' -e 's|@SLIBDIR@|$(sLIBdir)|' \
+           -e 's|@BINDIR@|$(bindir)|' -e 's|@PKGVERSION@|$(PKGVERSION)|' \
            -e 's|@REPORT_BUGS_TO@|$(REPORT_BUGS_TO)|' $^ > $@.new \
        && rm -f $@ && mv $@.new $@ && chmod +x $@
 
index c1cd4e2..0645f09 100755 (executable)
@@ -1,4 +1,4 @@
-#! @BASH@
+#!/bin/bash
 # Copyright (C) 1999-2021 Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
 # Contributed by Ulrich Drepper <drepper@gnu.org>, 1999.
index 395abfe..c624a18 100644 (file)
@@ -123,8 +123,7 @@ $(testdata)/XT%: testdata/XT%
        cp $< $@
 
 $(objpfx)tzselect: tzselect.ksh $(common-objpfx)config.make
-       sed -e 's|/bin/bash|$(BASH)|' \
-           -e 's|TZDIR=[^}]*|TZDIR=$(zonedir)|' \
+       sed -e 's|TZDIR=[^}]*|TZDIR=$(zonedir)|' \
            -e '/TZVERSION=/s|see_Makefile|"$(version)"|' \
            -e '/PKGVERSION=/s|=.*|="$(PKGVERSION)"|' \
            -e '/REPORT_BUGS_TO=/s|=.*|="$(REPORT_BUGS_TO)"|' \