aarch64-linux-debug.sh (1802B) - Raw
1 #!/bin/sh 2 3 # Requires cmake ninja-build 4 5 set -x 6 set -e 7 8 ARCH="$(uname -m)" 9 TARGET="$ARCH-linux-musl" 10 MCPU="baseline" 11 CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.15.0-dev.233+7c85dc460" 12 PREFIX="$HOME/deps/$CACHE_BASENAME" 13 ZIG="$PREFIX/bin/zig" 14 15 export PATH="$HOME/local/bin:$PATH" 16 17 # Make the `zig version` number consistent. 18 # This will affect the cmake command below. 19 git fetch --unshallow || true 20 git fetch --tags 21 22 # Override the cache directories because they won't actually help other CI runs 23 # which will be testing alternate versions of zig, and ultimately would just 24 # fill up space on the hard drive for no reason. 25 export ZIG_GLOBAL_CACHE_DIR="$PWD/zig-global-cache" 26 export ZIG_LOCAL_CACHE_DIR="$PWD/zig-local-cache" 27 28 mkdir build-debug 29 cd build-debug 30 31 export CC="$ZIG cc -target $TARGET -mcpu=$MCPU" 32 export CXX="$ZIG c++ -target $TARGET -mcpu=$MCPU" 33 34 cmake .. \ 35 -DCMAKE_INSTALL_PREFIX="stage3-debug" \ 36 -DCMAKE_PREFIX_PATH="$PREFIX" \ 37 -DCMAKE_BUILD_TYPE=Debug \ 38 -DZIG_TARGET_TRIPLE="$TARGET" \ 39 -DZIG_TARGET_MCPU="$MCPU" \ 40 -DZIG_STATIC=ON \ 41 -DZIG_NO_LIB=ON \ 42 -GNinja 43 44 # Now cmake will use zig as the C/C++ compiler. We reset the environment variables 45 # so that installation and testing do not get affected by them. 46 unset CC 47 unset CXX 48 49 ninja install 50 51 # No -fqemu and -fwasmtime here as they're covered by the x86_64-linux scripts. 52 stage3-debug/bin/zig build test docs \ 53 --maxrss 44918199637 \ 54 -Dstatic-llvm \ 55 -Dskip-non-native \ 56 -Dtarget=native-native-musl \ 57 --search-prefix "$PREFIX" \ 58 --zig-lib-dir "$PWD/../lib" \ 59 -Denable-superhtml 60 61 stage3-debug/bin/zig build \ 62 --prefix stage4-debug \ 63 -Denable-llvm \ 64 -Dno-lib \ 65 -Dtarget=$TARGET \ 66 -Duse-zig-libcxx \ 67 -Dversion-string="$(stage3-debug/bin/zig version)" 68 69 stage4-debug/bin/zig test ../test/behavior.zig