Skip to content

Instantly share code, notes, and snippets.

@ramntry
Last active August 29, 2015 14:05
Show Gist options
  • Select an option

  • Save ramntry/5a06c13a3e5b376e83b6 to your computer and use it in GitHub Desktop.

Select an option

Save ramntry/5a06c13a3e5b376e83b6 to your computer and use it in GitHub Desktop.
LLVM Bootstrapping Script
#!/bin/bash
llvm_releases_url="http://llvm.org/releases"
llvm_major_version="3.4"
llvm_minor_version="2"
llvm_version="${llvm_major_version}.${llvm_minor_version}"
llvm_source_directory="llvm-${llvm_version}.src"
llvm_archive_filename="${llvm_source_directory}.tar.gz"
llvm_archive_url="${llvm_releases_url}/${llvm_version}/${llvm_archive_filename}"
clang_source_directory="cfe-${llvm_version}.src"
clang_archive_filename="${clang_source_directory}.tar.gz"
clang_archive_url="${llvm_releases_url}/${llvm_version}/${clang_archive_filename}"
rt_source_directory="compiler-rt-${llvm_major_version}"
rt_archive_filename="${rt_source_directory}.src.tar.gz"
rt_archive_url="${llvm_releases_url}/${llvm_major_version}/${rt_archive_filename}"
test_source_directory="test-suite-${llvm_major_version}"
test_archive_filename="${test_source_directory}.src.tar.gz"
test_archive_url="${llvm_releases_url}/${llvm_major_version}/${test_archive_filename}"
wget "$llvm_archive_url"
tar -xf "$llvm_archive_filename"
cd "${llvm_source_directory}/tools"
wget "$clang_archive_url"
tar -xf "$clang_archive_filename"
mv "$clang_source_directory" clang
cd "../projects"
wget "$rt_archive_url"
tar -xf "$rt_archive_filename"
mv "$rt_source_directory" compiler-rt
wget "$test_archive_url"
tar -xf "$test_archive_filename"
mv "$test_source_directory" test-suite
cd "../../"
current_directory=$(pwd)
mkdir -p build install
cd build
../${llvm_source_directory}/configure --prefix="${current_directory}/install"
make -j8
make -j8 check-all
make -j8 install
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment