riscv64-linux-debug.sh (1748B) - 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="spacemit_x60" 11 CACHE_BASENAME="zig+llvm+lld+clang-riscv64-linux-musl-0.15.0-dev.929+31e46be74" 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-cases test-modules test-unit test-c-abi test-stack-traces test-asm-link test-llvm-ir \ 53 --maxrss 68719476736 \ 54 -Dstatic-llvm \ 55 -Dskip-non-native \ 56 -Dskip-single-threaded \ 57 -Dskip-compile-errors \ 58 -Dskip-translate-c \ 59 -Dskip-run-translated-c \ 60 -Dtarget=native-native-musl \ 61 --search-prefix "$PREFIX" \ 62 --zig-lib-dir "$PWD/../lib"