diff options
author | Gunnar Beutner <gbeutner@serenityos.org> | 2021-05-27 08:02:57 +0200 |
---|---|---|
committer | Linus Groh <mail@linusgroh.de> | 2021-05-27 08:58:37 +0100 |
commit | afbab621aa94f91476de99f922328b4d71b3d7a7 (patch) | |
tree | adc36240e676615c2705458fca0e252f55d88c1f /Toolchain | |
parent | 3ea256b1c60b7b9cb951a86f85efc6bd07400811 (diff) | |
download | serenity-afbab621aa94f91476de99f922328b4d71b3d7a7.zip |
Toolchain: Use set -o pipefail to the toolchain build script
Previously the buildstep function would obscure error codes because
the return value of the function was the exit code for the sed command
which caused us to continue execution even though one of the build
steps had failed.
With set -o pipefail the return value of the buildstep function is
the real command's exit code.
Diffstat (limited to 'Toolchain')
-rwxr-xr-x | Toolchain/BuildIt.sh | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/Toolchain/BuildIt.sh b/Toolchain/BuildIt.sh index 90a86f3373..376bafca21 100755 --- a/Toolchain/BuildIt.sh +++ b/Toolchain/BuildIt.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -set -e +set -eo pipefail # This file will need to be run in bash, for now. @@ -137,18 +137,24 @@ popd # === DOWNLOAD AND PATCH === pushd "$DIR/Tarballs" - md5="$($MD5SUM $BINUTILS_PKG | cut -f1 -d' ')" - echo "bu md5='$md5'" - if [ ! -e $BINUTILS_PKG ] || [ "$md5" != ${BINUTILS_MD5SUM} ] ; then + md5="" + if [ -e "$BINUTILS_PKG" ]; then + md5="$($MD5SUM $BINUTILS_PKG | cut -f1 -d' ')" + echo "bu md5='$md5'" + fi + if [ "$md5" != ${BINUTILS_MD5SUM} ] ; then rm -f $BINUTILS_PKG curl -LO "$BINUTILS_BASE_URL/$BINUTILS_PKG" else echo "Skipped downloading binutils" fi - md5="$($MD5SUM ${GCC_PKG} | cut -f1 -d' ')" - echo "gc md5='$md5'" - if [ ! -e $GCC_PKG ] || [ "$md5" != ${GCC_MD5SUM} ] ; then + md5="" + if [ -e "$GCC_PKG" ]; then + md5="$($MD5SUM ${GCC_PKG} | cut -f1 -d' ')" + echo "gc md5='$md5'" + fi + if [ "$md5" != ${GCC_MD5SUM} ] ; then rm -f $GCC_PKG curl -LO "$GCC_BASE_URL/$GCC_NAME/$GCC_PKG" else |