7 echo "Usage: ${0} <commit_id>"
11 target="x86_64-fortanix-unknown-sgx"
12 url="https://github.com/fortanix/llvm-project/archive/${1}.tar.gz"
13 repo_name="llvm-project"
16 curl https://apt.llvm.org/llvm-snapshot.gpg.key|apt-key add -
17 add-apt-repository -y 'deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic main'
19 apt-get install -y --no-install-recommends \
29 dir_name="${target}_temp"
34 # Clone Fortanix's fork of llvm-project which has a port of libunwind
35 fetch_github_commit_archive "$repo_name" "$url"
36 cd "${repo_name}/libunwind"
41 target_CC="CC_${target//-/_}"
42 target_CXX="CXX_${target//-/_}"
43 target_CFLAGS="CFLAGS_${target//-/_}"
44 target_CXXFLAGS="CXXFLAGS_${target//-/_}"
45 cmake -DCMAKE_BUILD_TYPE="RELEASE" -DRUST_SGX=1 -G "Unix Makefiles" \
46 -DCMAKE_C_COMPILER="${!target_CC}" -DCMAKE_CXX_COMPILER="${!target_CXX}" \
47 -DCMAKE_C_FLAGS="${!target_CFLAGS}" -DCMAKE_CXX_FLAGS="${!target_CXXFLAGS}" \
48 -DCMAKE_C_COMPILER_TARGET=$target -DCMAKE_CXX_COMPILER_TARGET=$target \
49 -DLLVM_ENABLE_WARNINGS=1 -DLIBUNWIND_ENABLE_WERROR=1 -DLIBUNWIND_ENABLE_PEDANTIC=0 \
50 -DLLVM_PATH=../../llvm/ ../
52 install -D "lib/libunwind.a" "/${target}/lib/libunwind.a"
57 { set +x; } 2>/dev/null
61 hide_output install_prereq