source:
scripts/get_waf.sh
@
a5986ff
Last change on this file since a5986ff was b540b22, checked in by , 3 years ago | |
---|---|
|
|
File size: 1017 bytes |
Rev | Line | |
---|---|---|
[701999c] | 1 | #! /usr/bin/env bash |
[7858305] | 2 | |
3 | set -e | |
[e561ca7] | 4 | #set -x |
[7858305] | 5 | |
[92d40c7] | 6 | WAFVERSION=2.0.23 |
[ee4fc9c] | 7 | WAFTARBALL=waf-$WAFVERSION.tar.bz2 |
8 | WAFURL=https://waf.io/$WAFTARBALL | |
[b540b22] | 9 | WAFUPSTREAMKEY=https://gitlab.com/ita1024/waf/-/raw/waf-$WAFVERSION/utils/pubkey.asc |
[7858305] | 10 | |
[ee4fc9c] | 11 | WAFBUILDDIR=`mktemp -d` |
[7858305] | 12 | |
[ee4fc9c] | 13 | function cleanup () { |
14 | rm -rf $WAFBUILDDIR | |
15 | } | |
16 | ||
17 | trap cleanup SIGINT SIGTERM | |
18 | ||
[e561ca7] | 19 | function download () { |
20 | ( [[ -n `which wget` ]] && wget -qO $1 $2 ) || ( [[ -n `which curl` ]] && curl -so $1 $2 ) | |
21 | } | |
22 | ||
23 | function checkwaf () { | |
24 | download $WAFTARBALL.asc $WAFURL.asc | |
25 | if [[ -z `which gpg` ]] | |
26 | then | |
27 | echo "Warning: gpg not found, not verifying signature for $WAFTARBALL" | |
28 | else | |
29 | download - $WAFUPSTREAMKEY | gpg --import | |
30 | gpg --verify $WAFTARBALL.asc || exit 1 | |
31 | fi | |
32 | } | |
[ee4fc9c] | 33 | |
[e561ca7] | 34 | function fetchwaf () { |
35 | download $WAFTARBALL $WAFURL | |
36 | checkwaf | |
37 | } | |
[ee4fc9c] | 38 | |
[e561ca7] | 39 | function buildwaf () { |
[ee4fc9c] | 40 | tar xf $WAFTARBALL |
41 | pushd waf-$WAFVERSION | |
[bb07c7e] | 42 | NOCLIMB=1 python waf-light --tools=c_emscripten $* |
[ee4fc9c] | 43 | popd |
44 | } | |
45 | ||
[e561ca7] | 46 | pushd $WAFBUILDDIR |
47 | fetchwaf | |
[ee4fc9c] | 48 | buildwaf |
[e561ca7] | 49 | popd |
50 | ||
[63a7a43] | 51 | cp -prv $WAFBUILDDIR/waf-$WAFVERSION/waf "$PWD" |
[e561ca7] | 52 | chmod +x waf |
[ee4fc9c] | 53 | |
54 | cleanup |
Note: See TracBrowser
for help on using the repository browser.