Scripts for bootstrapping various programming languages
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 lines
1.0 KiB

#!/bin/sh
set -eu
version_llvm="$1"
dir_download="$PWD/download"
dir_files="$PWD/files"
mkdir -p build; cd build
dir_install="$PWD/install-llvm-$version_llvm"
case "$version_llvm" in
7.*|8.*)
tarball="llvm-$version_llvm.src"
dir_source="$tarball"
;;
9.*|10.*)
tarball="llvm-project-$version_llvm"
dir_source="$tarball/llvm"
;;
*)
tarball="llvm-project-$version_llvm.src"
dir_source="$tarball/llvm"
;;
esac
# Prepare source
tar xf "$dir_download/$tarball.tar.xz"
cd "$dir_source"
case "$version_llvm" in
10.*)
patch -p2 -i "$dir_files/llvm-10.0.1-fix-includes.patch"
;;
13.*)
patch -p2 -i "$dir_files/llvm-10.0.1-fix-includes.patch"
;;
esac
mkdir -p build; cd build
# Configure source
cmake .. \
-DCMAKE_INSTALL_PREFIX="$dir_install" \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_TARGETS_TO_BUILD=X86 \
-DLLVM_INSTALL_UTILS=ON \
-DLLVM_INCLUDE_TESTS=OFF \
-DLLVM_INCLUDE_BENCHMARKS=OFF
# Build and install
cmake --build . $MAKEFLAGS
cmake --install .