commit 56eed81fdbfb786dc2248347d899cbbfd1c591b2 Author: Georg Koppen gk@torproject.org Date: Sun Aug 9 10:32:26 2020 +0000
Bug 40037: Add clang-source project --- projects/clang-source/build | 36 ++++++++++++++++++++++++++++++++++++ projects/clang-source/config | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+)
diff --git a/projects/clang-source/build b/projects/clang-source/build new file mode 100644 index 0000000..5aebfb1 --- /dev/null +++ b/projects/clang-source/build @@ -0,0 +1,36 @@ +#!/bin/bash +[% c("var/set_default_env") -%] +distdir=/var/tmp/dist/[% project %] +mkdir -p /var/tmp/dist +mkdir -p /var/tmp/build +cd /var/tmp/build +tar -xf $rootdir/[% c('input_files_by_name/llvm') %] +tar -xf $rootdir/[% c('input_files_by_name/clang') %] +tar -xf $rootdir/[% c('input_files_by_name/clang-tools-extra') %] +tar -xf $rootdir/[% c('input_files_by_name/libcxx') %] +tar -xf $rootdir/[% c('input_files_by_name/libcxxabi') %] +tar -xf $rootdir/[% c('input_files_by_name/lld') %] +tar -xf $rootdir/[% c('input_files_by_name/compiler-rt') %] +tar -xf $rootdir/[% c('input_files_by_name/libunwind') %] +mv llvm-* llvm +# LLVM has reproducibility issues when optimizing bitcode, which we need to +# patch. See: #32053 for more details. +patch -p1 < $rootdir/43909.patch +mv clang-* llvm/tools/clang +extra_dir=llvm/tools/clang/tools/extra +mkdir $extra_dir +mv clang-tools-extra-* $extra_dir +mv libcxx-* llvm/projects/libcxx +mv libcxxabi-* llvm/projects/libcxxabi +mv lld-* llvm/tools/lld +mv compiler-rt-* llvm/projects/compiler-rt +# We need libunwind only for mingw-w64-clang, don't include it as tightly by +# putting it into projects/ +mv libunwind-* llvm/libunwind +mv llvm $distdir + +cd /var/tmp/dist +[% c('tar', { + tar_src => [ project ], + tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'), + }) %] diff --git a/projects/clang-source/config b/projects/clang-source/config new file mode 100644 index 0000000..d0ae90c --- /dev/null +++ b/projects/clang-source/config @@ -0,0 +1,32 @@ +# vim: filetype=yaml sw=2 +version: 9.0.1 +filename: '[% project %]-[% c("version") %]-[% c("var/build_id") %].tar.gz' +gpg_keyring: clang.gpg +sig_ext: sig + +input_files: + - URL: 'https://github.com/llvm/llvm-project/releases/download/llvmorg-%5B% c("version") %]/llvm-[% c("version") %].src.tar.xz' + name: llvm + file_gpg_id: 1 + - URL: 'https://github.com/llvm/llvm-project/releases/download/llvmorg-%5B% c("version") %]/clang-[% c("version") %].src.tar.xz' + name: clang + file_gpg_id: 1 + - URL: 'https://github.com/llvm/llvm-project/releases/download/llvmorg-%5B% c("version") %]/clang-tools-extra-[% c("version") %].src.tar.xz' + name: clang-tools-extra + file_gpg_id: 1 + - URL: 'https://github.com/llvm/llvm-project/releases/download/llvmorg-%5B% c("version") %]/libcxx-[% c("version") %].src.tar.xz' + name: libcxx + file_gpg_id: 1 + - URL: 'https://github.com/llvm/llvm-project/releases/download/llvmorg-%5B% c("version") %]/libcxxabi-[% c("version") %].src.tar.xz' + name: libcxxabi + file_gpg_id: 1 + - URL: 'https://github.com/llvm/llvm-project/releases/download/llvmorg-%5B% c("version") %]/lld-[% c("version") %].src.tar.xz' + name: lld + file_gpg_id: 1 + - URL: 'https://github.com/llvm/llvm-project/releases/download/llvmorg-%5B% c("version") %]/compiler-rt-[% c("version") %].src.tar.xz' + name: compiler-rt + file_gpg_id: 1 + - URL: 'https://github.com/llvm/llvm-project/releases/download/llvmorg-%5B% c("version") %]/libunwind-[% c("version") %].src.tar.xz' + name: libunwind + file_gpg_id: 1 + - filename: 43909.patch