Skip to content

Instantly share code, notes, and snippets.

@ljmccarthy
Last active August 20, 2018 12:23
Build LLVM
#!/bin/sh
#
# TODO This doesn't work yet
set -e
set -o pipefail
LLVM_SRC="${HOME}/llvm-6.0.1"
LLVM_BUILD="${HOME}/build"
LLVM_INSTALL="${HOME}/sysroot"
rm -rf "${LLVM_BUILD}"
mkdir -p "${LLVM_BUILD}"
cd "${LLVM_BUILD}"
cmake -G Ninja "${LLVM_SRC}" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX="${LLVM_INSTALL}" \
-DCMAKE_EXE_LINKER_FLAGS='-no-pie' \
-DLLVM_INSTALL_BINUTILS_SYMLINKS=ON \
-DLLVM_INSTALL_TOOLCHAIN_ONLY=ON \
-DLLVM_ENABLE_PEDANTIC=OFF \
-DLLVM_ENABLE_PIC=OFF \
-DLLVM_BUILD_STATIC=ON \
-DLLVM_PARALLEL_COMPILE_JOBS=8 \
-DCOMPILER_RT_BUILD_BUILTINS=ON \
-DCOMPILER_RT_BUILD_SANITIZERS=OFF \
-DCOMPILER_RT_BUILD_XRAY=OFF \
-DCOMPILER_RT_BUILD_LIBFUZZER=OFF \
-DCOMPILER_RT_BUILD_PROFILE=OFF \
-DCOMPILER_RT_BUILD_XRAY_NO_PREINIT=OFF \
-DCLANG_DEFAULT_RTLIB=compiler-rt \
-DCLANG_DEFAULT_CXX_STDLIB=libc++ \
-DCLANG_DEFAULT_LINKER=lld
ninja || true
ninja -j1
ninja install
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment