diff --git a/build-clang-5.0.1.sh b/build-clang-5.0.1.sh new file mode 100755 index 0000000..565157e --- /dev/null +++ b/build-clang-5.0.1.sh @@ -0,0 +1,143 @@ +#!/bin/bash + +if ! hash xz; then + cat >&2 <= 3.4, so use the one we already build for pants. +CMAKE_VERSION='3.9.5' +CMAKE_BUILD_TMP_DIR='cmake-build-tmp' +LLVM_BUILD_TMP_DIR='llvm-build' +LLVM_TMP_LINUX_PKG_DIR='llvm-linux-pkg' + +"./build-cmake-${CMAKE_VERSION}.sh" +cmake_linux_packaged_abs="$(pwd)/build-support/bin/cmake/linux/x86_64/${CMAKE_VERSION}/cmake.tar.gz" + +mkdir -p "$CMAKE_BUILD_TMP_DIR" +pushd "$CMAKE_BUILD_TMP_DIR" +tar zxf "$cmake_linux_packaged_abs" +cmake_linux_bin_abs="$(pwd)/bin/cmake" +popd + +pushd "$LLVM_RELEASE_BUILD_DIRNAME" + +# LLVM requires you to download the source for LLVM and the Clang frontend +# separately. The alternative is checking out their SVN repo, which takes much +# longer. +curl -L -O "https://releases.llvm.org/${LLVM_VERSION}/llvm-${LLVM_VERSION}.src.tar.xz" +curl -L -O "https://releases.llvm.org/${LLVM_VERSION}/cfe-${LLVM_VERSION}.src.tar.xz" +tar xf "llvm-${LLVM_VERSION}.src.tar.xz" +tar xf "cfe-${LLVM_VERSION}.src.tar.xz" + +mkdir -p "$LLVM_BUILD_TMP_DIR" +pushd "$LLVM_BUILD_TMP_DIR" + +"$cmake_linux_bin_abs" \ + -DCMAKE_BUILD_TYPE=Release \ + -DLLVM_EXTERNAL_CLANG_SOURCE_DIR="../cfe-${LLVM_VERSION}.src" \ + -DLLVM_EXTERNAL_PROJECTS='clang' \ + "../llvm-${LLVM_VERSION}.src" + +# NB: There appear to be race conditions when running make with any parallelism +# here in a Docker image. +make + +llvm_linux_source_release_dir_abs="$(pwd)" + +popd + +mkdir -p "$LLVM_TMP_LINUX_PKG_DIR" +pushd "$LLVM_TMP_LINUX_PKG_DIR" + +extract-required-files-from-unpacked-llvm \ + "$llvm_linux_source_release_dir_abs" \ + "$LLVM_PANTS_ARCHIVE_NAME" + +llvm_linux_packaged_abs="$(pwd)/${LLVM_PANTS_ARCHIVE_NAME}" + +popd + +popd + +mkdir -p "${CLANG_SUPPORTDIR}/linux/x86_64/${LLVM_VERSION}" +cp "$llvm_linux_packaged_abs" "${CLANG_SUPPORTDIR}/linux/x86_64/${LLVM_VERSION}/${LLVM_PANTS_ARCHIVE_NAME}" diff --git a/build-cmake-3.9.5.sh b/build-cmake-3.9.5.sh index 0b41a04..fdcc902 100755 --- a/build-cmake-3.9.5.sh +++ b/build-cmake-3.9.5.sh @@ -20,6 +20,6 @@ for rev in "10.8" "10.9" "10.10" "10.11" "10.12" "10.13"; do DEST_BASE="build-support/bin/cmake/mac/${rev}" mkdir -p "${DEST_BASE}" pushd "${DEST_BASE}" > /dev/null - ln -s "../10.7/3.9.5" "3.9.5" + ln -sf "../10.7/3.9.5" "3.9.5" popd > /dev/null done diff --git a/build-support/bin/clang/linux/x86_64/5.0.1/clang.tar.gz b/build-support/bin/clang/linux/x86_64/5.0.1/clang.tar.gz new file mode 100644 index 0000000..ffdba1c Binary files /dev/null and b/build-support/bin/clang/linux/x86_64/5.0.1/clang.tar.gz differ diff --git a/build-support/bin/clang/mac/10.10/5.0.1/clang.tar.gz b/build-support/bin/clang/mac/10.10/5.0.1/clang.tar.gz new file mode 100644 index 0000000..6d322b0 Binary files /dev/null and b/build-support/bin/clang/mac/10.10/5.0.1/clang.tar.gz differ diff --git a/build-support/bin/clang/mac/10.11/5.0.1/clang.tar.gz b/build-support/bin/clang/mac/10.11/5.0.1/clang.tar.gz new file mode 100644 index 0000000..6d322b0 Binary files /dev/null and b/build-support/bin/clang/mac/10.11/5.0.1/clang.tar.gz differ diff --git a/build-support/bin/clang/mac/10.12/5.0.1/clang.tar.gz b/build-support/bin/clang/mac/10.12/5.0.1/clang.tar.gz new file mode 100644 index 0000000..6d322b0 Binary files /dev/null and b/build-support/bin/clang/mac/10.12/5.0.1/clang.tar.gz differ diff --git a/build-support/bin/clang/mac/10.13/5.0.1/clang.tar.gz b/build-support/bin/clang/mac/10.13/5.0.1/clang.tar.gz new file mode 100644 index 0000000..6d322b0 Binary files /dev/null and b/build-support/bin/clang/mac/10.13/5.0.1/clang.tar.gz differ diff --git a/build-support/bin/clang/mac/10.7/5.0.1/clang.tar.gz b/build-support/bin/clang/mac/10.7/5.0.1/clang.tar.gz new file mode 100644 index 0000000..6d322b0 Binary files /dev/null and b/build-support/bin/clang/mac/10.7/5.0.1/clang.tar.gz differ diff --git a/build-support/bin/clang/mac/10.8/5.0.1/clang.tar.gz b/build-support/bin/clang/mac/10.8/5.0.1/clang.tar.gz new file mode 100644 index 0000000..6d322b0 Binary files /dev/null and b/build-support/bin/clang/mac/10.8/5.0.1/clang.tar.gz differ diff --git a/build-support/bin/clang/mac/10.9/5.0.1/clang.tar.gz b/build-support/bin/clang/mac/10.9/5.0.1/clang.tar.gz new file mode 100644 index 0000000..6d322b0 Binary files /dev/null and b/build-support/bin/clang/mac/10.9/5.0.1/clang.tar.gz differ