1DOLLY 72TOOLCHAIN zero-ad-engine3REQUIRES HOST runtime@04REQUIRES HOST audio@05REQUIRES HOST display@06REQUIRES HOST input@07REQUIRES HOST download@08REQUIRES HOST gpu@09REQUIRES HOST http@010REQUIRES HOST upload@01112# Build-only: premake and the 0 A.D. engine (pyrogenesis), built by upstream's13# premake Makefiles with Dolly's c++.14FROM /v0.1.2/demos/zero-ad/Dollyfile-zero-ad-deps 885e93b8eb52cd42e4d691fd12580893ecf8614d1791ce6b2d179274e66db7ae15REQUIRES TOOL cc16REQUIRES TOOL c++17REQUIRES TOOL ar18REQUIRES TOOL make19REQUIRES TOOL pkg-config20REQUIRES TOOL gzip21REQUIRES TOOL tar22REQUIRES TOOL patch23REQUIRES TOOL cp24REQUIRES TOOL mkdir2526SOURCE /v0.1.2/dist/static/zero-ad-build/engine.tar.gz 3850376bf2e8258fb32afdd548d0fa55e0b66d16ad5d086ca01a25cde95c4669 /tmp/0ad.tar.gz27SLOP gzip -dc /tmp/0ad.tar.gz | tar -xf - -C /28SLOP patch -p1 -d /tmp/0ad -i /tmp/0ad-patches/engine.patch2930# Bootstrap.mak's two stages: a premake that loads its scripts, then one with31# them embedded. Its own Makefiles are skipped for their unbounded make -j.32SLOP patch -p1 -d /tmp/premake-core-5.0.0-beta7 -i /tmp/0ad-patches/premake.patch33FILE /tmp/premake.slop34    set -ex35    cd /tmp/premake-core-5.0.0-beta736    lua=37    for name in lapi lauxlib lbaselib lbitlib lcode lcorolib lctype ldblib ldebug ldo ldump lfunc lgc linit liolib llex lmathlib lmem loadlib lobject lopcodes loslib lparser lstate lstring lstrlib ltable ltablib ltm lundump lutf8lib lvm lzio; do38      lua="$lua contrib/lua/src/$name.c"39    done40    flags='-DLUA_STATICLIB -DLUA_USE_POSIX -DLUA_USE_DLOPEN -Icontrib/lua/src -Icontrib/luashim'41    cc -O1 -o premake_bootstrap -DPREMAKE_NO_BUILTIN_SCRIPTS $flags src/host/*.c $lua -lm42    ./premake_bootstrap embed43    cc -O2 -o /usr/bin/premake5 $flags src/host/*.c src/scripts.c $lua -lm44SLOP slop -e /tmp/premake.slop4546# SpiderMonkey, built inside Dolly by zero-ad-spidermonkey: its headers, the47# two archives and its licences.48COPY /v0.1.2/demos/zero-ad/Dollyfile-zero-ad-spidermonkey fe3c17f9b9ee64f0caa15913946b0e06d9151b7df1a13af17a13f3c9fc55c405 /opt/mozjs /opt/mozjs49COPY /v0.1.2/demos/zero-ad/Dollyfile-zero-ad-spidermonkey fe3c17f9b9ee64f0caa15913946b0e06d9151b7df1a13af17a13f3c9fc55c405 /usr/share/licenses/spidermonkey /usr/share/licenses/spidermonkey50FILE /tmp/pkgconfig/mozjs-128.pc51    Name: SpiderMonkey 128.13.052    Description: The Mozilla library for JavaScript53    Version: 128.13.054    Cflags: -I/opt/mozjs/include55    Libs: -L/opt/mozjs/lib -ljs_static -ljsrust5657# Probe for test/0ad-spidermonkey-browser.mjs.58SLOP mkdir -p /usr/libexec/zero-ad59SLOP c++ -std=c++20 -O1 -I/opt/mozjs/include /tmp/0ad-patches/spidermonkey-check.cpp \60  -L/opt/mozjs/lib -ljs_static -ljsrust -lz -o /usr/libexec/zero-ad/spidermonkey-check61SLOP /usr/libexec/zero-ad/spidermonkey-check62FOLDER /usr/libexec/zero-ad6364SLOP CWD /tmp/0ad/build/premake PKG_CONFIG_PATH=/tmp/pkgconfig CC=cc CXX=c++ \65  premake5 --os=emscripten --minimal-flags --strip-binaries --with-system-mozjs \66  --without-atlas --without-nvtt --without-lobby --without-miniupnpc --without-pch \67  --without-tests --without-dap-interface --outpath=../workspaces/dolly gmake68# __DATE__ and __TIME__ are the release's build_version.txt mtime, for reproducible builds.69SLOP CWD /tmp/0ad/build/workspaces/dolly SOURCE_DATE_EPOCH=1771228448 \70  time make config=release -j4 CC=cc CXX=c++ AR=ar pyrogenesis71SLOP mkdir -p /opt/0ad/system72SLOP cp /tmp/0ad/binaries/system/pyrogenesis.wasm /opt/0ad/system/pyrogenesis73SLOP /opt/0ad/system/pyrogenesis -version7475EXPORTS FILE pyrogenesis /opt/0ad/system/pyrogenesis7677ENTRY /bin/foreground -i /bin/slop78