• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#!/usr/bin/env bash
2
3# Checkout LLVM sources
4git clone --depth=1 https://github.com/llvm/llvm-project.git llvm-project
5
6# Setup libc++ options
7if [ -z "$BUILD_32_BITS" ]; then
8  export BUILD_32_BITS=OFF && echo disabling 32 bit build
9fi
10
11# Build and install libc++ (Use unstable ABI for better sanitizer coverage)
12cd ./llvm-project
13cmake -DCMAKE_C_COMPILER=${C_COMPILER}          \
14      -DCMAKE_CXX_COMPILER=${COMPILER}          \
15      -DCMAKE_BUILD_TYPE=RelWithDebInfo         \
16      -DCMAKE_INSTALL_PREFIX=/usr               \
17      -DLIBCXX_ABI_UNSTABLE=OFF                 \
18      -DLLVM_USE_SANITIZER=${LIBCXX_SANITIZER}  \
19      -DLLVM_BUILD_32_BITS=${BUILD_32_BITS}     \
20      -DLLVM_ENABLE_PROJECTS='libcxx;libcxxabi' \
21      -S llvm -B llvm-build -G "Unix Makefiles"
22make -C llvm-build -j3 cxx cxxabi
23sudo make -C llvm-build install-cxx install-cxxabi
24cd ..
25