mirror of
https://github.com/LBRYFoundation/LBRY-Vault.git
synced 2025-08-23 17:47:31 +00:00
build: factor out some utilities to build_tools_util.sh
This commit is contained in:
parent
ca931f476f
commit
47b07f19b9
3 changed files with 74 additions and 67 deletions
|
@ -24,62 +24,12 @@ PYHOME="c:/$PYTHON_FOLDER"
|
||||||
PYTHON="wine $PYHOME/python.exe -OO -B"
|
PYTHON="wine $PYHOME/python.exe -OO -B"
|
||||||
|
|
||||||
|
|
||||||
# based on https://superuser.com/questions/497940/script-to-verify-a-signature-with-gpg
|
|
||||||
verify_signature() {
|
|
||||||
local file=$1 keyring=$2 out=
|
|
||||||
if out=$(gpg --no-default-keyring --keyring "$keyring" --status-fd 1 --verify "$file" 2>/dev/null) &&
|
|
||||||
echo "$out" | grep -qs "^\[GNUPG:\] VALIDSIG "; then
|
|
||||||
return 0
|
|
||||||
else
|
|
||||||
echo "$out" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
verify_hash() {
|
|
||||||
local file=$1 expected_hash=$2
|
|
||||||
actual_hash=$(sha256sum $file | awk '{print $1}')
|
|
||||||
if [ "$actual_hash" == "$expected_hash" ]; then
|
|
||||||
return 0
|
|
||||||
else
|
|
||||||
echo "$file $actual_hash (unexpected hash)" >&2
|
|
||||||
rm "$file"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
download_if_not_exist() {
|
|
||||||
local file_name=$1 url=$2
|
|
||||||
if [ ! -e $file_name ] ; then
|
|
||||||
wget -O $PWD/$file_name "$url"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# https://github.com/travis-ci/travis-build/blob/master/lib/travis/build/templates/header.sh
|
|
||||||
retry() {
|
|
||||||
local result=0
|
|
||||||
local count=1
|
|
||||||
while [ $count -le 3 ]; do
|
|
||||||
[ $result -ne 0 ] && {
|
|
||||||
echo -e "\nThe command \"$@\" failed. Retrying, $count of 3.\n" >&2
|
|
||||||
}
|
|
||||||
! { "$@"; result=$?; }
|
|
||||||
[ $result -eq 0 ] && break
|
|
||||||
count=$(($count + 1))
|
|
||||||
sleep 1
|
|
||||||
done
|
|
||||||
|
|
||||||
[ $count -gt 3 ] && {
|
|
||||||
echo -e "\nThe command \"$@\" failed 3 times.\n" >&2
|
|
||||||
}
|
|
||||||
|
|
||||||
return $result
|
|
||||||
}
|
|
||||||
|
|
||||||
# Let's begin!
|
# Let's begin!
|
||||||
here=$(dirname $(readlink -e $0))
|
here="$(dirname "$(readlink -e "$0")")"
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
|
. $here/../build_tools_util.sh
|
||||||
|
|
||||||
wine 'wineboot'
|
wine 'wineboot'
|
||||||
|
|
||||||
# HACK to work around https://bugs.winehq.org/show_bug.cgi?id=42474#c22
|
# HACK to work around https://bugs.winehq.org/show_bug.cgi?id=42474#c22
|
||||||
|
|
69
contrib/build_tools_util.sh
Executable file
69
contrib/build_tools_util.sh
Executable file
|
@ -0,0 +1,69 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
RED='\033[0;31m'
|
||||||
|
BLUE='\033[0;34m'
|
||||||
|
YELLOW='\033[0;33m'
|
||||||
|
NC='\033[0m' # No Color
|
||||||
|
function info {
|
||||||
|
printf "\r💬 ${BLUE}INFO:${NC} ${1}\n"
|
||||||
|
}
|
||||||
|
function fail {
|
||||||
|
printf "\r🗯 ${RED}ERROR:${NC} ${1}\n"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
function warn {
|
||||||
|
printf "\r⚠️ ${YELLOW}WARNING:${NC} ${1}\n"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# based on https://superuser.com/questions/497940/script-to-verify-a-signature-with-gpg
|
||||||
|
function verify_signature() {
|
||||||
|
local file=$1 keyring=$2 out=
|
||||||
|
if out=$(gpg --no-default-keyring --keyring "$keyring" --status-fd 1 --verify "$file" 2>/dev/null) &&
|
||||||
|
echo "$out" | grep -qs "^\[GNUPG:\] VALIDSIG "; then
|
||||||
|
return 0
|
||||||
|
else
|
||||||
|
echo "$out" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function verify_hash() {
|
||||||
|
local file=$1 expected_hash=$2
|
||||||
|
actual_hash=$(sha256sum $file | awk '{print $1}')
|
||||||
|
if [ "$actual_hash" == "$expected_hash" ]; then
|
||||||
|
return 0
|
||||||
|
else
|
||||||
|
echo "$file $actual_hash (unexpected hash)" >&2
|
||||||
|
rm "$file"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function download_if_not_exist() {
|
||||||
|
local file_name=$1 url=$2
|
||||||
|
if [ ! -e $file_name ] ; then
|
||||||
|
wget -O $file_name "$url"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# https://github.com/travis-ci/travis-build/blob/master/lib/travis/build/templates/header.sh
|
||||||
|
function retry() {
|
||||||
|
local result=0
|
||||||
|
local count=1
|
||||||
|
while [ $count -le 3 ]; do
|
||||||
|
[ $result -ne 0 ] && {
|
||||||
|
echo -e "\nThe command \"$@\" failed. Retrying, $count of 3.\n" >&2
|
||||||
|
}
|
||||||
|
! { "$@"; result=$?; }
|
||||||
|
[ $result -eq 0 ] && break
|
||||||
|
count=$(($count + 1))
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
|
||||||
|
[ $count -gt 3 ] && {
|
||||||
|
echo -e "\nThe command \"$@\" failed 3 times.\n" >&2
|
||||||
|
}
|
||||||
|
|
||||||
|
return $result
|
||||||
|
}
|
|
@ -1,19 +1,7 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
RED='\033[0;31m'
|
. $(dirname "$0")/../build_tools_util.sh
|
||||||
BLUE='\033[0,34m'
|
|
||||||
YELLOW='\033[0;33m'
|
|
||||||
NC='\033[0m' # No Color
|
|
||||||
function info {
|
|
||||||
printf "\r💬 ${BLUE}INFO:${NC} ${1}\n"
|
|
||||||
}
|
|
||||||
function fail {
|
|
||||||
printf "\r🗯 ${RED}ERROR:${NC} ${1}\n"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
function warn {
|
|
||||||
printf "\r⚠️ ${YELLOW}WARNING:${NC} ${1}\n"
|
|
||||||
}
|
|
||||||
|
|
||||||
function DoCodeSignMaybe { # ARGS: infoName fileOrDirName codesignIdentity
|
function DoCodeSignMaybe { # ARGS: infoName fileOrDirName codesignIdentity
|
||||||
infoName="$1"
|
infoName="$1"
|
||||||
|
|
Loading…
Add table
Reference in a new issue