When I emerged world, I got this error: -- Configuring for PREFIX=/usr Configuring for DATADIR=/usr/share Configuring for MANDIR=/usr/share/man checking for gcc ./configure: 151: Syntax error: Bad substitution !!! ERROR: sys-apps/kbd-1.12-r8 failed. Call stack: ebuild.sh, line 1546: Called dyn_compile ebuild.sh, line 937: Called src_compile kbd-1.12-r8.ebuild, line 93: Called die -- Line 151 of configure reads: echo "ARCH=${TARGET_ARCH/i?86/i386}" >> make_include but line 1 reads #!/bin/sh Line 151 appears to depend upon bash functionality in /bin/sh. For many users this poses no problem, but where /bin/sh is a symlink to ash (say) this caused the ebuild to fail. Having discussed this on gentoo.user it seems that the consensus of opinion was that either the configure script should avoid non-vanilla Bourne shell features, or it should request bash (or some other appropriate shell) explicitly in the she-bang line. The latter appears to be a quick and easy fix that would avoid this kind of difficulty.
for future reference, changing /bin/sh to be something other than /bin/bash is not supported ... you are correct here that the expression ${VAR/foo/bar} is not POSIX, so i've fixed it in cvs
(In reply to comment #1) > for future reference, changing /bin/sh to be something other than /bin/bash is > not supported ... I can't argue with that... I can't even remember exactly why my /bin/sh was ash. I've changed it back now for an easy life. :-) > you are correct here that the expression ${VAR/foo/bar} is not POSIX, so i've > fixed it in cvs Fantastic - that's at least an academic improvement. :-)