1DOLLY 72TOOLCHAIN llvm22-tablegen3REQUIRES HOST runtime@04REQUIRES HOST display@05REQUIRES HOST input@06REQUIRES HOST dso@07REQUIRES HOST http@08REQUIRES HOST sockets@09REQUIRES HOST threads@01011# Build-only: LLVM 22 with every default target, the version Zig 0.17 links,12# configured by CMake inside Dolly, and its TableGen tools.13FROM /v0.1.5/demos/cmake/Dollyfile-cmake-build a187c93a214051fbafe68c92538f26f28d6cc36c2a0461369f067be8f3f1873b14# LLVM's CMake requires a Python 3 interpreter.15INSTALL /v0.1.5/demos/python/Dollyfile-python 5909c3743aee62ae30b4bc1bfc3b0b221ac5458e2ed4dfb4b6767d8b072fc9ea16REQUIRES TOOL cmake17REQUIRES TOOL make18REQUIRES TOOL python19REQUIRES TOOL cc20REQUIRES TOOL c++21REQUIRES TOOL gzip22REQUIRES TOOL tar23REQUIRES TOOL patch24REQUIRES TOOL time25REQUIRES TOOL cp26REQUIRES TOOL rm2728SOURCE /v0.1.5/dist/static/llvm22/llvm-project.tar.gz d2b6b682f06a79130bd7a2de9a88f45a80a81abb44b37bad57f018c0d2c8f9ed /tmp/llvm-project.tar.gz29SLOP time slop -c 'gzip -dc /tmp/llvm-project.tar.gz | tar -xf - -C /'30SLOP rm /tmp/llvm-project.tar.gz31# LLVM runs config.guess even when LLVM_HOST_TRIPLE is given; it knows no Dolly host.32SOURCE /v0.1.5/dist/static/llvm22/llvm-host-triple.patch ec739fd5932c1040d07344a8511bae4da4157ff2bcafa348f06a555b71a10981 /tmp/llvm-host-triple.patch33SLOP patch -p1 -d /tmp/llvm-project -i /tmp/llvm-host-triple.patch3435# As the seed's LLVM is configured (llvm-tablegen), with every target Zig36# requires (its cmake/Findllvm.cmake) and installed under /usr/lib/llvm22.37FILE /usr/lib/llvm22-build/Dolly.cmake38    set(CMAKE_BUILD_TYPE Release CACHE STRING "")39    set(CMAKE_C_FLAGS "-std=gnu17" CACHE STRING "")40    set(CMAKE_CXX_FLAGS "-include endian.h -DCLANG_BUILD_STATIC" CACHE STRING "")41    set(CMAKE_DISABLE_PRECOMPILE_HEADERS ON CACHE BOOL "")42    set(CMAKE_RULE_MESSAGES OFF CACHE BOOL "")43    set(CMAKE_INSTALL_PREFIX /usr/lib/llvm22 CACHE STRING "")44    set(LLVM_ENABLE_WARNINGS OFF CACHE BOOL "")45    set(LLVM_ENABLE_PROJECTS "clang;lld" CACHE STRING "")46    set(LLVM_TARGETS_TO_BUILD "AArch64;AMDGPU;ARM;AVR;BPF;Hexagon;Lanai;LoongArch;Mips;MSP430;NVPTX;PowerPC;RISCV;SPIRV;Sparc;SystemZ;VE;WebAssembly;X86;XCore" CACHE STRING "")47    set(LLVM_HOST_TRIPLE wasm64-unknown-emscripten CACHE STRING "")48    set(LLVM_DEFAULT_TARGET_TRIPLE wasm64-unknown-emscripten CACHE STRING "")49    foreach(option THREADS TERMINFO LIBEDIT LIBPFM ZLIB ZSTD LIBXML2 CURL BINDINGS)50      set(LLVM_ENABLE_${option} OFF CACHE STRING "")51    endforeach()52    foreach(option TESTS EXAMPLES BENCHMARKS DOCS)53      set(LLVM_INCLUDE_${option} OFF CACHE BOOL "")54    endforeach()55    set(LLVM_BUILD_LLVM_DYLIB OFF CACHE BOOL "")56    set(LLVM_LINK_LLVM_DYLIB OFF CACHE BOOL "")57SLOP time cmake -C /usr/lib/llvm22-build/Dolly.cmake -S /tmp/llvm-project/llvm -B /tmp/llvm-build5859# Each job is three processes (Slop, c++, compiler); -j8 exceeds the 32-process cap.60SLOP CWD /tmp/llvm-build time make -j4 llvm-min-tblgen llvm-tblgen clang-tblgen61SLOP CWD /tmp/llvm-build cp bin/llvm-min-tblgen bin/llvm-tblgen bin/clang-tblgen /usr/bin62SLOP rm -rf /tmp/llvm-build /tmp/llvm-project6364EXPORTS TOOL llvm-min-tblgen65EXPORTS TOOL llvm-tblgen66EXPORTS TOOL clang-tblgen67FOLDER /usr/lib/llvm22-build68SLOP llvm-tblgen --version6970ENTRY /bin/foreground -i /bin/slop71