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=ce0a3065f350c2286452b6f5d6a5da9cece234ad \
|
|
COSMO_SHA256=79744f5e2b7c3225bb75004c31f0966481c11ef3a2d90dda3278cdec18b03443 \
|
|
ENDLESSH_COMMIT=dfe44eb2c5b6fc3c48a39ed826fe0e4459cdf6ef \
|
|
ENDLESSH_SHA256=c8989988af0a8c848d1a4979962f008c504a12ed6fe6a12e032c37feaa0ae5f8 \
|
|
GMP_SHA256=fd4829912cddd12f84181c3451cc752be224643e87fac497b69edddadc49b4f2 \
|
|
GMP_VERSION=6.2.1 \
|
|
HEATSHRINK_COMMIT=7d419e1fa4830d0b919b9b6a91fe2fb786cf3280 \
|
|
HEATSHRINK_SHA256=b18a1b7ad6f51eac7ac1a81ca072703bd21d6d8727c05cd505843643705af65d \
|
|
KISSAT_COMMIT=315cd3227fd2321d29d10f7d8572011bf00174a5 \
|
|
KISSAT_SHA256=031fca7efcb17c6f1921dd056052bd373de724e445fc2ed37bfdd5954148119f \
|
|
KUROKO_COMMIT=6c452a91e723bc48d303297270110c4cdbda27de \
|
|
KUROKO_SHA256=1426a6e20a7d468f34306d1a5a07d74e0ac717f748174521d97902238d3df0a7 \
|
|
LR_COMMIT=5af9b79e4ecd07a600ded1a801023536cde97f95 \
|
|
LR_SHA256=3901287cdcf09d0d8f77f8aaa19ca24e9a873d904e201ab8e7bf102426607dcc \
|
|
MUON_COMMIT=de4ab01eed54da916eadf9ce8aaa4a167e51c330 \
|
|
MUON_SHA256=de4622ab98420cb8c895b530cff44b3e91e45aab49abdf957a40dc6aca4dc02d \
|
|
SELFIE_COMMIT=9d5cf9caac9b00ac48b96c527ddda6c550f652fa \
|
|
SELFIE_SHA256=5ea9e9cd7df6e6e67e3757cd8483e8e653fa4d7469275f3fdf89483c2744d4a9 \
|
|
XE_COMMIT=8a2a4899769335bc14c62aef12cdf26f2f487f2a \
|
|
XE_SHA256=f1ac997912c9be92a74a67a766dde74d1f9b6b20e48d7c7e71598ad4b787b37d \
|
|
YICES_COMMIT=d6448c122270684ffb308fd8d6f3ca09266f50df \
|
|
YICES_SHA256=d4aa3bedbc143516f8db57f189f96e09a1771f31215c16b4c13bcdca38f592e3 \
|
|
;
|
|
|
|
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 $?
|