116 lines
4.1 KiB
Bash
Executable file
116 lines
4.1 KiB
Bash
Executable file
#!/usr/bin/env sh
|
|
if ! [ -d /vagrant ]; then
|
|
printf '%s\n' 'THIS FILE IS ONLY MEANT TO BE RUN BY VAGRANT.' >&2
|
|
exit 78 # EX_CONFIG
|
|
fi
|
|
|
|
# don't leak local IPs (i'm sure it's fine though)
|
|
unset SSH_CLIENT SSH_CONNECTION
|
|
|
|
export \
|
|
BUSYBOX_SHA256=b8cc24c9574d809e7279c3be349795c5d5ceb6fdf19ca709f80cde50e47de314 \
|
|
BUSYBOX_VERSION=1.36.1 \
|
|
COSMO_COMMIT=18536950b3db37da45641bc5805d82ea6056d283 \
|
|
COSMO_SHA256=d9ac712ee8e84c23b22d0677be3ded5c23bec1fc5472f1bd3ae14c23c9ad8944 \
|
|
ENDLESSH_COMMIT=dfe44eb2c5b6fc3c48a39ed826fe0e4459cdf6ef \
|
|
ENDLESSH_SHA256=c8989988af0a8c848d1a4979962f008c504a12ed6fe6a12e032c37feaa0ae5f8 \
|
|
GMP_SHA256=fd4829912cddd12f84181c3451cc752be224643e87fac497b69edddadc49b4f2 \
|
|
GMP_VERSION=6.2.1 \
|
|
HEATSHRINK_COMMIT=7d419e1fa4830d0b919b9b6a91fe2fb786cf3280 \
|
|
HEATSHRINK_SHA256=b18a1b7ad6f51eac7ac1a81ca072703bd21d6d8727c05cd505843643705af65d \
|
|
KISSAT_COMMIT=0865f474689b4e38a1c327ee03da8a0051c44b9e \
|
|
KISSAT_SHA256=e0cfaa89710cd8b4d49b70b786a871331f483db78bbfbf329a7b826b8093c8cf \
|
|
KUROKO_COMMIT=a8e870cc874c4e5a1abb501e14ddee7d0d7ee52c \
|
|
KUROKO_SHA256=50f0d363aabe4c1b385392eb87cf9596027e13a15cbdaff2e8c2af0fcfa041ba \
|
|
LR_COMMIT=5af9b79e4ecd07a600ded1a801023536cde97f95 \
|
|
LR_SHA256=3901287cdcf09d0d8f77f8aaa19ca24e9a873d904e201ab8e7bf102426607dcc \
|
|
MUON_COMMIT=e9af35467ffea9edf567a71cc6c31787327de994 \
|
|
MUON_SHA256=2e342d912558564bbdf4ce5f7a88e099b28d59576d1a65eff9ae15cef4c73450 \
|
|
SELFIE_COMMIT=22ed35605d46b95f23c8ceb6ec2e1b2fee93525d \
|
|
SELFIE_SHA256=8e73d7770fc9217e98f85685780d6a487c7896baf9a174982f00acec3615a6bf \
|
|
XE_COMMIT=8a2a4899769335bc14c62aef12cdf26f2f487f2a \
|
|
XE_SHA256=f1ac997912c9be92a74a67a766dde74d1f9b6b20e48d7c7e71598ad4b787b37d \
|
|
YICES_COMMIT=5a3e3f0fabf7d588c5adf1f791b26a590eac547f \
|
|
YICES_SHA256=46f6575418466b73b06d6f06011eea2824a0726787ff4ef441ec3bad25736062 \
|
|
;
|
|
|
|
if [ ! -e /notwa-util.done ]; then
|
|
: \
|
|
&& cd /vagrant/notwa-util \
|
|
&& install -p -m 0755 -t /usr/local/bin/ \
|
|
acquire dedupe expand makeit ofc quickconf shed \
|
|
&& touch /notwa-util.done \
|
|
|| exit $?
|
|
fi
|
|
|
|
export COSMO_FLAVOR=fastbuild || exit $?
|
|
. /vagrant/notwa-util/cosmopolitan-bootstrap11 || exit $?
|
|
export COSMO_FLAVOR=opt || exit $?
|
|
. /vagrant/notwa-util/cosmopolitan11 || exit $?
|
|
cd /root/cosmopolitan && . ./env || exit $?
|
|
export COSMO COSMO_DIST
|
|
export COSMOS="$COSMO" MODE="$mode"
|
|
. /vagrant/notwa-util/cosmopolitan-install11 || exit $?
|
|
|
|
# TODO: make this less of a hot mess:
|
|
sed \
|
|
-e 's,/o/third_party/gcc/,/gcc/,g' \
|
|
-e 's,/o/$MODE/tool/build/,/bin/,g' \
|
|
-e 's,/o/$MODE/cosmopolitan.a,/dist/$MODE/cosmopolitan.a,g' \
|
|
-e 's,/libc/crt/,/dist/$MODE/,g' \
|
|
-e 's,/o/$MODE/,/,g' \
|
|
-e 's,/ape/,/dist/$MODE/,g' \
|
|
-e "s,\$MODE\\b,$MODE,g" \
|
|
-i /usr/bin/cosmocc
|
|
|
|
cd /root && export PATH="$COSMO/bin:$COSMO/gcc/bin:$PATH" || exit $?
|
|
unset V COLUMNS TMPDIR
|
|
. /vagrant/notwa-util/cosmo-kuroko11 || exit $?
|
|
# . /vagrant/notwa-util/cosmo-mini11 || exit $?
|
|
# . /vagrant/notwa-util/cosmo-muon11 || exit $?
|
|
unset CC CFLAGS MODE mode
|
|
. /vagrant/notwa-util/cosmo-yices11 || exit $?
|
|
|
|
: \
|
|
&& cd /root \
|
|
&& . ./cosmopolitan/env \
|
|
&& export \
|
|
&& echo \
|
|
&& mkdir -p /vagrant/out/vagrant \
|
|
&& for com in \
|
|
`# endlessh/endlessh.com` \
|
|
`# heatshrink/heatshrink.com` \
|
|
`# kissat/build/kissat.com` \
|
|
kuroko/kuroko.com \
|
|
`#lr/lr.com` \
|
|
`#muon/build/muon.com` \
|
|
`#selfie/selfie.com` \
|
|
`#xe/xe.com` \
|
|
yices/dist/bin/yices-sat.com \
|
|
yices/dist/bin/yices-smt.com \
|
|
yices/dist/bin/yices-smt2.com \
|
|
yices/dist/bin/yices.com \
|
|
;do : \
|
|
&& du -k "$com" \
|
|
&& install -p -m 0755 -t /vagrant/out/vagrant "$com" \
|
|
;done \
|
|
&& echo \
|
|
&& d=/vagrant/out/vagrant/examples \
|
|
&& mkdir -p "$d" \
|
|
&& find "cosmopolitan/o/$mode/examples" -type f -name '*.com' \
|
|
-exec install -p -m 0755 -t "$d" {} + \
|
|
&& echo \
|
|
&& d=/vagrant/out/vagrant/third_party \
|
|
&& mkdir -p "$d" \
|
|
&& find "cosmopolitan/o/$mode/third_party" -type f -name '*.com' \
|
|
-exec install -p -m 0755 -t "$d" {} + \
|
|
&& echo \
|
|
&& d=/vagrant/out/vagrant/tool \
|
|
&& mkdir -p "$d" \
|
|
&& find "cosmopolitan/o/$mode/tool" -type f -name '*.com' \
|
|
-exec install -p -m 0755 -t "$d" {} + \
|
|
&& echo \
|
|
&& find -type f -name '*.com' | sort \
|
|
&& echo \
|
|
&& ls -1 /*.done \
|
|
|| exit $?
|