#!/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 # NOTE: Please consider this post documenting some pitfalls of set -e: # https://gist.github.com/notwa/5b8dda28e571b27638fb33e08dc1ba21 # set -e # don't leak local IPs (i'm sure it's fine though) unset SSH_CLIENT SSH_CONNECTION # NOTE: this is the last version based around gcc 9.2: # COSMO_COMMIT=682b74ed883d1d6f9aa23179af841d9971c23e4d \ # COSMO_SHA256=71dace03135ac2b97384021a37df5871572cf34524efb5a21812e115dca15b1b \ # versions thereafter are based around gcc 11.2 or later. export \ BUSYBOX_SHA256=b8cc24c9574d809e7279c3be349795c5d5ceb6fdf19ca709f80cde50e47de314 \ BUSYBOX_VERSION=1.36.1 \ COSMO_COMMIT=682b74ed883d1d6f9aa23179af841d9971c23e4d \ COSMO_FLAVOR=fastbuild \ COSMO_SHA256=71dace03135ac2b97384021a37df5871572cf34524efb5a21812e115dca15b1b \ 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=b88267c8289c4eeea3d0219d43193a9a5fd9982b \ KUROKO_SHA256=52e22c2e701f58cef635f0df3faaa0734ae85dd656417aaaae01226a3a7725d3 \ LR_COMMIT=5af9b79e4ecd07a600ded1a801023536cde97f95 \ LR_SHA256=3901287cdcf09d0d8f77f8aaa19ca24e9a873d904e201ab8e7bf102426607dcc \ MUON_COMMIT=6cdf084804fb8262a7f29ac9e9b614472b62b8a3 \ MUON_SHA256=60b37463fbeb757dd595f50d03116a7f9fe1e727d2852369de0052008e696e2b \ SELFIE_COMMIT=9d5cf9caac9b00ac48b96c527ddda6c550f652fa \ SELFIE_SHA256=5ea9e9cd7df6e6e67e3757cd8483e8e653fa4d7469275f3fdf89483c2744d4a9 \ XE_COMMIT=8a2a4899769335bc14c62aef12cdf26f2f487f2a \ XE_SHA256=f1ac997912c9be92a74a67a766dde74d1f9b6b20e48d7c7e71598ad4b787b37d \ YICES_COMMIT=36cee66d04de90da35fab6131bebdc45b6d74342 \ YICES_SHA256=f6bbfa30c38c17401fb651a06d935bec87af732ffeea3fa0db7dd22b1916e374 \ ; if [ ! -e /notwa-util.done ]; then : \ && cd /vagrant/notwa-util \ && install -p -m 0755 -t /usr/local/bin/ acquire cosmocc dedupe ofc quickconf shed \ && touch /notwa-util.done \ || exit $? fi . /vagrant/notwa-util/cosmopolitan-bootstrap9 || exit $? . /vagrant/notwa-util/cosmopolitan9 || exit $? cd /root/cosmopolitan && . ./env || exit $? export COSMO COSMO_DIST . /vagrant/notwa-util/cosmopolitan-install9 || exit $? cd /root && export PATH="$COSMO/bin:$COSMO/gcc/bin:$PATH" || exit $? unset V COLUMNS TMPDIR . /vagrant/notwa-util/cosmo-kuroko9 || exit $? . /vagrant/notwa-util/cosmo-mini9 || exit $? . /vagrant/notwa-util/cosmo-muon9 || exit $? unset CC CFLAGS . /vagrant/notwa-util/cosmo-yices9 || exit $? unset local_fn remote_url dest sha256 # kuroko.orig/kuroko.com # wtf? # NOTE: different programs with the same names: # NOTE: (we actually ignore the ones in the /test/ directory) # ar.com cosmopolitan/o/opt/tool/build/ar.com # ar.com cosmopolitan/o/opt/tool/decode/ar.com # hello.com cosmopolitan/o/opt/examples/hello.com # hello.com cosmopolitan/o/opt/third_party/python/hello.com # hello.com cosmopolitan/o/opt/tool/hello/hello.com # life.com cosmopolitan/o/opt/examples/life.com # life.com cosmopolitan/o/opt/test/libc/mem/prog/life.com # life.com cosmopolitan/o/opt/tool/viz/life.com # symtab.com cosmopolitan/o/opt/examples/symtab.com # symtab.com cosmopolitan/o/opt/tool/build/symtab.com # zip.com cosmopolitan/o/opt/third_party/zip/zip.com # zip.com cosmopolitan/o/opt/tool/decode/zip.com : \ && 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 $?