From 21b6020b8bf501ead8ac9f1326b61242bfeca1da Mon Sep 17 00:00:00 2001 From: P. J. McDermott Date: Tue, 25 Jun 2013 13:06:57 -0400 Subject: Fix "bad substitution" in make-syscalls.sh. --- diff --git a/patches/08_fix-bad-substitution.patch b/patches/08_fix-bad-substitution.patch new file mode 100644 index 0000000..11acb00 --- /dev/null +++ b/patches/08_fix-bad-substitution.patch @@ -0,0 +1,27 @@ +From: "P. J. McDermott" +Description: Fix "bad substitution" errors in shell script + make-syscalls.sh uses GNU Bash's "${parameter/pattern/string}" parameter + expansion. Non-Bash shells (e.g. BusyBox ash built with CONFIG_ASH_BASH_COMPAT + disabled) don't support this syntax: + . + for dir in [...]; do \ + test -f $dir/syscalls.list && \ + { sysdirs='[...]' \ + asm_CPP='gcc -c -I[...] -D_LIBC_REENTRANT -include include/libc-symbols.h -DASSEMBLER -g -Wa,--noexecstack -E -x assembler-with-cpp' \ + /bin/sh sysdeps/unix/make-syscalls.sh $dir || exit 1; }; \ + test $dir = sysdeps/unix && break; \ + done > /usr/src/eglibc_2.17~r22751+sip1-1/tmp/libcbuild/sysd-syscallsT + sysdeps/unix/make-syscalls.sh: line 273: syntax error: bad substitution + +diff -Naur src.orig/libc/sysdeps/unix/make-syscalls.sh src/libc/sysdeps/unix/make-syscalls.sh +--- src.orig/libc/sysdeps/unix/make-syscalls.sh 2012-12-02 16:11:45.000000000 -0500 ++++ src/libc/sysdeps/unix/make-syscalls.sh 2013-06-25 12:01:55.178740324 -0400 +@@ -279,7 +279,7 @@ + # name in the vDSO and KERNEL_X.Y is its symbol version. + vdso_symbol="${vdso_syscall%@*}" + vdso_symver="${vdso_syscall#*@}" +- vdso_symver="${vdso_symver//./_}" ++ vdso_symver=`echo $vdso_symver | sed 's/\./_/g'` + echo "\ + \$(foreach p,\$(sysd-rules-targets),\$(objpfx)\$(patsubst %,\$p,$file).os): \\ + \$(..)sysdeps/unix/make-syscalls.sh\ -- cgit v0.9.1