Bash as requirement, and how to launch configure

Magnus Ihse Bursie magnus.ihse.bursie at oracle.com
Thu Sep 20 04:54:38 PDT 2012


Since nobody objected to making bash a requirement, I went ahead and 
fixed that. Now the configure script contains explicit bash style code, 
and will only run properly under bash.

Hence, if you are used to doing the following pattern (or similar):
    cd common/autoconf
    sh ./configure
it might not work, if "sh" on your system is not an alias for "bash".

If that is the case (e.g. on Ubuntu/Debian machines which uses dash as 
sh), one way to cope with this is to call bash explicitely:
    cd common/autoconf
    bash ./configure

Another way is to call the newly added "configure" script at the root of 
the forest (I finally went ahead and created this! :-)). This is a thin 
wrapper which will call the real script at common/autoconf/configure, 
using bash (regardless of what shell you used to call it). Going 
forward, this is likely to be the way most people will access the 
configure script.

One visible effect of these changes is that quoting and whitespace in 
arguments to configure is now properly preserved. (Previously we had a 
special hack to protect --with-extra-c[xx]flags, which was deemed as 
most likely to have arguments with space.)

/Magnus




More information about the build-infra-dev mailing list