Skip to content
Snippets Groups Projects
395040f712d0c06ebd18448288afd47e946db7ff_f3f61e5e417603d6632c05cb282f802a150c2a9b.hash-material.yml 96.30 KiB
- "add_to_path": []
  "binary_archives": !!null |-
    null
  "build_from_source": !!bool |-
    false
  "builds":
    "default":
      "build_dependencies":
      - |-
        cmake
      "configure": |+
        extract.sh --into "$BUILD_DIR/source" "https://github.com/llvm/llvm-project/archive/llvmorg-10.0.0.tar.gz"
        sed -i 's|GIT_FOUND|FALSE|g' "$BUILD_DIR/source/llvm/cmake/modules/VersionFromVCS.cmake"
        mkdir -p "$BUILD_DIR"
        cd "$BUILD_DIR";
        cmake \
          -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
          -DCMAKE_INSTALL_SO_NO_EXE=0 \
          -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \
          "$BUILD_DIR/source/llvm" \
          -GNinja \
          -DCMAKE_BUILD_RPATH="\$ORIGIN/../lib:$ORCHESTRA_ROOT/lib" \
          -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib" \
          -DCMAKE_BUILD_TYPE="Release" \
          -DCMAKE_EXE_LINKER_FLAGS=" " \
          -DCMAKE_SHARED_LINKER_FLAGS=" " \
          -DCMAKE_MODULE_LINKER_FLAGS=" " \
          -DCMAKE_CXX_FLAGS=" " \
          -DLLVM_TARGETS_TO_BUILD="AArch64;AMDGPU;ARM;Mips;SystemZ;X86" \
          -DLLVM_ENABLE_DUMP=ON \
          -DLLVM_ENABLE_TERMINFO=OFF \
          -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF \
          -DLLVM_ENABLE_Z3_SOLVER=OFF \
          -DLLVM_INCLUDE_GO_TESTS=OFF \
          -DLLVM_ENABLE_PROJECTS="clang;compiler-rt;libcxxabi;libcxx;clang-tools-extra" \
          -DBUILD_SHARED_LIBS=OFF \
          -Wno-dev

      "dependencies":
      - |-
        gcc-host-toolchain
      - |-
        libunwind
      "install": |
        cd "$BUILD_DIR"

        ninja ${JOBS:+-j$JOBS} install

        rm "${DESTDIR}${ORCHESTRA_ROOT}/lib64/libc++.so" || true
        echo 'INPUT(libc++.so.1 -lc++abi -lpthread)' > "${DESTDIR}${ORCHESTRA_ROOT}/lib64/libc++.so"

        if test -z "$DESTDIR"; then
          echo "Installing clang-release which will clobber LLVM!"
        else
          find ${DESTDIR}${ORCHESTRA_ROOT}/lib* -maxdepth 1 -not -type d \( -name libLLVM* -or -name libclang* \) -delete;
          rm ${DESTDIR}${ORCHESTRA_ROOT}/bin/opt || true
          rm ${DESTDIR}${ORCHESTRA_ROOT}/bin/llvm-config || true
          rm -rf ${DESTDIR}${ORCHESTRA_ROOT}/lib*/cmake/ || true
          rm -rf ${DESTDIR}${ORCHESTRA_ROOT}/include/clang/ || true
          rm -rf ${DESTDIR}${ORCHESTRA_ROOT}/include/clang-c/ || true
          rm -rf ${DESTDIR}${ORCHESTRA_ROOT}/include/llvm/ || true
          rm -rf ${DESTDIR}${ORCHESTRA_ROOT}/include/llvm-c/ || true
        fi

        mkdir -p "${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin"
        cp "${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py" "${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/clang"
        cp "${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py" "${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/clang++"
      "ndebug": !!bool |-
        true
  "commit": !!null |-