PATCH: Remove ${SHELL} from convdata/tst-tables.sh/iconvdata/tst-table.sh

H.J. Lu hjl.tools@gmail.com
Fri Oct 26 12:35:00 GMT 2012


On Fri, Oct 26, 2012 at 5:09 AM, Andreas Schwab <schwab@linux-m68k.org> wrote:
> "H.J. Lu" <hjl.tools@gmail.com> writes:
>
>> diff --git a/config.make.in b/config.make.in
>> index c22acf4..8cfd30e 100644
>> --- a/config.make.in
>> +++ b/config.make.in
>> @@ -133,6 +133,7 @@ MSGFMT = @MSGFMT@
>>  # Script execution tools.
>>  BASH = @BASH_SHELL@
>>  KSH = @KSH@
>> +SHELL = @SHELL@
>
> Note that this will disable make's internal comand line parsing if
> @SHELL@ isn't exactly /bin/sh, which may cause some build performance
> regression.
>
> Andreas.
>

I took a closer look on why ${SHELL} was used in the
first place:

http://sourceware.org/ml/libc-alpha/2000-10/msg00183.html

It is used to work around the execute permission issue when
patching new script.  It is no longer the issue now.  I'd like
to revert it since it causes the problem:

make  subdir=iconvdata -C iconvdata ..=../ tests
make[2]: Entering directory `/export/gnu/import/git/sources/glibc/iconvdata'
/bin/sh tst-tables.sh /export/build/gnu/glibc/build-x86_64-linux/
/export/build/gnu/glibc/build-x86_64-linux/iconvdata/ \
	' /export/build/gnu/glibc/build-x86_64-linux/elf/ld-linux-x86-64.so.2
--library-path /export/build/gnu/glibc/build-x86_64-linux:/export/build/gnu/glibc/build-x86_64-linux/math:/export/build/gnu/glibc/build-x86_64-linux/elf:/export/build/gnu/glibc/build-x86_64-linux/dlfcn:/export/build/gnu/glibc/build-x86_64-linux/nss:/export/build/gnu/glibc/build-x86_64-linux/nis:/export/build/gnu/glibc/build-x86_64-linux/rt:/export/build/gnu/glibc/build-x86_64-linux/resolv:/export/build/gnu/glibc/build-x86_64-linux/crypt:/export/build/gnu/glibc/build-x86_64-linux/nptl'
> /export/build/gnu/glibc/build-x86_64-linux/iconvdata/tst-tables.out
Testing ASCIItst-table.sh:63: no such file or directory:
/export/build/gnu/glibc/build-x86_64-linux/elf/ld-linux-x86-64.so.2
--library-path /export/build/gnu/glibc/build-x86_64-linux:/export/build/gnu/glibc/build-x86_64-linux/math:/export/build/gnu/glibc/build-x86_64-linux/elf:/export/build/gnu/glibc/build-x86_64-linux/dlfcn:/export/build/gnu/glibc/build-x86_64-linux/nss:/export/build/gnu/glibc/build-x86_64-linux/nis:/export/build/gnu/glibc/build-x86_64-linux/rt:/export/build/gnu/glibc/build-x86_64-linux/resolv:/export/build/gnu/glibc/build-x86_64-linux/crypt:/export/build/gnu/glibc/build-x86_64-linux/nptl
 *** FAILED ***
make[2]: *** [/export/build/gnu/glibc/build-x86_64-linux/iconvdata/tst-tables.out]
Error 1
make[2]: Leaving directory `/export/gnu/import/git/sources/glibc/iconvdata'
make[1]: *** [iconvdata/tests] Error 2
make[1]: Leaving directory `/export/gnu/import/git/sources/glibc'
make: *** [check] Error 2

when SHELL is /bin/zsh.  Tested on x86-64.  OK to install?

Thanks.

-- 
H.J.
--
	*  iconvdata/tst-table.sh: Remove ${SHELL}.
	*  iconvdata/tst-tables.sh: Likewise.

---
diff --git a/iconvdata/tst-table.sh b/iconvdata/tst-table.sh
index 14ab196..5283ad5 100755
--- a/iconvdata/tst-table.sh
+++ b/iconvdata/tst-table.sh
@@ -35,7 +35,7 @@ export LC_ALL
 set -e

 # Get the charmap.
-${SHELL} tst-table-charmap.sh ${charmap:-$charset} \
+./tst-table-charmap.sh ${charmap:-$charset} \
   < ../localedata/charmaps/${charmap:-$charset} \
   > ${objpfx}tst-${charset}.charmap.table
 # When the charset is GB18030, truncate this table because for this encodi=
ng,
diff --git a/iconvdata/tst-tables.sh b/iconvdata/tst-tables.sh
index eaf84dc..77d9d18 100755
--- a/iconvdata/tst-tables.sh
+++ b/iconvdata/tst-tables.sh
@@ -262,7 +262,7 @@ while read charset charmap; do
   if test "$charset" =3D GB18030; then echo "This might take a while" 1>&2=
; fi
   case ${charset} in \#*) continue;; esac
   echo -n "Testing ${charset}" 1>&2
-  if ${SHELL} tst-table.sh ${common_objpfx} ${objpfx} "${run_program_prefi=
x}" \
+  if ./tst-table.sh ${common_objpfx} ${objpfx} "${run_program_prefix}" \
       ${charset} ${charmap} < /dev/null; then
     echo 1>&2
   else



More information about the Libc-alpha mailing list