[Android] compile.sh: refactor checkfail
Simon Latapie
git at videolan.org
Wed Aug 21 13:01:57 CEST 2019
vlc-android | branch: master | Simon Latapie <garf at videolan.org> | Fri Jul 26 17:56:39 2019 +0200| [9a7eeebabd25a411ddf4fc34ed09f8da40af9a9f] | committer: Jean-Baptiste Kempf
compile.sh: refactor checkfail
checkfail function cannot work with `set -e` at the beginning of the
script: every command that will return != 0 will stop the script.
This commit replaces checkfail with a || fail "..." function (to keep
error explanations)
> https://code.videolan.org/videolan/vlc-android/commit/9a7eeebabd25a411ddf4fc34ed09f8da40af9a9f
---
compile.sh | 33 ++++++++++++---------------------
1 file changed, 12 insertions(+), 21 deletions(-)
diff --git a/compile.sh b/compile.sh
index 2eaa4e0cb..4f88ce59a 100755
--- a/compile.sh
+++ b/compile.sh
@@ -10,12 +10,10 @@ diagnostic()
echo "$@" 1>&2;
}
-checkfail()
+fail()
{
- if [ ! $? -eq 0 ];then
- diagnostic "$1"
- exit 1
- fi
+ diagnostic "$1"
+ exit 1
}
# Try to check whether a patch file has already been applied to the current directory tree
@@ -248,17 +246,13 @@ if [ ! -d "gradle/wrapper" ]; then
diagnostic "Downloading gradle"
GRADLE_VERSION=5.1.1
GRADLE_URL=https://download.videolan.org/pub/contrib/gradle/gradle-${GRADLE_VERSION}-bin.zip
- wget ${GRADLE_URL} 2>/dev/null || curl -O ${GRADLE_URL}
- checkfail "gradle: download failed"
+ wget ${GRADLE_URL} 2>/dev/null || curl -O ${GRADLE_URL} || fail "gradle: download failed"
- unzip -o gradle-${GRADLE_VERSION}-bin.zip
- checkfail "gradle: unzip failed"
+ unzip -o gradle-${GRADLE_VERSION}-bin.zip || fail "gradle: unzip failed"
- ./gradle-${GRADLE_VERSION}/bin/gradle wrapper
- checkfail "gradle: wrapper failed"
+ ./gradle-${GRADLE_VERSION}/bin/gradle wrapper || fail "gradle: wrapper failed"
- ./gradlew -version
- checkfail "gradle: wrapper failed"
+ ./gradlew -version || fail "gradle: wrapper failed"
chmod a+x gradlew
rm -rf gradle-${GRADLE_VERSION}-bin.zip
fi
@@ -274,16 +268,13 @@ TESTED_HASH=f3047d4
VLC_REPOSITORY=https://git.videolan.org/git/vlc/vlc-3.0.git
if [ ! -d "vlc" ]; then
diagnostic "VLC sources: not found, cloning"
- git clone "${VLC_REPOSITORY}" vlc
- checkfail "VLC sources: git clone failed"
+ git clone "${VLC_REPOSITORY}" vlc || fail "VLC sources: git clone failed"
cd vlc
diagnostic "VLC sources: resetting to the TESTED_HASH commit (${TESTED_HASH})"
- git reset --hard ${TESTED_HASH}
- checkfail "VLC sources: TESTED_HASH ${TESTED_HASH} not found"
+ git reset --hard ${TESTED_HASH} || fail "VLC sources: TESTED_HASH ${TESTED_HASH} not found"
diagnostic "VLC sources: applying custom patches"
# Keep Message-Id inside commits description to track them afterwards
- git am --message-id ../libvlc/patches/vlc3/*.patch
- checkfail "VLC sources: cannot apply custom patches"
+ git am --message-id ../libvlc/patches/vlc3/*.patch || fail "VLC sources: cannot apply custom patches"
cd ..
else
diagnostic "VLC source: found sources, leaving untouched"
@@ -294,8 +285,8 @@ else
diagnostic "VLC sources: Checking TESTED_HASH and patches presence"
diagnostic "NOTE: checks can be bypass by adding '-b' option to this script."
cd vlc
- git cat-file -e ${TESTED_HASH} 2> /dev/null
- checkfail "Error: Your vlc checkout does not contain the latest tested commit: ${TESTED_HASH}"
+ git cat-file -e ${TESTED_HASH} 2> /dev/null || \
+ fail "Error: Your vlc checkout does not contain the latest tested commit: ${TESTED_HASH}"
for patch_file in ../libvlc/patches/vlc3/*.patch; do
check_patch_is_applied "$patch_file"
done
More information about the Android
mailing list