c5e3e7a55d
Increase the minimum required version of clang to 7.0 on linux, because older versions fail to compile libstdc++'s implementation of std::variant Change-Id: I6320973cbe3ff00faa8a36cd0e7ddf564c20d965
53 lines
1.3 KiB
Bash
Executable File
53 lines
1.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -eo pipefail
|
|
|
|
case $(uname) in
|
|
Linux)
|
|
if [[ -e /etc/os-release ]]; then
|
|
source /etc/os-release
|
|
else
|
|
source /usr/lib/os-release
|
|
fi
|
|
export ID VERSION_ID
|
|
export ID_LIKE="${ID} ${ID_LIKE} linux"
|
|
export PATH="${HOME}/.local/bin${PATH:+:}${PATH}"
|
|
;;
|
|
Darwin)
|
|
# Emulate a subset of os-release(5)
|
|
export ID=macos
|
|
export VERSION_ID=$(sw_vers -productVersion)
|
|
export PATH="/usr/local/bin${PATH:+:}${PATH}"
|
|
if [[ -x /opt/homebrew/bin/brew ]]; then
|
|
eval "$(/opt/homebrew/bin/brew shellenv)"
|
|
elif [[ -x /usr/local/bin/brew ]]; then
|
|
eval "$(/usr/local/bin/brew shellenv)"
|
|
fi
|
|
;;
|
|
esac
|
|
|
|
export CACHE_DIR=${CACHE_DIR:-/tmp}
|
|
|
|
if [[ $JOB_NAME == *"code-coverage" ]]; then
|
|
export DISABLE_ASAN=yes
|
|
export DISABLE_HEADERS_CHECK=yes
|
|
fi
|
|
|
|
# https://reproducible-builds.org/docs/source-date-epoch/
|
|
export SOURCE_DATE_EPOCH=$(git log -1 --format=%ct)
|
|
|
|
for file in .jenkins.d/*; do
|
|
[[ -f $file && -x $file ]] || continue
|
|
|
|
if [[ -n $GITHUB_ACTIONS ]]; then
|
|
label=$(basename "$file" | sed -E 's/[[:digit:]]+-(.*)\..*/\1/')
|
|
echo "::group::${label}"
|
|
fi
|
|
|
|
echo "\$ $file"
|
|
"$file"
|
|
|
|
if [[ -n $GITHUB_ACTIONS ]]; then
|
|
echo "::endgroup::"
|
|
fi
|
|
done
|