From: Masamichi Hosoda Date: Fri, 16 Dec 2016 11:57:58 +0000 (+0900) Subject: Issue 5013: Fix scripts for environments where "set -ux" carries over X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=d73ef0f31f2e154633da4a763b9a20a13b920ca2;p=lilypond.git Issue 5013: Fix scripts for environments where "set -ux" carries over Normally, in Bourne shell scripts, "set -ux" does not carry over to child processes. However, under some conditions, it carries over to child processes. (E.g. environment variable SHELLOPTS exists.) If "set -ux" in smart-autogen.sh carries over to the child processes, autoconf fails. In order to avoid the issue, this commit makes smart-autogen.sh and smart-configure.sh use "set +ux" to cancel the effect of "set -ux" just before invoking the child process. Likewise, this commit also removes "set -e" for avoiding "set -e" carrying over, and adds alternative error handling. --- diff --git a/smart-autogen.sh b/smart-autogen.sh index 6f4525dac1..77412123cc 100755 --- a/smart-autogen.sh +++ b/smart-autogen.sh @@ -11,6 +11,5 @@ if test `cat $CHECKSUM_FILE`"" = "$AUTOGEN_INPUT_CHECKSUM"; then exit 0 fi -set -e -${srcdir}/autogen.sh "$@" +( set +ux; echo Invoking autogen.sh...; ${srcdir}/autogen.sh "$@" ) || exit 1 printf "%s" $AUTOGEN_INPUT_CHECKSUM > $CHECKSUM_FILE diff --git a/smart-configure.sh b/smart-configure.sh index d55947f08c..8ba39eb7dc 100755 --- a/smart-configure.sh +++ b/smart-configure.sh @@ -14,7 +14,6 @@ if test `cat $CONFIGURE_CHECKSUM_FILE` = "$CONFIGURE_CHECKSUM" ; then exit 0 fi -set -e -$srcdir/configure "$@" +( set +ux; echo Invoking configure...; $srcdir/configure "$@" ) || exit 1 printf "%s" $CONFIGURE_CHECKSUM > $CONFIGURE_CHECKSUM_FILE