- "add_to_path": [] "builds": "default": "build_dependencies": - |- ninja - |- cmake - |- host-cxx-toolchain "configure": | mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" extract.sh --into "$BUILD_DIR/source" --save-as "aws-sdk-1.11.130.tar.gz" "https://github.com/aws/aws-sdk-cpp/archive/refs/tags/1.11.130.tar.gz" pushd source &> /dev/null patch -p1 < "${ORCHESTRA_DOTDIR}/patches/aws-sdk-force-shared.patch" function curl() { if [[ $# != 3 || $2 != "--output" ]]; then return 1 fi FILENAME="$(basename "$1")" "${ORCHESTRA_DOTDIR}/support/fetch.sh" "$1" mv "$FILENAME" "$3" } export UNZIP="-qq" source ./prefetch_crt_dependency.sh popd &> /dev/null cmake ./source \ -GNinja \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_C_COMPILER=clang \ -DCMAKE_CXX_COMPILER=clang++ \ -DCMAKE_BUILD_TYPE=Release \ -DBUILD_SHARED_LIBS=ON \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DFORCE_CURL=ON \ -DBUILD_ONLY="s3" \ -DENABLE_UNITY_BUILD=OFF \ -DENABLE_RTTI=OFF \ -DCPP_STANDARD=20 \ -DENABLE_TESTING=OFF "dependencies": - |- host-libcxx - |- curl - |- openssl - |- zlib "install": | cd "$BUILD_DIR" ninja ${JOBS:+-j$JOBS} install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/LICENSE "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-cxx-toolchain "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "https://boostorg.jfrog.io/artifactory/main/release/1.81.0/source/boost_1_81_0.tar.bz2" cd "$BUILD_DIR" # Use --target=x86_64-unknown-linux-gnu instead --target=x86_64-pc-linux sed \ -i \ 's/"--target=.*"/"--target=x86_64-unknown-linux-gnu"/' \ tools/build/src/tools/clang.jam ./bootstrap.sh \ --prefix="$ORCHESTRA_ROOT" \ --with-libraries=regex,test \ --without-icu "dependencies": - |- host-libcxx - |- libunwind "install": |+ cd "$BUILD_DIR" ./b2 \ --prefix="${DESTDIR}${ORCHESTRA_ROOT}" \ --ignore-site-config toolset='clang' ./b2 \ --prefix="${DESTDIR}${ORCHESTRA_ROOT}" \ --ignore-site-config toolset='clang' \ install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- LICENSE_1_0.txt "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://sourceware.org/pub/bzip2/bzip2-1.0.8.tar.gz sed 's/-Winline//g' -i "$BUILD_DIR"/Makefile* "dependencies": [] "install": |+ cd "$BUILD_DIR" # Build make ${JOBS:+-j$JOBS} -f Makefile-libbz2_so PREFIX=/ make ${JOBS:+-j$JOBS} bzip2 bzip2recover PREFIX=/ # Install INSTALLDIR="${DESTDIR}${ORCHESTRA_ROOT}" install -dm755 "$INSTALLDIR"/{bin,lib64,include,lib64/pkgconfig} install -m755 bzip2-shared "$INSTALLDIR"/bin/bzip2 install -m755 bzip2recover bzdiff bzgrep bzmore "$INSTALLDIR"/bin ln -sf bzip2 "$INSTALLDIR"/bin/bunzip2 ln -sf bzip2 "$INSTALLDIR"/bin/bzcat cp -a libbz2.so* "$INSTALLDIR"/lib64 ln -s libbz2.so.1.0.8 "$INSTALLDIR"/lib64/libbz2.so install -m644 bzlib.h "$INSTALLDIR"/include/ cat > "$INSTALLDIR"/lib64/pkgconfig/bzip2.pc <<'EOF' prefix=${pcfiledir}/../.. exec_prefix=${prefix} bindir=${exec_prefix}/bin libdir=${exec_prefix}/lib64 includedir=${prefix}/include Name: bzip2 Description: A file compression library Version: 1.0.8 Libs: -L${libdir} -lbz2 Cflags: -I${includedir} EOF "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- LICENSE "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- glibc - |- cmake - |- ninja - |- clang-vanilla "configure": |+ extract.sh --into "$BUILD_DIR/source" "https://github.com/revng/llvm-project/archive/799f199.tar.gz" SUPPORT_UNITTESTS="$BUILD_DIR/source/llvm/unittests/Support" rm "$SUPPORT_UNITTESTS/JSONTest.cpp" rm "$SUPPORT_UNITTESTS/DJBTest.cpp" grep -vE 'JSONTest.cpp|DJBTest.cpp' "$SUPPORT_UNITTESTS/CMakeLists.txt" > "$SUPPORT_UNITTESTS/CMakeLists.txt.tmp" mv "$SUPPORT_UNITTESTS/CMakeLists.txt.tmp" "$SUPPORT_UNITTESTS/CMakeLists.txt" sed -i 's|GIT_FOUND|FALSE|g' "$BUILD_DIR/source/llvm/cmake/modules/VersionFromVCS.cmake" export PATH="$ORCHESTRA_ROOT/clang-vanilla/wrapped-bin:$ORCHESTRA_ROOT/clang-vanilla/bin:$PATH" export HARD_FLAGS_CXX_CLANG="" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$BUILD_DIR/source/llvm" \ -GNinja \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_BUILD_RPATH="\$ORIGIN/../lib:$ORCHESTRA_ROOT/lib" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib" \ -DCMAKE_BUILD_TYPE="Release" \ -DCMAKE_EXE_LINKER_FLAGS="-w" \ -DCMAKE_SHARED_LINKER_FLAGS="-w" \ -DCMAKE_MODULE_LINKER_FLAGS="-w" \ -DCMAKE_C_FLAGS="-w" \ -DCMAKE_CXX_FLAGS="-w" \ -DLLVM_TARGETS_TO_BUILD="AArch64;ARM;Mips;SystemZ;X86" \ -DLLVM_INSTALL_UTILS=ON \ -DLLVM_ENABLE_DUMP=ON \ -DLLVM_ENABLE_TERMINFO=OFF \ -DCMAKE_CXX_STANDARD=20 \ -DLLVM_ENABLE_Z3_SOLVER=OFF \ -DLLVM_ENABLE_ZLIB=ON \ -DLLVM_ENABLE_LIBEDIT=ON \ -DLLVM_ENABLE_LIBXML2=OFF \ -DLLVM_ENABLE_ZSTD=OFF \ -DLLVM_ENABLE_PROJECTS="clang;compiler-rt;clang-tools-extra;lld" \ -DBUILD_SHARED_LIBS=OFF \ -DCOMPILER_RT_INCLUDE_TESTS=OFF \ -DLLVM_USE_LINKER=mold \ -DLLVM_BUILD_INSTRUMENTED=IR \ -DLLVM_BUILD_RUNTIME=No \ -DCMAKE_AR=$ORCHESTRA_ROOT/clang-vanilla/bin/llvm-ar \ -DCMAKE_RANLIB=$ORCHESTRA_ROOT/clang-vanilla/bin/llvm-ranlib \ -DCMAKE_C_COMPILER=$ORCHESTRA_ROOT/clang-vanilla/wrapped-bin/clang \ -DCMAKE_CXX_COMPILER=$ORCHESTRA_ROOT/clang-vanilla/wrapped-bin/clang++ \ -DLLVM_TARGETS_TO_BUILD=X86 \ -Wno-dev "dependencies": - |- gcc-host-toolchain - |- libunwind - |- libedit - |- zlib - |- mold "install": |+ export PATH="$ORCHESTRA_ROOT/clang-vanilla/wrapped-bin:$ORCHESTRA_ROOT/clang-vanilla/bin:$PATH" export HARD_FLAGS_CXX_CLANG="" cd "$BUILD_DIR" ninja ${JOBS:+-j$JOBS} clang ninja ${JOBS:+-j$JOBS} check-llvm || true ninja ${JOBS:+-j$JOBS} check-clang || true rm -rf build-for-profiling mkdir build-for-profiling cd build-for-profiling cmake \ "$BUILD_DIR/source/llvm" \ -GNinja \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_C_COMPILER="$BUILD_DIR/bin/clang" \ -DCMAKE_CXX_COMPILER="$BUILD_DIR/bin/clang++" \ -DLLVM_ENABLE_TERMINFO=OFF \ -DCMAKE_CXX_STANDARD=20 \ -DLLVM_ENABLE_Z3_SOLVER=OFF \ -DLLVM_TARGETS_TO_BUILD=X86 \ -DCMAKE_BUILD_TYPE=RelWithDebInfo ninja ${JOBS:+-j$JOBS} PROFDATA_DIR="${DESTDIR}${ORCHESTRA_ROOT}/share/profdata" mkdir -p "$PROFDATA_DIR" llvm-profdata merge -output="$PROFDATA_DIR/clang-release.prof" $BUILD_DIR/profiles/*.profraw "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/llvm/LICENSE.TXT "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- glibc - |- cmake - |- ninja - |- clang-vanilla - |- clang-profiling-data "configure": |+ extract.sh --into "$BUILD_DIR/source" "https://github.com/revng/llvm-project/archive/799f199.tar.gz" sed -i 's|GIT_FOUND|FALSE|g' "$BUILD_DIR/source/llvm/cmake/modules/VersionFromVCS.cmake" export PATH="$ORCHESTRA_ROOT/clang-vanilla/wrapped-bin:$ORCHESTRA_ROOT/clang-vanilla/bin:$PATH" export HARD_FLAGS_CXX_CLANG="" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$BUILD_DIR/source/llvm" \ -GNinja \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_BUILD_RPATH="\$ORIGIN/../lib:$ORCHESTRA_ROOT/lib" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib" \ -DCMAKE_BUILD_TYPE="Release" \ -DCMAKE_EXE_LINKER_FLAGS="-w -pthread" \ -DCMAKE_SHARED_LINKER_FLAGS="-w -pthread" \ -DCMAKE_MODULE_LINKER_FLAGS="-w -pthread" \ -DCMAKE_C_FLAGS="-w -pthread" \ -DCMAKE_CXX_FLAGS="-w -pthread" \ -DLLVM_TARGETS_TO_BUILD="AArch64;ARM;Mips;SystemZ;X86" \ -DLLVM_INSTALL_UTILS=ON \ -DLLVM_ENABLE_DUMP=ON \ -DLLVM_ENABLE_TERMINFO=OFF \ -DCMAKE_CXX_STANDARD=20 \ -DLLVM_ENABLE_Z3_SOLVER=OFF \ -DLLVM_ENABLE_ZLIB=ON \ -DLLVM_ENABLE_LIBEDIT=ON \ -DLLVM_ENABLE_LIBXML2=OFF \ -DLLVM_ENABLE_ZSTD=OFF \ -DLLVM_ENABLE_PROJECTS="clang;compiler-rt;clang-tools-extra;lld" \ -DBUILD_SHARED_LIBS=ON \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT/lib/llvm/clang-release" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib/llvm/clang-release/lib:$RPATH_PLACEHOLDER/lib" \ -DCOMPILER_RT_INCLUDE_TESTS=OFF \ -DLLVM_USE_LINKER=mold \ -DCMAKE_AR=$ORCHESTRA_ROOT/clang-vanilla/bin/llvm-ar \ -DCMAKE_RANLIB=$ORCHESTRA_ROOT/clang-vanilla/bin/llvm-ranlib \ -DCMAKE_C_COMPILER=$ORCHESTRA_ROOT/clang-vanilla/wrapped-bin/clang \ -DCMAKE_CXX_COMPILER=$ORCHESTRA_ROOT/clang-vanilla/wrapped-bin/clang++ \ -DLLVM_PROFDATA_FILE="$ORCHESTRA_ROOT/share/profdata/clang-release.prof" \ -Wno-dev "dependencies": - |- gcc-host-toolchain - |- libunwind - |- libedit - |- zlib - |- mold "install": |2+ export PATH="$ORCHESTRA_ROOT/clang-vanilla/wrapped-bin:$ORCHESTRA_ROOT/clang-vanilla/bin:$PATH" export HARD_FLAGS_CXX_CLANG="" cd "$BUILD_DIR" # Build ninja ${JOBS:+-j$JOBS} install # Run tests export HARD_FLAGS_C_CLANG="-w" export HARD_FLAGS_CXX_CLANG="-w" if test "$RUN_TESTS" -eq 1; then timeout -v $((2 * 60 * 60)) ninja ${JOBS:+-j$JOBS} check-all fi # Symlink to /lib/llvm/clang-release/bin/* to /bin for EXECUTABLE in "${DESTDIR}${ORCHESTRA_ROOT}/lib/llvm/clang-release/bin/"*; do ln \ -s $( realpath \ --no-symlinks \ --relative-to="${DESTDIR}${ORCHESTRA_ROOT}/bin" \ "${EXECUTABLE}" ) \ "${DESTDIR}${ORCHESTRA_ROOT}/bin" done # Leave `opt`, `llvm-config` and `llvm-symbolizer` to the `llvm` component rm -f "${DESTDIR}${ORCHESTRA_ROOT}/bin/opt"* rm -f "${DESTDIR}${ORCHESTRA_ROOT}/bin/llvm-config"* rm -f "${DESTDIR}${ORCHESTRA_ROOT}/bin/llvm-symbolizer"* # Create wrappers mkdir -p "${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin" COMPILER_WRAPPER="${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py" cd "${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin" cp -a "$COMPILER_WRAPPER" clang cp -a "$COMPILER_WRAPPER" clang++ cp -a "$COMPILER_WRAPPER" clang-tidy "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/llvm/LICENSE.TXT "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- glibc - |- cmake - |- ninja - |- clang-release - |- gcc-host-toolchain "configure": |+ extract.sh --into "$BUILD_DIR/source" "https://github.com/revng/llvm-project/archive/799f199.tar.gz" sed -i 's|GIT_FOUND|FALSE|g' "$BUILD_DIR/source/llvm/cmake/modules/VersionFromVCS.cmake" export HARD_FLAGS_CXX_CLANG="" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$BUILD_DIR/source/llvm" \ -GNinja \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_BUILD_RPATH="\$ORIGIN/../lib:$ORCHESTRA_ROOT/lib" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib" \ -DCMAKE_BUILD_TYPE="Release" \ -DCMAKE_EXE_LINKER_FLAGS="-pthread" \ -DCMAKE_SHARED_LINKER_FLAGS="-pthread" \ -DCMAKE_MODULE_LINKER_FLAGS="-pthread" \ -DCMAKE_C_FLAGS="-pthread" \ -DCMAKE_CXX_FLAGS="-pthread" \ -DLLVM_TARGETS_TO_BUILD="AArch64;ARM;Mips;SystemZ;X86" \ -DLLVM_INSTALL_UTILS=ON \ -DLLVM_ENABLE_DUMP=ON \ -DLLVM_ENABLE_TERMINFO=OFF \ -DCMAKE_CXX_STANDARD=20 \ -DLLVM_ENABLE_Z3_SOLVER=OFF \ -DLLVM_ENABLE_ZLIB=ON \ -DLLVM_ENABLE_LIBEDIT=ON \ -DLLVM_ENABLE_LIBXML2=OFF \ -DLLVM_ENABLE_ZSTD=OFF \ -DCMAKE_C_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang" \ -DCMAKE_CXX_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang++" \ -DLLVM_ENABLE_RUNTIMES="libcxxabi;libcxx" \ -DBUILD_SHARED_LIBS=ON \ -DLIBCXXABI_HAS_CXA_THREAD_ATEXIT_IMPL=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT/lib/llvm/clang-release" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib/llvm/clang-release/lib:$RPATH_PLACEHOLDER/lib" \ -Wno-dev "dependencies": - |- libunwind - |- mold "install": |+ export HARD_FLAGS_CXX_CLANG="" cd "$BUILD_DIR" # Build ninja ${JOBS:+-j$JOBS} -v runtimes ninja ${JOBS:+-j$JOBS} -v install-runtimes # Run tests if test "$RUN_TESTS" -eq 1; then ninja ${JOBS:+-j$JOBS} check-runtimes fi # Fix libc++ LIBDIR="${DESTDIR}${ORCHESTRA_ROOT}/lib/llvm/clang-release/lib/x86_64-unknown-linux-gnu/" LIBCXX="${LIBDIR}/libc++.so" rm "${LIBCXX}" echo 'INPUT(libc++.so.1 -lc++abi -lpthread)' > "${LIBCXX}" chmod +x "${LIBDIR}"/lib*.so* "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/llvm/LICENSE.TXT "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- glibc - |- cmake - |- ninja "configure": |+ extract.sh --into "$BUILD_DIR/source" "https://github.com/revng/llvm-project/archive/799f199.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_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$BUILD_DIR/source/llvm" \ -GNinja \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_BUILD_RPATH="\$ORIGIN/../lib:$ORCHESTRA_ROOT/lib" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib" \ -DCMAKE_BUILD_TYPE="Release" \ -DCMAKE_EXE_LINKER_FLAGS="-w" \ -DCMAKE_SHARED_LINKER_FLAGS="-w" \ -DCMAKE_MODULE_LINKER_FLAGS="-w" \ -DCMAKE_C_FLAGS="-w" \ -DCMAKE_CXX_FLAGS="-w" \ -DLLVM_TARGETS_TO_BUILD="AArch64;ARM;Mips;SystemZ;X86" \ -DLLVM_INSTALL_UTILS=ON \ -DLLVM_ENABLE_DUMP=ON \ -DLLVM_ENABLE_TERMINFO=OFF \ -DCMAKE_CXX_STANDARD=20 \ -DLLVM_ENABLE_Z3_SOLVER=OFF \ -DLLVM_ENABLE_ZLIB=ON \ -DLLVM_ENABLE_LIBEDIT=ON \ -DLLVM_ENABLE_LIBXML2=OFF \ -DLLVM_ENABLE_ZSTD=OFF \ -DLLVM_ENABLE_PROJECTS="clang;lld;compiler-rt" \ -DBUILD_SHARED_LIBS=OFF \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT/clang-vanilla" \ -DLLVM_TARGETS_TO_BUILD="X86" \ -DCOMPILER_RT_INCLUDE_TESTS=OFF \ -Wno-dev "dependencies": - |- gcc-host-toolchain - |- libunwind - |- libedit - |- zlib - |- mold "install": |+ cd "$BUILD_DIR" ninja ${JOBS:+-j$JOBS} install COMPILER_WRAPPER="${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py" echo "25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}" | sha256sum -c - mkdir -p "${DESTDIR}${ORCHESTRA_ROOT}/clang-vanilla/wrapped-bin" cd "${DESTDIR}${ORCHESTRA_ROOT}/clang-vanilla/wrapped-bin" cp -a "$COMPILER_WRAPPER" clang cp -a "$COMPILER_WRAPPER" clang++ cp -a "$COMPILER_WRAPPER" clang-tidy "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/llvm/LICENSE.TXT "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- gcc-host-toolchain - |- ncurses "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://github.com/Kitware/CMake/releases/download/v3.25.2/cmake-3.25.2.tar.gz cd "$BUILD_DIR" && ./bootstrap \ --prefix="$ORCHESTRA_ROOT" \ --parallel=16 \ LDFLAGS="-static-libstdc++ -static-libgcc" \ -- -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_SHARED_LINKER_FLAGS="-static-libstdc++ -static-libgcc" \ -DCMAKE_MODULE_LINKER_FLAGS="-static-libstdc++ -static-libgcc" \ -DCMAKE_EXE_LINKER_FLAGS="-static-libstdc++ -static-libgcc" \ -DCMAKE_USE_OPENSSL=OFF "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- Licenses/README.rst "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://github.com/curl/curl/releases/download/curl-8_2_0/curl-8.2.0.tar.xz cd "$BUILD_DIR" ./configure \ --prefix="$ORCHESTRA_ROOT" \ --disable-static \ --disable-ldap \ --disable-ldaps \ --disable-dict \ --disable-mqtt \ --disable-gopher \ --disable-rtsp \ --disable-imap \ --disable-pop3 \ --disable-smtp \ --disable-smb \ --disable-manual \ --disable-ntlm \ --enable-ipv6 \ --with-openssl \ --with-nghttp2 \ --enable-openssl-auto-load-config "dependencies": - |- nghttp2 - |- openssl - |- zlib "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": |- mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" cat > requirements.txt <<'EOF' Cython==0.29.32 EOF pip-package-list.py \ cython \ -r requirements.txt \ > packages.csv mkdir -p packages cd packages while IFS=, read -r NAME URL; do fetch.sh "$URL" echo "$NAME" >> "../package-list.txt" done < ../packages.csv "dependencies": - |- python-base-packages "install": |- cd "$BUILD_DIR" export HARD_FLAGS_COMPILE="-I"$("${ORCHESTRA_DOTDIR}/support/get-python-path" include)" $HARD_FLAGS_COMPILE" export HARD_ALLOWED_INCLUDE_PATH="$HARD_ALLOWED_INCLUDE_PATH:/tmp" export HARD_ALLOWED_LIBRARY_PATH="$HARD_ALLOWED_LIBRARY_PATH:/tmp" python \ -m pip \ --disable-pip-version-check \ --no-python-version-warning \ install \ --compile \ --no-deps \ --no-index \ --no-build-isolation \ --no-warn-script-location \ --ignore-installed \ --root "$DESTDIR" \ --verbose \ packages/* PYTHON_PACKAGES_DIR="$DESTDIR$ORCHESTRA_ROOT/share/orchestra/python-packages/" mkdir -p "$PYTHON_PACKAGES_DIR" cp \ -a \ package-list.txt \ "$PYTHON_PACKAGES_DIR/cython.txt" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": !!null |- null "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- glibc - |- toolchain/host/linux-headers - |- gmp - |- mpc - |- mpfr "configure": | mkdir -p "$BUILD_DIR/source" extract.sh --into "$BUILD_DIR/source" https://ftp.gnu.org/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.gz cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" ./source/configure \ --prefix="$INSTALL_LINK_ONLY_PATH/early-gcc" \ --disable-multilib \ --enable-languages=c,c++ \ --disable-nls \ --disable-libsanitizer \ --with-glibc-version=2.13 \ --disable-bootstrap \ --with-sysroot=$INSTALL_LINK_ONLY_PATH \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --disable-libgomp \ CFLAGS_FOR_TARGET="--sysroot=$INSTALL_LINK_ONLY_PATH -I$ORCHESTRA_ROOT/include" \ CXXFLAGS_FOR_TARGET="--sysroot=$INSTALL_LINK_ONLY_PATH -I$ORCHESTRA_ROOT/include" \ LDFLAGS_FOR_TARGET="--sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -L$ORCHESTRA_ROOT/lib -L$INSTALL_LINK_ONLY_PATH/lib" "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "https://sourceware.org/elfutils/ftp/0.187/elfutils-0.187.tar.bz2" cd "$BUILD_DIR" ./configure \ --disable-nls \ --disable-thread-safety \ --program-prefix=eu- \ --with-zlib \ --without-bzlib \ --without-lzma \ --prefix="$ORCHESTRA_ROOT" \ --disable-debuginfod \ --disable-libdebuginfod \ CFLAGS="-Wno-error" "dependencies": - |- zlib "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "debug": "build_dependencies": - |- cmake - |- ninja - |- host-c-toolchain "configure": |2+ mkdir -p "$BUILD_DIR" export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh "https://github.com/libexpat/libexpat/releases/download/R_2_4_8/expat-2.4.8.tar.gz" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$SOURCE_DIR" \ -G"Ninja" \ -DCMAKE_C_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang" \ -DCMAKE_CXX_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang++" \ -DCMAKE_C_FLAGS="-ggdb3 -O0 " \ -DCMAKE_CXX_FLAGS="-ggdb3 -O0 " \ -DCMAKE_BUILD_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_BUILD_TYPE="Debug" \ -DPython_FIND_VIRTUALENV=STANDARD "dependencies": [] "install": |2+ cmake --build "$BUILD_DIR" ${JOBS:+-j$JOBS} cmake --install "$BUILD_DIR" "ndebug": !!bool |- false "optimized": "build_dependencies": - |- cmake - |- ninja - |- host-c-toolchain "configure": |2+ mkdir -p "$BUILD_DIR" export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh "https://github.com/libexpat/libexpat/releases/download/R_2_4_8/expat-2.4.8.tar.gz" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$SOURCE_DIR" \ -G"Ninja" \ -DCMAKE_C_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang" \ -DCMAKE_CXX_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang++" \ -DCMAKE_C_FLAGS="-ggdb3 -O2 -fno-omit-frame-pointer " \ -DCMAKE_CXX_FLAGS="-ggdb3 -O2 -fno-omit-frame-pointer " \ -DCMAKE_BUILD_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_BUILD_TYPE="Debug" \ -DPython_FIND_VIRTUALENV=STANDARD "dependencies": [] "install": |2+ cmake --build "$BUILD_DIR" ${JOBS:+-j$JOBS} cmake --install "$BUILD_DIR" "ndebug": !!bool |- false "release": "build_dependencies": - |- cmake - |- ninja - |- host-c-toolchain "configure": |2+ mkdir -p "$BUILD_DIR" export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh "https://github.com/libexpat/libexpat/releases/download/R_2_4_8/expat-2.4.8.tar.gz" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$SOURCE_DIR" \ -G"Ninja" \ -DCMAKE_C_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang" \ -DCMAKE_CXX_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang++" \ -DCMAKE_C_FLAGS="-ggdb3 -O2 " \ -DCMAKE_CXX_FLAGS="-ggdb3 -O2 " \ -DCMAKE_BUILD_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_BUILD_TYPE="Release" \ -DPython_FIND_VIRTUALENV=STANDARD "dependencies": [] "install": |2+ cmake --build "$BUILD_DIR" ${JOBS:+-j$JOBS} cmake --install "$BUILD_DIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- optimized "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": |- mkdir -p "$BUILD_DIR" "dependencies": - |- gcc-runtime - |- toolchain/host/gcc - |- toolchain/host/binutils "install": |- exit 0 "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": !!null |- null "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- toolchain/host/gcc "configure": | mkdir -p "$BUILD_DIR" "dependencies": [] "install": |+ cd "$BUILD_DIR" cp -a "${ORCHESTRA_ROOT}/share/orchestra/toolchain_host_gcc.license" LICENSE.TXT tar xf "${ORCHESTRA_ROOT}/share/orchestra/save_for_later/gcc-runtime.tar.xz" \ -C "${DESTDIR}${ORCHESTRA_ROOT}" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- LICENSE.TXT "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain - |- meson - |- ninja "configure": | mkdir -p "$BUILD_DIR/source" extract.sh --into "$BUILD_DIR/source" https://download.gnome.org/sources/glib/2.64/glib-2.64.5.tar.xz find "$BUILD_DIR/source/" -name meson.build -exec sed -i "s|install\s*:\s*|install_rpath : '$RPATH_PLACEHOLDER/lib', \0|" {} \; sed -i 's|^.*HAVE_LANGINFO_.*1.*$||' "$BUILD_DIR/source/meson.build" sed -i -e '/subdir.*tests/d' "$BUILD_DIR"/source/{.,gio,glib}/meson.build CC=clang \ CXX=clang++ \ meson setup \ --buildtype plain \ --libdir=lib \ --prefix "$ORCHESTRA_ROOT" \ --wrap-mode nodownload \ -Ddefault_library=shared \ -Dselinux=disabled \ -Dxattr=false \ -Dlibmount=disabled \ -Dinternal_pcre=true \ -Dman=false \ -Ddtrace=false \ -Dsystemtap=false \ -Dgtk_doc=false \ -Dfam=false \ -Dinstalled_tests=false \ -Dnls=disabled \ "$BUILD_DIR" \ "$BUILD_DIR/source" "dependencies": - |- elfutils - |- libffi - |- zlib "install": |+ cd "$BUILD_DIR" export LANG= ninja ${JOBS:+-j$JOBS} ninja ${JOBS:+-j$JOBS} install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- libgcc "configure": | mkdir -p "$BUILD_DIR/source" extract.sh --into "$BUILD_DIR/source" https://ftp.gnu.org/gnu/glibc/glibc-2.13.tar.xz sed -i 's|test -n ".critic_missing"|false|g' "$BUILD_DIR/source/configure" sed -i 's|struct obstack ._obstack_compat|\0 = 0|g' "$BUILD_DIR/source/malloc/obstack.c" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/glibc-2.13-fix-isinf.patch" "$BUILD_DIR/source" cd $BUILD_DIR export CC="cc -no-pie -fuse-ld=bfd -Wl,-z,origin -Wl,--enable-new-dtags -Wl,-rpath,$RPATH_PLACEHOLDER/link-only/lib -L$INSTALL_LINK_ONLY_PATH/lib" ./source/configure \ --disable-profile \ --without-gd \ --enable-crypt \ --disable-static-pie \ --disable-systemtap \ --disable-nscd \ --disable-timezone-tools \ --enable-stack-protector=strong \ --enable-stackguard-randomization \ --disable-cet \ --without-selinux \ --without-cvs \ --disable-werror \ --enable-bind-now \ --disable-sanity-checks \ --prefix="$INSTALL_LINK_ONLY_PATH" \ CFLAGS="-w -O2 -fno-stack-protector -DNDEBUG -march=core2 -U_FORTIFY_SOURCE" "dependencies": [] "install": |+ cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install_root="$DESTDIR" install sed -i "s|$INSTALL_LINK_ONLY_PATH/lib/||g" \ "$DESTDIR$INSTALL_LINK_ONLY_PATH/lib/libpthread.so" \ "$DESTDIR$INSTALL_LINK_ONLY_PATH/lib/libc.so" ln -s . "$DESTDIR$INSTALL_LINK_ONLY_PATH/usr" rm -f "$DESTDIR$INSTALL_LINK_ONLY_PATH"/libexec/getconf/POSIX_V7_LP64_OFF64* rm -rf "$DESTDIR$INSTALL_LINK_ONLY_PATH"/bin # This file is needed because gcc fixinclude detects it when bootstrapping toolchains touch "$DESTDIR$INSTALL_LINK_ONLY_PATH/include/stdc-predef.h" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "https://gmplib.org/download/gmp/gmp-6.1.2.tar.xz" cd "$BUILD_DIR" && ./configure \ --prefix="$ORCHESTRA_ROOT" \ --enable-shared=no \ --enable-fat \ CFLAGS="-fPIC" \ CXXFLAGS="-fPIC" \ LDFLAGS="-static-libgcc" "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": |- mkdir -p "$BUILD_DIR" "dependencies": - |- glibc - |- toolchain/host/binutils - |- clang-release "install": |- exit 0 "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": !!null |- null "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": |- mkdir -p "$BUILD_DIR" "dependencies": - |- glibc - |- toolchain/host/binutils - |- clang-runtime - |- clang-release "install": |- exit 0 "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": !!null |- null "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": |- mkdir -p "$BUILD_DIR" "dependencies": - |- clang-runtime - |- gcc-runtime "install": |- exit 0 "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": !!null |- null "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-cxx-toolchain - |- python "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://github.com/unicode-org/icu/releases/download/release-71-1/icu4c-71_1-src.tgz cd "$BUILD_DIR" ./source/configure \ --disable-static \ --disable-debug \ --disable-samples \ --disable-tests \ --enable-shared \ --enable-tools \ --prefix="$ORCHESTRA_ROOT" "dependencies": - |- host-libcxx "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- LICENSE "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" fetch.sh --no-copy "${NON_REDISTRIBUTABLE_BASE_URL}/ida-installer" fetch.sh --no-copy "${NON_REDISTRIBUTABLE_BASE_URL}/ida.reg" INSTALLER="${SOURCE_ARCHIVES}/ida-installer" chmod +x "$INSTALLER" "dependencies": - |- ncurses - |- gcc-runtime "install": | if test -z "${IDA_INSTALLER_PASSWORD:-}"; then echo 'IDA_INSTALLER_PASSWORD is not set' exit 1 fi # Install IDA in /opt/ida INSTALLER="${SOURCE_ARCHIVES}/ida-installer" INSTALL_DIR="$DESTDIR$ORCHESTRA_ROOT" IDA_INSTALL_DIR="$INSTALL_DIR/opt/ida" mkdir -p "$IDA_INSTALL_DIR" OLDHOME="$HOME" export HOME="$BUILD_DIR" unshare -rn \ "$INSTALLER" \ --installpassword "$IDA_INSTALLER_PASSWORD" \ --prefix "$IDA_INSTALL_DIR" \ --mode unattended export HOME="$OLDHOME" # Cleanup rm -f /tmp/installbuilder_installer*.log # Disable Python plugin rm "$IDA_INSTALL_DIR/plugins/idapython"*".so" # Copy ida.reg cp -a "${SOURCE_ARCHIVES}/ida.reg" "$IDA_INSTALL_DIR" # Create a symlink to ncurses ln -s ../../lib64/libcurses.so "$IDA_INSTALL_DIR/" ln -s ../../lib64/libstdc++.so.6 "$IDA_INSTALL_DIR/" # Copy the license to the build directory mkdir -p "$BUILD_DIR" cp "$IDA_INSTALL_DIR/license.txt" "$BUILD_DIR" # Create wrapper scripts in /bin mkdir -p "$INSTALL_DIR/bin" find "$IDA_INSTALL_DIR" -maxdepth 1 -type f -executable -name "ida*" | while read EXECUTABLE; do NAME="$(basename "$EXECUTABLE")" cat > "$INSTALL_DIR/bin/$NAME" <<'EOF' #!/bin/bash SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) export IDAUSR="$(mktemp -d tmp.IDAUSR.XXXXXXXXXX)" trap 'rm -rf -- "$IDAUSR"' EXIT; cp -a "$SCRIPT_DIR/../opt/ida/ida.reg" "$IDAUSR" unshare -rn "$SCRIPT_DIR/../opt/ida/$(basename $0)" "$@" EOF chmod +x "$INSTALL_DIR/bin/$NAME" done "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- license.txt "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://github.com/libarchive/libarchive/releases/download/v3.7.1/libarchive-3.7.1.tar.xz cd "$BUILD_DIR" ./configure \ --disable-static \ --enable-shared \ --prefix="$ORCHESTRA_ROOT" \ --with-zlib \ --with-bz2lib \ --with-libb2 \ --with-lzma \ --without-xml2 \ --without-expat \ --disable-bsdtar \ --disable-bsdcat \ --disable-bsdcpio \ --disable-bsdunzip "dependencies": - |- libb2 - |- zlib - |- bzip2 - |- xz "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://github.com/BLAKE2/libb2/releases/download/v0.98.1/libb2-0.98.1.tar.gz cd "$BUILD_DIR" ./configure \ --disable-static \ --disable-native \ --enable-shared \ --enable-fat \ --prefix="$ORCHESTRA_ROOT" "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- gcc-host-toolchain - |- glibc "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://thrysoee.dk/editline/libedit-20221030-3.1.tar.gz cd "$BUILD_DIR" ./configure \ --disable-examples \ --disable-static \ --enable-shared \ --prefix="$ORCHESTRA_ROOT" \ CFLAGS="-I$ORCHESTRA_ROOT/include/ncursesw" "dependencies": - |- ncurses "install": |+ cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" rm "$DESTDIR$ORCHESTRA_ROOT/share/man/man3/history.3" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://github.com/libffi/libffi/releases/download/v3.4.2/libffi-3.4.2.tar.gz cd "$BUILD_DIR" ./configure \ --disable-multi-os-directory \ --disable-static \ --disable-pax_emutramp \ --disable-debug \ --prefix="$ORCHESTRA_ROOT" "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- LICENSE "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- toolchain/host/linux-headers - |- gmp - |- mpc - |- mpfr "configure": | mkdir -p "$BUILD_DIR/source" extract.sh --into "$BUILD_DIR/source" https://ftp.gnu.org/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.gz cd "$BUILD_DIR" ./source/configure \ --prefix="$INSTALL_LINK_ONLY_PATH" \ --disable-multilib \ --enable-languages=c \ --disable-nls \ --disable-libsanitizer \ --with-glibc-version=2.13 \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" "dependencies": [] "install": |+ cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} all-gcc make ${JOBS:+-j$JOBS} all-target-libgcc make ${JOBS:+-j$JOBS} install-target-libgcc cp -a "${DESTDIR}${INSTALL_LINK_ONLY_PATH}"/lib/gcc/x86_64-pc-linux-gnu/11.2.0/*.{a,o} "${DESTDIR}${INSTALL_LINK_ONLY_PATH}"/lib/ mkdir -p "${DESTDIR}${INSTALL_LINK_ONLY_PATH}"/include/ cp -a "${DESTDIR}${INSTALL_LINK_ONLY_PATH}"/lib/gcc/x86_64-pc-linux-gnu/11.2.0/include/* "${DESTDIR}${INSTALL_LINK_ONLY_PATH}"/include/ "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- gcc-host-toolchain - |- glibc "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://download.savannah.nongnu.org/releases/libunwind/libunwind-1.6.2.tar.gz cd "$BUILD_DIR" export CC="cc -fcommon" ./configure \ --enable-cxx-exceptions \ --disable-coredump \ --disable-ptrace \ --enable-setjmp \ --disable-debug-frame \ --disable-documentation \ --disable-minidebuginfo \ --disable-static \ --disable-conservative_checks \ --disable-debug \ --prefix="$ORCHESTRA_ROOT" "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://github.com/besser82/libxcrypt/releases/download/v4.4.28/libxcrypt-4.4.28.tar.xz cd "$BUILD_DIR" # By specifying --enable-obsolete-api=glibc we're providing libcrypt.so.1 # and not libcrypt.so.2. Python seems to link only to the former. # The latter should be preferred but we'd rather not ship both. ./configure \ --prefix="$ORCHESTRA_ROOT" \ --disable-static \ --enable-hashes=strong,glibc \ --enable-obsolete-api=glibc \ --disable-failure-tokens "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING.LIB "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- ninja - |- host-c-toolchain - |- cmake "configure": "mkdir -p \"$BUILD_DIR/source\"\nextract.sh --into \"$BUILD_DIR/source\" \"https://github.com/yaml/libyaml/archive/refs/tags/0.2.5.tar.gz\"\ncd \"$BUILD_DIR\"\ncmake \"$BUILD_DIR/source\" \\\n -GNinja \\\n -DCMAKE_INSTALL_MESSAGE=NEVER \\\n -DCMAKE_BUILD_TYPE=Release \\\n -DBUILD_SHARED_LIBS=On \\\n -DCMAKE_INSTALL_PREFIX=\"$ORCHESTRA_ROOT\" \n" "dependencies": [] "install": | cd "$BUILD_DIR" ninja ${JOBS:+-j$JOBS} install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/License "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": |- mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" cat > requirements.txt <<'EOF' # lit version should always match clang-release and llvm version lit==16.0.0 EOF pip-package-list.py \ lit \ -r requirements.txt \ > packages.csv mkdir -p packages cd packages while IFS=, read -r NAME URL; do fetch.sh "$URL" echo "$NAME" >> "../package-list.txt" done < ../packages.csv "dependencies": - |- python-base-packages "install": |- cd "$BUILD_DIR" export HARD_FLAGS_COMPILE="-I"$("${ORCHESTRA_DOTDIR}/support/get-python-path" include)" $HARD_FLAGS_COMPILE" export HARD_ALLOWED_INCLUDE_PATH="$HARD_ALLOWED_INCLUDE_PATH:/tmp" export HARD_ALLOWED_LIBRARY_PATH="$HARD_ALLOWED_LIBRARY_PATH:/tmp" python \ -m pip \ --disable-pip-version-check \ --no-python-version-warning \ install \ --compile \ --no-deps \ --no-index \ --no-build-isolation \ --no-warn-script-location \ --ignore-installed \ --root "$DESTDIR" \ --verbose \ packages/* PYTHON_PACKAGES_DIR="$DESTDIR$ORCHESTRA_ROOT/share/orchestra/python-packages/" mkdir -p "$PYTHON_PACKAGES_DIR" cp \ -a \ package-list.txt \ "$PYTHON_PACKAGES_DIR/lit.txt" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": !!null |- null "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "debug": "build_dependencies": - |- cmake - |- ninja - |- host-cxx-toolchain "configure": | mkdir -p "$BUILD_DIR" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$SOURCE_DIR/llvm" \ -GNinja \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_BUILD_RPATH="\$ORIGIN/../lib:$ORCHESTRA_ROOT/lib" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib" \ -DCMAKE_BUILD_TYPE="Debug" \ -DCMAKE_EXE_LINKER_FLAGS="-ggdb3 -O0 " \ -DCMAKE_SHARED_LINKER_FLAGS="-ggdb3 -O0 " \ -DCMAKE_MODULE_LINKER_FLAGS="-ggdb3 -O0 " \ -DCMAKE_C_FLAGS="-ggdb3 -O0 " \ -DCMAKE_CXX_FLAGS="-ggdb3 -O0 " \ -DLLVM_TARGETS_TO_BUILD="AArch64;ARM;Mips;SystemZ;X86" \ -DLLVM_INSTALL_UTILS=ON \ -DLLVM_ENABLE_DUMP=ON \ -DLLVM_ENABLE_TERMINFO=OFF \ -DCMAKE_CXX_STANDARD=20 \ -DLLVM_ENABLE_Z3_SOLVER=OFF \ -DLLVM_ENABLE_ZLIB=ON \ -DLLVM_ENABLE_LIBEDIT=ON \ -DLLVM_ENABLE_LIBXML2=OFF \ -DLLVM_ENABLE_ZSTD=OFF \ -DBUILD_SHARED_LIBS=ON \ -DLLVM_ENABLE_PROJECTS="clang;mlir" \ -DCMAKE_C_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang" \ -DCMAKE_CXX_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang++" \ -DLLVM_ENABLE_OCAMLDOC=OFF \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT/lib/llvm/llvm" \ -DLLVM_USE_LINKER=mold \ -Wno-dev "dependencies": - |- host-libcxx - |- libunwind - |- libedit - |- zlib - |- lit "install": | cd "$BUILD_DIR" ninja ${JOBS:+-j$JOBS} install if test "$RUN_TESTS" -eq 1; then ninja ${JOBS:+-j$JOBS} check-all fi "ndebug": !!bool |- false "optimized": "build_dependencies": - |- cmake - |- ninja - |- host-cxx-toolchain "configure": | mkdir -p "$BUILD_DIR" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$SOURCE_DIR/llvm" \ -GNinja \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_BUILD_RPATH="\$ORIGIN/../lib:$ORCHESTRA_ROOT/lib" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib" \ -DCMAKE_BUILD_TYPE="Debug" \ -DCMAKE_EXE_LINKER_FLAGS="-ggdb3 -O2 -fno-omit-frame-pointer " \ -DCMAKE_SHARED_LINKER_FLAGS="-ggdb3 -O2 -fno-omit-frame-pointer " \ -DCMAKE_MODULE_LINKER_FLAGS="-ggdb3 -O2 -fno-omit-frame-pointer " \ -DCMAKE_C_FLAGS="-ggdb3 -O2 -fno-omit-frame-pointer " \ -DCMAKE_CXX_FLAGS="-ggdb3 -O2 -fno-omit-frame-pointer " \ -DLLVM_TARGETS_TO_BUILD="AArch64;ARM;Mips;SystemZ;X86" \ -DLLVM_INSTALL_UTILS=ON \ -DLLVM_ENABLE_DUMP=ON \ -DLLVM_ENABLE_TERMINFO=OFF \ -DCMAKE_CXX_STANDARD=20 \ -DLLVM_ENABLE_Z3_SOLVER=OFF \ -DLLVM_ENABLE_ZLIB=ON \ -DLLVM_ENABLE_LIBEDIT=ON \ -DLLVM_ENABLE_LIBXML2=OFF \ -DLLVM_ENABLE_ZSTD=OFF \ -DBUILD_SHARED_LIBS=ON \ -DLLVM_ENABLE_PROJECTS="clang;mlir" \ -DCMAKE_C_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang" \ -DCMAKE_CXX_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang++" \ -DLLVM_ENABLE_OCAMLDOC=OFF \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT/lib/llvm/llvm" \ -DLLVM_USE_LINKER=mold \ -Wno-dev "dependencies": - |- host-libcxx - |- libunwind - |- libedit - |- zlib - |- lit "install": | cd "$BUILD_DIR" ninja ${JOBS:+-j$JOBS} install if test "$RUN_TESTS" -eq 1; then ninja ${JOBS:+-j$JOBS} check-all fi "ndebug": !!bool |- false "release": "build_dependencies": - |- cmake - |- ninja - |- host-cxx-toolchain "configure": | mkdir -p "$BUILD_DIR" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$SOURCE_DIR/llvm" \ -GNinja \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_BUILD_RPATH="\$ORIGIN/../lib:$ORCHESTRA_ROOT/lib" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib" \ -DCMAKE_BUILD_TYPE="Release" \ -DCMAKE_EXE_LINKER_FLAGS="-ggdb3 -O2 " \ -DCMAKE_SHARED_LINKER_FLAGS="-ggdb3 -O2 " \ -DCMAKE_MODULE_LINKER_FLAGS="-ggdb3 -O2 " \ -DCMAKE_C_FLAGS="-ggdb3 -O2 " \ -DCMAKE_CXX_FLAGS="-ggdb3 -O2 " \ -DLLVM_TARGETS_TO_BUILD="AArch64;ARM;Mips;SystemZ;X86" \ -DLLVM_INSTALL_UTILS=ON \ -DLLVM_ENABLE_DUMP=ON \ -DLLVM_ENABLE_TERMINFO=OFF \ -DCMAKE_CXX_STANDARD=20 \ -DLLVM_ENABLE_Z3_SOLVER=OFF \ -DLLVM_ENABLE_ZLIB=ON \ -DLLVM_ENABLE_LIBEDIT=ON \ -DLLVM_ENABLE_LIBXML2=OFF \ -DLLVM_ENABLE_ZSTD=OFF \ -DBUILD_SHARED_LIBS=ON \ -DLLVM_ENABLE_PROJECTS="clang;mlir" \ -DCMAKE_C_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang" \ -DCMAKE_CXX_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang++" \ -DLLVM_ENABLE_OCAMLDOC=OFF \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT/lib/llvm/llvm" \ -DLLVM_USE_LINKER=mold \ -Wno-dev "dependencies": - |- host-libcxx - |- libunwind - |- libedit - |- zlib - |- lit "install": | cd "$BUILD_DIR" ninja ${JOBS:+-j$JOBS} install if test "$RUN_TESTS" -eq 1; then ninja ${JOBS:+-j$JOBS} check-all fi "ndebug": !!bool |- true "commit": |- a90ab80cc3be84e66376af44224b95b77d01cecf "default_build": |- optimized "license": |- llvm/LICENSE.TXT "repository": |- llvm-project "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": |- mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" cat > requirements.txt <<'EOF' meson==0.56.2 EOF pip-package-list.py \ meson \ -r requirements.txt \ > packages.csv mkdir -p packages cd packages while IFS=, read -r NAME URL; do fetch.sh "$URL" echo "$NAME" >> "../package-list.txt" done < ../packages.csv "dependencies": - |- python-base-packages "install": |- cd "$BUILD_DIR" export HARD_FLAGS_COMPILE="-I"$("${ORCHESTRA_DOTDIR}/support/get-python-path" include)" $HARD_FLAGS_COMPILE" export HARD_ALLOWED_INCLUDE_PATH="$HARD_ALLOWED_INCLUDE_PATH:/tmp" export HARD_ALLOWED_LIBRARY_PATH="$HARD_ALLOWED_LIBRARY_PATH:/tmp" python \ -m pip \ --disable-pip-version-check \ --no-python-version-warning \ install \ --compile \ --no-deps \ --no-index \ --no-build-isolation \ --no-warn-script-location \ --ignore-installed \ --root "$DESTDIR" \ --verbose \ packages/* PYTHON_PACKAGES_DIR="$DESTDIR$ORCHESTRA_ROOT/share/orchestra/python-packages/" mkdir -p "$PYTHON_PACKAGES_DIR" cp \ -a \ package-list.txt \ "$PYTHON_PACKAGES_DIR/meson.txt" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": !!null |- null "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "debug": "build_dependencies": - |- cmake - |- ninja - |- glibc "configure": |2+ mkdir -p "$BUILD_DIR" export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh "https://github.com/rui314/mold/archive/refs/tags/v2.4.0.tar.gz" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$SOURCE_DIR" \ -G"Ninja" \ -DCMAKE_C_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang" \ -DCMAKE_CXX_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang++" \ -DCMAKE_C_FLAGS="-ggdb3 -O0 " \ -DCMAKE_CXX_FLAGS="-ggdb3 -O0 " \ -DCMAKE_BUILD_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_BUILD_TYPE="Debug" \ -DPython_FIND_VIRTUALENV=STANDARD \ -DCMAKE_C_COMPILER="gcc" \ -DCMAKE_CXX_COMPILER="g++" "dependencies": - |- gcc-host-toolchain "install": |2+ cmake --build "$BUILD_DIR" ${JOBS:+-j$JOBS} cmake --install "$BUILD_DIR" "ndebug": !!bool |- false "optimized": "build_dependencies": - |- cmake - |- ninja - |- glibc "configure": |2+ mkdir -p "$BUILD_DIR" export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh "https://github.com/rui314/mold/archive/refs/tags/v2.4.0.tar.gz" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$SOURCE_DIR" \ -G"Ninja" \ -DCMAKE_C_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang" \ -DCMAKE_CXX_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang++" \ -DCMAKE_C_FLAGS="-ggdb3 -O2 -fno-omit-frame-pointer " \ -DCMAKE_CXX_FLAGS="-ggdb3 -O2 -fno-omit-frame-pointer " \ -DCMAKE_BUILD_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_BUILD_TYPE="Debug" \ -DPython_FIND_VIRTUALENV=STANDARD \ -DCMAKE_C_COMPILER="gcc" \ -DCMAKE_CXX_COMPILER="g++" "dependencies": - |- gcc-host-toolchain "install": |2+ cmake --build "$BUILD_DIR" ${JOBS:+-j$JOBS} cmake --install "$BUILD_DIR" "ndebug": !!bool |- false "release": "build_dependencies": - |- cmake - |- ninja - |- glibc "configure": |2+ mkdir -p "$BUILD_DIR" export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh "https://github.com/rui314/mold/archive/refs/tags/v2.4.0.tar.gz" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$SOURCE_DIR" \ -G"Ninja" \ -DCMAKE_C_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang" \ -DCMAKE_CXX_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang++" \ -DCMAKE_C_FLAGS="-ggdb3 -O2 " \ -DCMAKE_CXX_FLAGS="-ggdb3 -O2 " \ -DCMAKE_BUILD_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_BUILD_TYPE="Release" \ -DPython_FIND_VIRTUALENV=STANDARD \ -DCMAKE_C_COMPILER="gcc" \ -DCMAKE_CXX_COMPILER="g++" "dependencies": - |- gcc-host-toolchain "install": |2+ cmake --build "$BUILD_DIR" ${JOBS:+-j$JOBS} cmake --install "$BUILD_DIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- optimized "license": |- source/LICENSE "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://ftp.gnu.org/gnu/mpc/mpc-1.2.1.tar.gz cd "$BUILD_DIR" && ./configure \ --prefix="$ORCHESTRA_ROOT" \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --enable-shared=no \ CFLAGS="-fPIC" \ CXXFLAGS="-fPIC" \ LDFLAGS="-static-libgcc" "dependencies": - |- gmp - |- mpfr "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING.LESSER "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://www.mpfr.org/mpfr-4.1.0/mpfr-4.1.0.tar.xz cd "$BUILD_DIR" && ./configure \ --prefix="$ORCHESTRA_ROOT" \ --with-gmp="$ORCHESTRA_ROOT" \ --enable-shared=no \ CFLAGS="-fPIC" \ CXXFLAGS="-fPIC" \ LDFLAGS="-static-libgcc" "dependencies": - |- gmp "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- gcc-host-toolchain - |- glibc "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://ftp.gnu.org/pub/gnu/ncurses/ncurses-6.3.tar.gz cd "$BUILD_DIR" ./configure \ --enable-pc-files \ --enable-widec \ --with-cxx \ --with-cxx-binding \ --with-cxx-shared \ --with-shared \ --with-versioned-syms \ --with-xterm-kbs=del \ --with-manpage-format=normal \ --without-ada \ --without-assertions \ --without-debug \ --without-dlsym \ --without-expanded \ --without-gpm \ --without-hashed-db \ --without-profile \ --without-tack \ --without-tests \ --without-trace \ --prefix="$ORCHESTRA_ROOT" \ --with-pkg-config-libdir="$ORCHESTRA_ROOT/lib/pkgconfig" "dependencies": [] "install": |+ cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" INSTALLDIR="${DESTDIR}${ORCHESTRA_ROOT}" # Adapted from ArchLinux PKGBUILD # fool packages looking to link to non-wide-character ncurses libraries for lib in ncurses ncurses++ form panel menu; do printf "INPUT(-l%sw)\n" "${lib}" > "$INSTALLDIR/lib/lib${lib}.so" ln -sv lib${lib}w.so.6.3 "$INSTALLDIR/lib/lib${lib}.so.6.3" ln -sv lib${lib}w.so.6.3 "$INSTALLDIR/lib/lib${lib}.so.6" ln -sv ${lib}w.pc "$INSTALLDIR/lib/pkgconfig/${lib}.pc" done # some packages look for -lcurses during build printf 'INPUT(-lncursesw)\n' > "$INSTALLDIR/lib/libcursesw.so" ln -sv libncurses.so "$INSTALLDIR/lib/libcurses.so" # tic and ticinfo functionality is built in by default # make sure that anything linking against it links against libncursesw.so instead for lib in tic tinfo; do printf "INPUT(libncursesw.so.6)\n" > "$INSTALLDIR/lib/lib${lib}.so" ln -sv libncursesw.so.6.3 "$INSTALLDIR/lib/lib${lib}.so.6.3" ln -sv libncursesw.so.6.3 "$INSTALLDIR/lib/lib${lib}.so.6" ln -sv ncursesw.pc "$INSTALLDIR/lib/pkgconfig/${lib}.pc" done "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://github.com/nghttp2/nghttp2/releases/download/v1.54.0/nghttp2-1.54.0.tar.xz cd "$BUILD_DIR" ./configure \ --prefix="$ORCHESTRA_ROOT" \ --enable-lib-only \ --disable-static "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- cmake "configure": | mkdir -p "$BUILD_DIR/build" extract.sh --into "$BUILD_DIR" https://github.com/ninja-build/ninja/archive/refs/tags/v1.11.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/ninja-shell-for-rule.patch" "$BUILD_DIR" cd "$BUILD_DIR/build" cmake \ "$BUILD_DIR" \ -Wno-dev \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=$ORCHESTRA_ROOT "dependencies": [] "install": | cd "$BUILD_DIR/build" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-cxx-toolchain - |- ninja - |- python "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "https://github.com/nodejs/node/archive/refs/tags/v18.16.0.tar.gz" cd "$BUILD_DIR" patch -p1 < "${ORCHESTRA_DOTDIR}/patches/nodejs-18-fixes.patch" ./configure \ --prefix="$ORCHESTRA_ROOT" \ --ninja \ --with-intl=system-icu \ --shared-openssl \ --shared-zlib "dependencies": - |- host-libcxx - |- icu - |- openssl - |- zlib "install": |+ cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} if [ "$RUN_TESTS" -eq 1 ]; then OPENSSL_CONF=/dev/null make test-only fi make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" mv "$DESTDIR$ORCHESTRA_ROOT/bin/npm"{,.original} "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- LICENSE "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": | JS_DIR="$ORCHESTRA_DOTDIR/support/nodejs-support" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" cp -a "$JS_DIR/package.json" . # check that package.json has the right hash, this is to trigger a rebuild in orchestra # whenever we change the file echo '90b2d254cf140b7a95d81028a8f21272430786afda6eb54e1f508e59ce21bd6b package.json' | sha256sum -c - # Generate package lock npm.original install --package-lock-only --silent # NOTE: until we install this component fetch-js-dependencies will only work with npm lockfiles # due to yarn lockfiles needing the `@yarnpkg/lockfile` dependency installed to be read fetch-js-dependencies npm -o ./.cache "dependencies": - |- nodejs "install": |+ JS_DIR="$ORCHESTRA_DOTDIR/support/nodejs-support" cd "$BUILD_DIR" mkdir "${DESTDIR}${ORCHESTRA_ROOT}/share/node_cache" # copy all download packages to node_cache cp -a .cache/*.tgz "${DESTDIR}${ORCHESTRA_ROOT}/share/node_cache" # copy the npm_static_repository tool cp -a "$JS_DIR/static-npm-registry" "${DESTDIR}${ORCHESTRA_ROOT}/libexec" cp -a "$JS_DIR/npm" "${DESTDIR}${ORCHESTRA_ROOT}/bin" # Create npmrc cat - > "${DESTDIR}${ORCHESTRA_ROOT}/share/npmrc" << EOF EOF # Install packages needed for building export ORCHESTRA_NODE_CACHE="$BUILD_DIR/.cache:$ORCHESTRA_NODE_CACHE" npm --global \ --prefix="${DESTDIR}${ORCHESTRA_ROOT}" \ install yarn @yarnpkg/lockfile # Overwrite yarn with our wrapper rm "${DESTDIR}${ORCHESTRA_ROOT}/bin/"{yarn,yarnpkg} cp -a "$JS_DIR/yarn" "${DESTDIR}${ORCHESTRA_ROOT}/bin/yarn" ln -s "yarn" "${DESTDIR}${ORCHESTRA_ROOT}/bin/yarnpkg" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": "" "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://github.com/openssl/openssl/archive/refs/tags/OpenSSL_1_1_1q.tar.gz #@ # Note: openssldir is set to /etc/ssl; we assume that distros provide this. #@ # On distros that don't, the following check will fail at build-time, #@ # but unfortunately not at install-time when binary archives are used. if ! [[ -d /etc/ssl ]]; then echo "Error: openssldir /etc/ssl is missing in host root!" >&2 exit 1 fi cd "$BUILD_DIR" ./Configure \ --prefix="$ORCHESTRA_ROOT" \ --openssldir="/etc/ssl" \ --libdir=lib64 \ linux-x86_64 \ enable-camellia \ enable-ec \ enable-ec2m \ enable-sm2 \ enable-srp \ enable-idea \ enable-mdc2 \ enable-rc5 \ no-ssl3 \ no-ssl3-method \ enable-asm \ no-rfc3779 \ no-sctp \ no-tests \ no-zlib \ no-heartbeats \ no-weak-ssl-ciphers \ shared \ threads "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install_sw DESTDIR="$DESTDIR" find "$DESTDIR" -name "*.a" -delete "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- LICENSE "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://www.python.org/ftp/python/3.11.0/Python-3.11.0.tar.xz # Implicitly force PYTHONNOUSERSITE sed -i \ 's/if (no_user_site_directory)/if (1)/' \ "$BUILD_DIR/Python/initconfig.c" cd "$BUILD_DIR" # orchestra's libc has a buggy getaddrinfo; we expect users to have a newer libc ac_cv_buggy_getaddrinfo=no ./configure \ --prefix="$ORCHESTRA_ROOT" \ --libdir="${ORCHESTRA_ROOT}/lib64" \ --enable-optimizations \ --enable-shared \ --enable-ipv6 \ --disable-test-modules \ --with-ensurepip=install \ --with-lto \ --with-readline \ --with-system-ffi \ --with-system-expat \ --without-static-libpython grep -v HAVE_SYS_AUXV_H pyconfig.h > pyconfig.h.tmp mv pyconfig.h.tmp pyconfig.h "dependencies": - |- bzip2 - |- expat - |- libffi - |- libxcrypt - |- openssl - |- readline - |- sqlite - |- libb2 - |- xz "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" INSTALLDIR="${DESTDIR}${ORCHESTRA_ROOT}" ln -s python3 "${INSTALLDIR}"/bin/python ln -s python3-config "${INSTALLDIR}"/bin/python-config ln -s idle3 "${INSTALLDIR}"/bin/idle ln -s pydoc3 "${INSTALLDIR}"/bin/pydoc "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- LICENSE "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": |- mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" cat > requirements.txt <<'EOF' wheel no-manylinux EOF pip-package-list.py \ python-base-packages \ -r requirements.txt \ > packages.csv mkdir -p packages cd packages while IFS=, read -r NAME URL; do fetch.sh "$URL" echo "$NAME" >> "../package-list.txt" done < ../packages.csv "dependencies": - |- python "install": |- cd "$BUILD_DIR" export HARD_FLAGS_COMPILE="-I"$("${ORCHESTRA_DOTDIR}/support/get-python-path" include)" $HARD_FLAGS_COMPILE" export HARD_ALLOWED_INCLUDE_PATH="$HARD_ALLOWED_INCLUDE_PATH:/tmp" export HARD_ALLOWED_LIBRARY_PATH="$HARD_ALLOWED_LIBRARY_PATH:/tmp" python \ -m pip \ --disable-pip-version-check \ --no-python-version-warning \ install \ --compile \ --no-deps \ --no-index \ --no-build-isolation \ --no-warn-script-location \ --ignore-installed \ --root "$DESTDIR" \ --verbose \ packages/* PYTHON_PACKAGES_DIR="$DESTDIR$ORCHESTRA_ROOT/share/orchestra/python-packages/" mkdir -p "$PYTHON_PACKAGES_DIR" cp \ -a \ package-list.txt \ "$PYTHON_PACKAGES_DIR/python-base-packages.txt" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": !!null |- null "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": |- mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" cat > requirements.txt <<'EOF' --global-option=--with-libyaml pyyaml==6.0.1 EOF pip-package-list.py \ pyyaml \ -r requirements.txt \ > packages.csv mkdir -p packages cd packages while IFS=, read -r NAME URL; do fetch.sh "$URL" echo "$NAME" >> "../package-list.txt" done < ../packages.csv "dependencies": - |- python-base-packages - |- libyaml - |- cython "install": |- cd "$BUILD_DIR" export HARD_FLAGS_COMPILE="-I"$("${ORCHESTRA_DOTDIR}/support/get-python-path" include)" $HARD_FLAGS_COMPILE" export HARD_ALLOWED_INCLUDE_PATH="$HARD_ALLOWED_INCLUDE_PATH:/tmp" export HARD_ALLOWED_LIBRARY_PATH="$HARD_ALLOWED_LIBRARY_PATH:/tmp" python \ -m pip \ --disable-pip-version-check \ --no-python-version-warning \ install \ --compile \ --no-deps \ --no-index \ --no-build-isolation \ --no-warn-script-location \ --ignore-installed \ --root "$DESTDIR" \ --verbose \ packages/* PYTHON_PACKAGES_DIR="$DESTDIR$ORCHESTRA_ROOT/share/orchestra/python-packages/" mkdir -p "$PYTHON_PACKAGES_DIR" cp \ -a \ package-list.txt \ "$PYTHON_PACKAGES_DIR/pyyaml.txt" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": !!null |- null "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "debug": "build_dependencies": - |- host-c-toolchain "configure": | mkdir -p "$BUILD_DIR" cd "$BUILD_DIR"; "$SOURCE_DIR/configure" \ --cc="$ORCHESTRA_ROOT/link-only/bin/clang" \ --prefix="$ORCHESTRA_ROOT" \ --target-list=" arm-libtinycode arm-linux-user aarch64-libtinycode aarch64-linux-user i386-libtinycode i386-linux-user mips-libtinycode mips-linux-user mipsel-libtinycode mipsel-linux-user s390x-libtinycode s390x-linux-user x86_64-libtinycode x86_64-linux-user " \ --disable-werror \ --enable-llvm-helpers \ --disable-kvm \ --without-pixman \ --disable-tools \ --disable-system \ --disable-libnfs \ --disable-vde \ --disable-gnutls \ --disable-smartcard-nss \ --disable-uuid \ --disable-cap-ng \ --python="$(command -v python2)" \ --enable-debug \ --extra-cflags="-ggdb3 -O0 " "dependencies": - |- zlib - |- glib "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} install "ndebug": !!bool |- false "optimized": "build_dependencies": - |- host-c-toolchain "configure": | mkdir -p "$BUILD_DIR" cd "$BUILD_DIR"; "$SOURCE_DIR/configure" \ --cc="$ORCHESTRA_ROOT/link-only/bin/clang" \ --prefix="$ORCHESTRA_ROOT" \ --target-list=" arm-libtinycode arm-linux-user aarch64-libtinycode aarch64-linux-user i386-libtinycode i386-linux-user mips-libtinycode mips-linux-user mipsel-libtinycode mipsel-linux-user s390x-libtinycode s390x-linux-user x86_64-libtinycode x86_64-linux-user " \ --disable-werror \ --enable-llvm-helpers \ --disable-kvm \ --without-pixman \ --disable-tools \ --disable-system \ --disable-libnfs \ --disable-vde \ --disable-gnutls \ --disable-smartcard-nss \ --disable-uuid \ --disable-cap-ng \ --python="$(command -v python2)" \ --enable-debug \ --extra-cflags="-ggdb3 -O2 -fno-omit-frame-pointer " "dependencies": - |- zlib - |- glib "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} install "ndebug": !!bool |- false "release": "build_dependencies": - |- host-c-toolchain "configure": | mkdir -p "$BUILD_DIR" cd "$BUILD_DIR"; "$SOURCE_DIR/configure" \ --cc="$ORCHESTRA_ROOT/link-only/bin/clang" \ --prefix="$ORCHESTRA_ROOT" \ --target-list=" arm-libtinycode arm-linux-user aarch64-libtinycode aarch64-linux-user i386-libtinycode i386-linux-user mips-libtinycode mips-linux-user mipsel-libtinycode mipsel-linux-user s390x-libtinycode s390x-linux-user x86_64-libtinycode x86_64-linux-user " \ --disable-werror \ --enable-llvm-helpers \ --disable-kvm \ --without-pixman \ --disable-tools \ --disable-system \ --disable-libnfs \ --disable-vde \ --disable-gnutls \ --disable-smartcard-nss \ --disable-uuid \ --disable-cap-ng \ --python="$(command -v python2)" \ \ --extra-cflags="-ggdb3 -O2 " "dependencies": - |- zlib - |- glib "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} install "ndebug": !!bool |- true "commit": |- f4154e7ce51eb0c769a44c7cc4213edea0cddc0e "default_build": |- optimized "license": |- LICENSE "repository": |- qemu "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://ftp.gnu.org/gnu/readline/readline-8.1.2.tar.gz cd "$BUILD_DIR" ./configure \ --prefix="$ORCHESTRA_ROOT" \ --enable-multibyte \ --disable-static \ --disable-install-examples \ --with-curses "dependencies": - |- ncurses "install": |+ cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} SHLIB_LIBS=-lncurses make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "debug": "build_dependencies": - |- cmake - |- ninja - |- host-cxx-toolchain - |- nodejs-support - |- test/revng-qa "configure": |2+ mkdir -p "$BUILD_DIR" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$SOURCE_DIR" \ -G"Ninja" \ -DCMAKE_C_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang" \ -DCMAKE_CXX_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang++" \ -DCMAKE_C_FLAGS="-ggdb3 -O0 -fplugin=libclangTidyPlugin.so -Wl,--no-undefined -Wno-unused-command-line-argument -stdlib=libc++ -fuse-ld=mold " \ -DCMAKE_CXX_FLAGS="-ggdb3 -O0 -fplugin=libclangTidyPlugin.so -Wl,--no-undefined -Wno-unused-command-line-argument -stdlib=libc++ -fuse-ld=mold " \ -DCMAKE_BUILD_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_BUILD_TYPE="Debug" \ -DPython_FIND_VIRTUALENV=STANDARD \ -DBOOST_ROOT="$ORCHESTRA_ROOT" \ -DBoost_NO_BOOST_CMAKE=On \ -DBoost_NO_SYSTEM_PATHS=On \ -DLLVM_DIR=$ORCHESTRA_ROOT/lib64/llvm/llvm/lib/cmake/llvm "dependencies": - |- aws-sdk - |- boost - |- host-libcxx - |- llvm - |- qemu - |- revng-python-dependencies - |- toolchain/host/binutils - |- revng-js-prerequisites - |- glibc - |- gcc-runtime - |- libarchive "install": |2+ cmake --build "$BUILD_DIR" ${JOBS:+-j$JOBS} if test "$RUN_TESTS" -eq 1; then cd "$BUILD_DIR" ctest --output-on-failure ${JOBS:+-j$JOBS} cd - fi cmake --install "$BUILD_DIR" if [ "$RUN_TESTS" -eq 1 ]; then cd "$SOURCE_DIR" ./libexec/revng/revng-check-conventions fi "ndebug": !!bool |- false "optimized": "build_dependencies": - |- cmake - |- ninja - |- host-cxx-toolchain - |- nodejs-support - |- test/revng-qa "configure": |2+ mkdir -p "$BUILD_DIR" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$SOURCE_DIR" \ -G"Ninja" \ -DCMAKE_C_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang" \ -DCMAKE_CXX_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang++" \ -DCMAKE_C_FLAGS="-ggdb3 -O2 -fno-omit-frame-pointer -fplugin=libclangTidyPlugin.so -Wl,--no-undefined -Wno-unused-command-line-argument -stdlib=libc++ -fuse-ld=mold " \ -DCMAKE_CXX_FLAGS="-ggdb3 -O2 -fno-omit-frame-pointer -fplugin=libclangTidyPlugin.so -Wl,--no-undefined -Wno-unused-command-line-argument -stdlib=libc++ -fuse-ld=mold " \ -DCMAKE_BUILD_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_BUILD_TYPE="Debug" \ -DPython_FIND_VIRTUALENV=STANDARD \ -DBOOST_ROOT="$ORCHESTRA_ROOT" \ -DBoost_NO_BOOST_CMAKE=On \ -DBoost_NO_SYSTEM_PATHS=On \ -DLLVM_DIR=$ORCHESTRA_ROOT/lib64/llvm/llvm/lib/cmake/llvm "dependencies": - |- aws-sdk - |- boost - |- host-libcxx - |- llvm - |- qemu - |- revng-python-dependencies - |- toolchain/host/binutils - |- revng-js-prerequisites - |- glibc - |- gcc-runtime - |- libarchive "install": |2+ cmake --build "$BUILD_DIR" ${JOBS:+-j$JOBS} if test "$RUN_TESTS" -eq 1; then cd "$BUILD_DIR" ctest --output-on-failure ${JOBS:+-j$JOBS} cd - fi cmake --install "$BUILD_DIR" if [ "$RUN_TESTS" -eq 1 ]; then cd "$SOURCE_DIR" ./libexec/revng/revng-check-conventions fi "ndebug": !!bool |- false "release": "build_dependencies": - |- cmake - |- ninja - |- host-cxx-toolchain - |- nodejs-support - |- test/revng-qa "configure": |2+ mkdir -p "$BUILD_DIR" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$SOURCE_DIR" \ -G"Ninja" \ -DCMAKE_C_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang" \ -DCMAKE_CXX_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang++" \ -DCMAKE_C_FLAGS="-ggdb3 -O2 -fplugin=libclangTidyPlugin.so -Wl,--no-undefined -Wno-unused-command-line-argument -stdlib=libc++ -fuse-ld=mold " \ -DCMAKE_CXX_FLAGS="-ggdb3 -O2 -fplugin=libclangTidyPlugin.so -Wl,--no-undefined -Wno-unused-command-line-argument -stdlib=libc++ -fuse-ld=mold " \ -DCMAKE_BUILD_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_BUILD_TYPE="Release" \ -DPython_FIND_VIRTUALENV=STANDARD \ -DBOOST_ROOT="$ORCHESTRA_ROOT" \ -DBoost_NO_BOOST_CMAKE=On \ -DBoost_NO_SYSTEM_PATHS=On \ -DLLVM_DIR=$ORCHESTRA_ROOT/lib64/llvm/llvm/lib/cmake/llvm "dependencies": - |- aws-sdk - |- boost - |- host-libcxx - |- llvm - |- qemu - |- revng-python-dependencies - |- toolchain/host/binutils - |- revng-js-prerequisites - |- glibc - |- gcc-runtime - |- libarchive "install": |2+ cmake --build "$BUILD_DIR" ${JOBS:+-j$JOBS} if test "$RUN_TESTS" -eq 1; then cd "$BUILD_DIR" ctest --output-on-failure ${JOBS:+-j$JOBS} cd - fi cmake --install "$BUILD_DIR" if [ "$RUN_TESTS" -eq 1 ]; then cd "$SOURCE_DIR" ./libexec/revng/revng-check-conventions fi "ndebug": !!bool |- true "commit": |- d21aadfdd015de621bbe90053b92ed23c4ee9a0b "default_build": |- optimized "license": |- LICENSE "repository": |- revng "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "debug": "build_dependencies": - |- cmake - |- ninja - |- host-cxx-toolchain "configure": |2+ mkdir -p "$BUILD_DIR" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$SOURCE_DIR" \ -G"Ninja" \ -DCMAKE_C_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang" \ -DCMAKE_CXX_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang++" \ -DCMAKE_C_FLAGS="-ggdb3 -O0 -fplugin=libclangTidyPlugin.so -Wl,--no-undefined -Wno-unused-command-line-argument -stdlib=libc++ -fuse-ld=mold " \ -DCMAKE_CXX_FLAGS="-ggdb3 -O0 -fplugin=libclangTidyPlugin.so -Wl,--no-undefined -Wno-unused-command-line-argument -stdlib=libc++ -fuse-ld=mold " \ -DCMAKE_BUILD_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_BUILD_TYPE="Debug" \ -DPython_FIND_VIRTUALENV=STANDARD \ -DBOOST_ROOT="$ORCHESTRA_ROOT" \ -DBoost_NO_BOOST_CMAKE=On \ -DBoost_NO_SYSTEM_PATHS=On \ -DLLVM_DIR=$ORCHESTRA_ROOT/lib64/llvm/llvm/lib/cmake/llvm \ -DClang_DIR=$ORCHESTRA_ROOT/lib64/llvm/llvm/lib/cmake/clang \ -DMLIR_DIR=$ORCHESTRA_ROOT/lib64/llvm/llvm/lib/cmake/mlir "dependencies": - |- host-libcxx - |- revng - |- boost "install": |2+ cmake --build "$BUILD_DIR" ${JOBS:+-j$JOBS} if test "$RUN_TESTS" -eq 1; then cd "$BUILD_DIR" ctest --output-on-failure ${JOBS:+-j$JOBS} cd - fi cmake --install "$BUILD_DIR" if [ "$RUN_TESTS" -eq 1 ]; then cd "$SOURCE_DIR" revng check-conventions fi "ndebug": !!bool |- false "optimized": "build_dependencies": - |- cmake - |- ninja - |- host-cxx-toolchain "configure": |2+ mkdir -p "$BUILD_DIR" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$SOURCE_DIR" \ -G"Ninja" \ -DCMAKE_C_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang" \ -DCMAKE_CXX_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang++" \ -DCMAKE_C_FLAGS="-ggdb3 -O2 -fno-omit-frame-pointer -fplugin=libclangTidyPlugin.so -Wl,--no-undefined -Wno-unused-command-line-argument -stdlib=libc++ -fuse-ld=mold " \ -DCMAKE_CXX_FLAGS="-ggdb3 -O2 -fno-omit-frame-pointer -fplugin=libclangTidyPlugin.so -Wl,--no-undefined -Wno-unused-command-line-argument -stdlib=libc++ -fuse-ld=mold " \ -DCMAKE_BUILD_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_BUILD_TYPE="Debug" \ -DPython_FIND_VIRTUALENV=STANDARD \ -DBOOST_ROOT="$ORCHESTRA_ROOT" \ -DBoost_NO_BOOST_CMAKE=On \ -DBoost_NO_SYSTEM_PATHS=On \ -DLLVM_DIR=$ORCHESTRA_ROOT/lib64/llvm/llvm/lib/cmake/llvm \ -DClang_DIR=$ORCHESTRA_ROOT/lib64/llvm/llvm/lib/cmake/clang \ -DMLIR_DIR=$ORCHESTRA_ROOT/lib64/llvm/llvm/lib/cmake/mlir "dependencies": - |- host-libcxx - |- revng - |- boost "install": |2+ cmake --build "$BUILD_DIR" ${JOBS:+-j$JOBS} if test "$RUN_TESTS" -eq 1; then cd "$BUILD_DIR" ctest --output-on-failure ${JOBS:+-j$JOBS} cd - fi cmake --install "$BUILD_DIR" if [ "$RUN_TESTS" -eq 1 ]; then cd "$SOURCE_DIR" revng check-conventions fi "ndebug": !!bool |- false "release": "build_dependencies": - |- cmake - |- ninja - |- host-cxx-toolchain "configure": |2+ mkdir -p "$BUILD_DIR" cd "$BUILD_DIR"; cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" \ "$SOURCE_DIR" \ -G"Ninja" \ -DCMAKE_C_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang" \ -DCMAKE_CXX_COMPILER="$ORCHESTRA_ROOT/link-only/bin/clang++" \ -DCMAKE_C_FLAGS="-ggdb3 -O2 -fplugin=libclangTidyPlugin.so -Wl,--no-undefined -Wno-unused-command-line-argument -stdlib=libc++ -fuse-ld=mold " \ -DCMAKE_CXX_FLAGS="-ggdb3 -O2 -fplugin=libclangTidyPlugin.so -Wl,--no-undefined -Wno-unused-command-line-argument -stdlib=libc++ -fuse-ld=mold " \ -DCMAKE_BUILD_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_INSTALL_RPATH="$RPATH_PLACEHOLDER/lib:$RPATH_PLACEHOLDER/lib64/clang/16.0.0/lib/linux:$RPATH_PLACEHOLDER/lib/revng/analyses" \ -DCMAKE_BUILD_TYPE="Release" \ -DPython_FIND_VIRTUALENV=STANDARD \ -DBOOST_ROOT="$ORCHESTRA_ROOT" \ -DBoost_NO_BOOST_CMAKE=On \ -DBoost_NO_SYSTEM_PATHS=On \ -DLLVM_DIR=$ORCHESTRA_ROOT/lib64/llvm/llvm/lib/cmake/llvm \ -DClang_DIR=$ORCHESTRA_ROOT/lib64/llvm/llvm/lib/cmake/clang \ -DMLIR_DIR=$ORCHESTRA_ROOT/lib64/llvm/llvm/lib/cmake/mlir "dependencies": - |- host-libcxx - |- revng - |- boost "install": |2+ cmake --build "$BUILD_DIR" ${JOBS:+-j$JOBS} if test "$RUN_TESTS" -eq 1; then cd "$BUILD_DIR" ctest --output-on-failure ${JOBS:+-j$JOBS} cd - fi cmake --install "$BUILD_DIR" if [ "$RUN_TESTS" -eq 1 ]; then cd "$SOURCE_DIR" revng check-conventions fi "ndebug": !!bool |- true "commit": |- 0c212b66d97ade2f1b5ff033e4bd502cdad4aa4e "default_build": |- optimized "license": |- LICENSE "repository": |- revng-c "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- nodejs-support "configure": | mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" cp -a "$ORCHESTRA_DOTDIR/support/revng-js-prerequisites-package.json" package.json # check that package.json has the right hash, this is to trigger a rebuild in orchestra # whenever we change the file echo '44ed422c03d4396436a7e1de5d097abde391f2816dca91dad9ba871c0a9f1962 package.json' | sha256sum -c - # Generate package lock npm.original install --package-lock-only --silent # Populate cache fetch-js-dependencies npm -o ./.cache "dependencies": - |- nodejs "install": |+ cd "$BUILD_DIR" # copy all download packages to node_cache mkdir -p "${DESTDIR}${ORCHESTRA_ROOT}/share/node_cache" cp -a .cache/*.tgz "${DESTDIR}${ORCHESTRA_ROOT}/share/node_cache" # Install packages needed for building export ORCHESTRA_NODE_CACHE="$BUILD_DIR/.cache:$ORCHESTRA_NODE_CACHE" npm --global \ --prefix="${DESTDIR}${ORCHESTRA_ROOT}" \ install \ s3rver \ prettier eslint lint-staged gts \ eslint-plugin-node eslint-plugin-prettier \ @typescript-eslint/eslint-plugin @typescript-eslint/parser "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": "" "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": |- mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" cat > requirements.txt <<'EOF' # Python language checkers/formatters black>=22.12.0,<23.0 flake8>=5.0.4,<6.0 flake8-breakpoint>=1.1.0,<2.0 flake8-builtins>=2.1.0,<3.0 flake8-comprehensions>=3.10.1,<4.0 flake8-eradicate>=1.4.0,<2.0 flake8-return>=1.2.0,<2.0 flake8-simplify>=0.19.3,<1.0 pep8-naming>=0.13.3,<1.0 isort>=5.11.4,<6.0 codespell>=2.2.2,<3.0 mypy==1.4.1 # Python types, needed for mypy to work correctly types-backports types-PyYAML types-requests types-urllib3 # cmake-format executable cmakelang # Applications/Script dependencies ariadne[asgi-file-uploads]>=0.20.1 cffi Jinja2 gql[aiohttp] grandiso jsonschema>=4.17.3,<4.18.0 networkx pefile pycparser pydot pyelftools # This is our fork of the python-idb package that includes some fixes. https://github.com/revng/python-idb/archive/08ba07a.tar.gz # pydot 3.0.2 introduced an incompatibility with pydot which is supposed to be # resolved in a later version, but still causes problems to us (for instance, # monotone framework headers generation fails), so we request v2.4.7. See # https://github.com/pydot/pydot/issues/277 pyparsing==2.4.7 pytest pytest-asyncio requests requests-toolbelt rich psutil build # uvicorn[standard] but without watchfiles (since it requires rust) uvicorn==0.22.0 httptools>=0.5.0 python-dotenv>=0.13 uvloop==0.17.0 websockets>=10.4 xdg marko mkdocs mkdocs-graphviz mkdocs-material EOF pip-package-list.py \ revng-python-dependencies \ -r requirements.txt \ > packages.csv mkdir -p packages cd packages while IFS=, read -r NAME URL; do fetch.sh "$URL" echo "$NAME" >> "../package-list.txt" done < ../packages.csv "dependencies": - |- python-base-packages - |- revng-qa-python-dependencies - |- pyyaml - |- cython "install": |- cd "$BUILD_DIR" export HARD_FLAGS_COMPILE="-I"$("${ORCHESTRA_DOTDIR}/support/get-python-path" include)" $HARD_FLAGS_COMPILE" export HARD_ALLOWED_INCLUDE_PATH="$HARD_ALLOWED_INCLUDE_PATH:/tmp" export HARD_ALLOWED_LIBRARY_PATH="$HARD_ALLOWED_LIBRARY_PATH:/tmp" python \ -m pip \ --disable-pip-version-check \ --no-python-version-warning \ install \ --compile \ --no-deps \ --no-index \ --no-build-isolation \ --no-warn-script-location \ --ignore-installed \ --root "$DESTDIR" \ --verbose \ packages/* PYTHON_PACKAGES_DIR="$DESTDIR$ORCHESTRA_ROOT/share/orchestra/python-packages/" mkdir -p "$PYTHON_PACKAGES_DIR" cp \ -a \ package-list.txt \ "$PYTHON_PACKAGES_DIR/revng-python-dependencies.txt" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": !!null |- null "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- cmake - |- ninja - |- host-cxx-toolchain "configure": | mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" cmake \ -DCMAKE_INSTALL_MESSAGE=NEVER \ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_INSTALL_PREFIX="$ORCHESTRA_ROOT" \ -DCMAKE_PREFIX_PATH="$ORCHESTRA_ROOT" "$SOURCE_DIR" "dependencies": - |- revng-qa-python-dependencies - |- clang-release "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": |- 46f2ab9578585a0011d02ccda385ce53973a7957 "default_build": |- default "license": |- LICENSE "repository": |- revng-qa "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": |- mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" cat > requirements.txt <<'EOF' expandvars jinja2 EOF pip-package-list.py \ revng-qa-python-dependencies \ -r requirements.txt \ > packages.csv mkdir -p packages cd packages while IFS=, read -r NAME URL; do fetch.sh "$URL" echo "$NAME" >> "../package-list.txt" done < ../packages.csv "dependencies": - |- python-base-packages - |- pyyaml "install": |- cd "$BUILD_DIR" export HARD_FLAGS_COMPILE="-I"$("${ORCHESTRA_DOTDIR}/support/get-python-path" include)" $HARD_FLAGS_COMPILE" export HARD_ALLOWED_INCLUDE_PATH="$HARD_ALLOWED_INCLUDE_PATH:/tmp" export HARD_ALLOWED_LIBRARY_PATH="$HARD_ALLOWED_LIBRARY_PATH:/tmp" python \ -m pip \ --disable-pip-version-check \ --no-python-version-warning \ install \ --compile \ --no-deps \ --no-index \ --no-build-isolation \ --no-warn-script-location \ --ignore-installed \ --root "$DESTDIR" \ --verbose \ packages/* PYTHON_PACKAGES_DIR="$DESTDIR$ORCHESTRA_ROOT/share/orchestra/python-packages/" mkdir -p "$PYTHON_PACKAGES_DIR" cp \ -a \ package-list.txt \ "$PYTHON_PACKAGES_DIR/revng-qa-python-dependencies.txt" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": !!null |- null "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain - |- tcl "configure": | mkdir -p "$BUILD_DIR/source" extract.sh --into "$BUILD_DIR/source" "https://github.com/sqlite/sqlite/archive/refs/tags/version-3.39.4.tar.gz" cd "$BUILD_DIR" && ./source/configure \ --prefix="$ORCHESTRA_ROOT" \ --enable-shared \ --enable-all \ --with-pic \ --disable-tcl "dependencies": - |- readline "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/LICENSE.md "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": | mkdir -p "$BUILD_DIR/source" extract.sh --into "$BUILD_DIR/source" "https://prdownloads.sourceforge.net/tcl/tcl8.6.12-src.tar.gz" cd "$BUILD_DIR" && ./source/unix/configure \ --prefix="$ORCHESTRA_ROOT" \ --enable-shared "dependencies": [] "install": |+ cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" ln -s tclsh8.6 "$DESTDIR$ORCHESTRA_ROOT/bin/tclsh" ls "$DESTDIR$ORCHESTRA_ROOT/bin/tclsh" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/license.terms "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- ninja - |- revng-qa - |- toolchain/win32-vc16/vc - |- toolchain/win32-vc19/vc - |- toolchain/win64-vc19/vc - |- toolchain/arm/gcc - |- toolchain/x86-64/gcc - |- toolchain/i386/gcc - |- toolchain/s390x/gcc - |- toolchain/aarch64/gcc - |- toolchain/mips/gcc - |- toolchain/mipsel/gcc - |- toolchain/host/gcc - |- ida "configure": | mkdir -p "$BUILD_DIR" "dependencies": [] "install": | cd "$BUILD_DIR" rm -rf * "$ORCHESTRA_ROOT/libexec/revng/revng-test-configure" \ "$ORCHESTRA_ROOT/share/revng/test/configuration"/revng-qa/*.yml \ --install-path "$ORCHESTRA_ROOT" \ --destination . \ --target-type 'revng-qa\..*' export REVNG_OPTIONS="--debug-log=verify" ninja install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": !!null |- null "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": - |- ${ORCHESTRA_ROOT}/x86_64-pc-linux-gnu/aarch64-unknown-linux-musl/binutils-bin/2.35 "builds": "default": "build_dependencies": - |- glibc - |- toolchain/host/gcc - |- toolchain/host/binutils "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/binutils/binutils-2.35.tar.bz2 cd "$BUILD_DIR" && "$SOURCE_DIR/configure" \ --build=x86_64-pc-linux-gnu \ --host=x86_64-pc-linux-gnu \ --target=aarch64-unknown-linux-musl \ --with-sysroot="$ORCHESTRA_ROOT/aarch64-unknown-linux-musl" \ --prefix=$ORCHESTRA_ROOT \ --datadir=$ORCHESTRA_ROOT/share/binutils-data/aarch64-unknown-linux-musl/2.35 \ --infodir=$ORCHESTRA_ROOT/share/binutils-data/aarch64-unknown-linux-musl/2.35/info \ --mandir=$ORCHESTRA_ROOT/share/binutils-data/aarch64-unknown-linux-musl/2.35/man \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/aarch64-unknown-linux-musl/binutils-bin/2.35 \ --libdir=$ORCHESTRA_ROOT/lib64/binutils/aarch64-unknown-linux-musl/2.35 \ --libexecdir=$ORCHESTRA_ROOT/lib64/binutils/aarch64-unknown-linux-musl/2.35 \ --includedir=$ORCHESTRA_ROOT/lib64/binutils/aarch64-unknown-linux-musl/2.35/include \ --without-included-gettext \ --with-zlib \ --enable-poison-system-directories \ --enable-secureplt \ --enable-obsolete \ --enable-gold \ --disable-shared \ --enable-threads \ --enable-install-libiberty \ --disable-werror \ --disable-static \ --disable-gdb \ --disable-libdecnumber \ --disable-readline \ --disable-sim \ --without-debuginfod \ --without-stage1-ldflags \ \ CFLAGS="-w -ggdb3 -O3" \ CXXFLAGS="-w -ggdb3 -O3" "dependencies": - |- gcc-runtime "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": - |- ${ORCHESTRA_ROOT}/x86_64-pc-linux-gnu/aarch64-unknown-linux-musl/gcc-bin/7.3.0 "builds": "stage1": "build_dependencies": - |- glibc - |- gmp - |- mpfr - |- mpc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-7.3.0-cfns-fix-mismatch-in-gnu_inline-attributes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-7.3.0-cpp-musl-support.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-7.3.0-fixes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-7.3.0-remove-dependency-on-libc_single_threaded.patch" "$SOURCE_DIR" sed -i 's|gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"|gcc_gxx_include_dir="/${gcc_gxx_without_sysroot#/}"|' "$SOURCE_DIR/gcc/configure" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" "$SOURCE_DIR/configure" \ --host=x86_64-pc-linux-gnu \ --build=x86_64-pc-linux-gnu \ --target=aarch64-unknown-linux-musl \ --prefix=$ORCHESTRA_ROOT \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/aarch64-unknown-linux-musl/gcc-bin/7.3.0 \ --includedir=$ORCHESTRA_ROOT/lib/gcc/aarch64-unknown-linux-musl/7.3.0/include \ --datadir=$ORCHESTRA_ROOT/share/gcc-data/aarch64-unknown-linux-musl/7.3.0 \ --mandir=$ORCHESTRA_ROOT/share/gcc-data/aarch64-unknown-linux-musl/7.3.0/man \ --infodir=$ORCHESTRA_ROOT/share/gcc-data/aarch64-unknown-linux-musl/7.3.0/info \ --with-sysroot=$ORCHESTRA_ROOT/aarch64-unknown-linux-musl \ --enable-obsolete \ --enable-secureplt \ --disable-werror \ --disable-nls \ --without-included-gettext \ --enable-checking=release \ --enable-libstdcxx-time \ --enable-poison-system-directories \ --disable-host-shared \ --enable-shared \ --disable-libatomic \ --disable-bootstrap \ --disable-multilib \ --disable-altivec \ --disable-fixed-point \ --disable-libgcj \ --disable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-libcilkrts \ --disable-vtable-verify \ --disable-libvtv \ --disable-libquadmath \ --disable-rpath \ --enable-lto \ --disable-vtable-verify \ --disable-libsanitizer \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --without-zstd \ --without-cloog \ --without-isl \ --disable-libsanitizer \ --disable-libssp \ --disable-shared \ --enable-languages=c \ CFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include" \ CXXFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include -std=gnu++11" \ LDFLAGS="-L$INSTALL_LINK_ONLY_PATH/lib -L$ORCHESTRA_ROOT/lib -lrt --sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -fuse-ld=gold -Wl,-rpath,$RPATH_PLACEHOLDER/lib -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/clang/16/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/llvm/lib/ -static-libgcc -static-libstdc++ $BUILD_DIR/fake-libc-single-threaded.o -L$INSTALL_LINK_ONLY_PATH/lib64 --sysroot=$INSTALL_LINK_ONLY_PATH" "dependencies": - |- toolchain/aarch64/binutils - |- toolchain/host/binutils - |- toolchain/aarch64/musl~headers - |- toolchain/aarch64/linux-headers "install": "cd \"$BUILD_DIR\"\nmake ${JOBS:+-j$JOBS} \nmake install \n\nNEW_GCC_PATH=\"$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/aarch64-unknown-linux-musl/gcc-bin/7.3.0/\"\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/gcc\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/cc\"; then\n ln -s gcc \"${DESTDIR}${NEW_GCC_PATH}/cc\"\n fi\n\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n COMPILER_WRAPPER=\"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\"\n echo \"25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}\" | sha256sum -c -\n cp \"${COMPILER_WRAPPER}\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/gcc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-gcc\"\n\n cp -a \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/gcc/x86_64-pc-linux-gnu/7.3.0/*.{a,o} \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/\n\nfi\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/g++\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/c++\"; then\n ln -s g++ \"${DESTDIR}${NEW_GCC_PATH}/c++\"\n fi\n\n cp \"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/g++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-g++\"\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/c++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-c++\"\n\nfi\n\nrm -f \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib64/libcc1.*\n\n# Fixinclude locates the wrong pthread.h\nfind \"${DESTDIR}${ORCHESTRA_ROOT}\" -type d -name include-fixed -exec rm -f {}/pthread.h \\;\n" "ndebug": !!bool |- true "stage2": "build_dependencies": - |- toolchain/aarch64/gcc~stage1 - |- glibc - |- gmp - |- mpfr - |- mpc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-7.3.0-cfns-fix-mismatch-in-gnu_inline-attributes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-7.3.0-cpp-musl-support.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-7.3.0-fixes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-7.3.0-remove-dependency-on-libc_single_threaded.patch" "$SOURCE_DIR" sed -i 's|gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"|gcc_gxx_include_dir="/${gcc_gxx_without_sysroot#/}"|' "$SOURCE_DIR/gcc/configure" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" "$SOURCE_DIR/configure" \ --host=x86_64-pc-linux-gnu \ --build=x86_64-pc-linux-gnu \ --target=aarch64-unknown-linux-musl \ --prefix=$ORCHESTRA_ROOT \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/aarch64-unknown-linux-musl/gcc-bin/7.3.0 \ --includedir=$ORCHESTRA_ROOT/lib/gcc/aarch64-unknown-linux-musl/7.3.0/include \ --datadir=$ORCHESTRA_ROOT/share/gcc-data/aarch64-unknown-linux-musl/7.3.0 \ --mandir=$ORCHESTRA_ROOT/share/gcc-data/aarch64-unknown-linux-musl/7.3.0/man \ --infodir=$ORCHESTRA_ROOT/share/gcc-data/aarch64-unknown-linux-musl/7.3.0/info \ --with-sysroot=$ORCHESTRA_ROOT/aarch64-unknown-linux-musl \ --enable-obsolete \ --enable-secureplt \ --disable-werror \ --disable-nls \ --without-included-gettext \ --enable-checking=release \ --enable-libstdcxx-time \ --enable-poison-system-directories \ --disable-host-shared \ --enable-shared \ --disable-libatomic \ --disable-bootstrap \ --disable-multilib \ --disable-altivec \ --disable-fixed-point \ --disable-libgcj \ --disable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-libcilkrts \ --disable-vtable-verify \ --disable-libvtv \ --disable-libquadmath \ --disable-rpath \ --enable-lto \ --disable-vtable-verify \ --disable-libsanitizer \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --without-zstd \ --without-cloog \ --without-isl \ --disable-libsanitizer \ --disable-libssp \ --disable-shared \ --enable-languages=c,c++ \ CFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include" \ CXXFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include -std=gnu++11" \ LDFLAGS="-L$INSTALL_LINK_ONLY_PATH/lib -L$ORCHESTRA_ROOT/lib -lrt --sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -fuse-ld=gold -Wl,-rpath,$RPATH_PLACEHOLDER/lib -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/clang/16/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/llvm/lib/ -static-libgcc -static-libstdc++ $BUILD_DIR/fake-libc-single-threaded.o -L$INSTALL_LINK_ONLY_PATH/lib64 --sysroot=$INSTALL_LINK_ONLY_PATH" "dependencies": - |- toolchain/aarch64/binutils - |- toolchain/host/binutils - |- toolchain/aarch64/musl - |- toolchain/aarch64/linux-headers "install": "cd \"$BUILD_DIR\"\nmake ${JOBS:+-j$JOBS} \nmake install \n\nNEW_GCC_PATH=\"$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/aarch64-unknown-linux-musl/gcc-bin/7.3.0/\"\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/gcc\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/cc\"; then\n ln -s gcc \"${DESTDIR}${NEW_GCC_PATH}/cc\"\n fi\n\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n COMPILER_WRAPPER=\"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\"\n echo \"25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}\" | sha256sum -c -\n cp \"${COMPILER_WRAPPER}\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/gcc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-gcc\"\n\n cp -a \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/gcc/x86_64-pc-linux-gnu/7.3.0/*.{a,o} \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/\n\nfi\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/g++\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/c++\"; then\n ln -s g++ \"${DESTDIR}${NEW_GCC_PATH}/c++\"\n fi\n\n cp \"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/g++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-g++\"\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/c++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-c++\"\n\nfi\n\nrm -f \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib64/libcc1.*\n\n# Fixinclude locates the wrong pthread.h\nfind \"${DESTDIR}${ORCHESTRA_ROOT}\" -type d -name include-fixed -exec rm -f {}/pthread.h \\;\n" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- stage2 "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.1.4.tar.xz "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} -C "$BUILD_DIR" \ ARCH=arm64 \ INSTALL_HDR_PATH="${DESTDIR}${ORCHESTRA_ROOT}/aarch64-unknown-linux-musl/usr" headers_install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- toolchain/aarch64/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.19.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.19-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/aarch64-unknown-linux-musl/gcc-bin/7.3.0//aarch64-unknown-linux-musl-gcc" CFLAGS=" -ggdb3" "$BUILD_DIR/configure" \ --target=aarch64-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/aarch64-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/aarch64-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "headers": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.19.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.19-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="true" "$BUILD_DIR/configure" \ --target=aarch64-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/aarch64-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/aarch64-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} include/bits/alltypes.h || make ${JOBS:+-j$JOBS} obj/include/bits/alltypes.h make ${JOBS:+-j$JOBS} install-headers "ndebug": !!bool |- true "o0": "build_dependencies": - |- toolchain/aarch64/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.19.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.19-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/aarch64-unknown-linux-musl/gcc-bin/7.3.0//aarch64-unknown-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O0" "$BUILD_DIR/configure" \ --target=aarch64-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/aarch64-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/aarch64-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o1": "build_dependencies": - |- toolchain/aarch64/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.19.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.19-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/aarch64-unknown-linux-musl/gcc-bin/7.3.0//aarch64-unknown-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O1" "$BUILD_DIR/configure" \ --target=aarch64-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/aarch64-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/aarch64-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o2": "build_dependencies": - |- toolchain/aarch64/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.19.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.19-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/aarch64-unknown-linux-musl/gcc-bin/7.3.0//aarch64-unknown-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O2" "$BUILD_DIR/configure" \ --target=aarch64-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/aarch64-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/aarch64-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o3": "build_dependencies": - |- toolchain/aarch64/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.19.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.19-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/aarch64-unknown-linux-musl/gcc-bin/7.3.0//aarch64-unknown-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O3" "$BUILD_DIR/configure" \ --target=aarch64-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/aarch64-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/aarch64-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYRIGHT "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": - |- ${ORCHESTRA_ROOT}/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/binutils-bin/2.35 "builds": "default": "build_dependencies": - |- glibc - |- toolchain/host/gcc - |- toolchain/host/binutils "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/binutils/binutils-2.35.tar.bz2 cd "$BUILD_DIR" && "$SOURCE_DIR/configure" \ --build=x86_64-pc-linux-gnu \ --host=x86_64-pc-linux-gnu \ --target=armv7a-hardfloat-linux-uclibceabi \ --with-sysroot="$ORCHESTRA_ROOT/armv7a-hardfloat-linux-uclibceabi" \ --prefix=$ORCHESTRA_ROOT \ --datadir=$ORCHESTRA_ROOT/share/binutils-data/armv7a-hardfloat-linux-uclibceabi/2.35 \ --infodir=$ORCHESTRA_ROOT/share/binutils-data/armv7a-hardfloat-linux-uclibceabi/2.35/info \ --mandir=$ORCHESTRA_ROOT/share/binutils-data/armv7a-hardfloat-linux-uclibceabi/2.35/man \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/binutils-bin/2.35 \ --libdir=$ORCHESTRA_ROOT/lib64/binutils/armv7a-hardfloat-linux-uclibceabi/2.35 \ --libexecdir=$ORCHESTRA_ROOT/lib64/binutils/armv7a-hardfloat-linux-uclibceabi/2.35 \ --includedir=$ORCHESTRA_ROOT/lib64/binutils/armv7a-hardfloat-linux-uclibceabi/2.35/include \ --without-included-gettext \ --with-zlib \ --enable-poison-system-directories \ --enable-secureplt \ --enable-obsolete \ --enable-gold \ --disable-shared \ --enable-threads \ --enable-install-libiberty \ --disable-werror \ --disable-static \ --disable-gdb \ --disable-libdecnumber \ --disable-readline \ --disable-sim \ --without-debuginfod \ --without-stage1-ldflags \ \ CFLAGS="-w -ggdb3 -O3" \ CXXFLAGS="-w -ggdb3 -O3" "dependencies": - |- gcc-runtime "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": - |- ${ORCHESTRA_ROOT}/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/gcc-bin/9.2.0 "builds": "stage1": "build_dependencies": - |- glibc - |- gmp - |- mpfr - |- mpc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cfns-fix-mismatch-in-gnu_inline-attributes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cpp-musl-support.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-fixes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-remove-dependency-on-libc_single_threaded.patch" "$SOURCE_DIR" sed -i 's|gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"|gcc_gxx_include_dir="/${gcc_gxx_without_sysroot#/}"|' "$SOURCE_DIR/gcc/configure" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" "$SOURCE_DIR/configure" \ --host=x86_64-pc-linux-gnu \ --build=x86_64-pc-linux-gnu \ --target=armv7a-hardfloat-linux-uclibceabi \ --prefix=$ORCHESTRA_ROOT \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/gcc-bin/9.2.0 \ --includedir=$ORCHESTRA_ROOT/lib/gcc/armv7a-hardfloat-linux-uclibceabi/9.2.0/include \ --datadir=$ORCHESTRA_ROOT/share/gcc-data/armv7a-hardfloat-linux-uclibceabi/9.2.0 \ --mandir=$ORCHESTRA_ROOT/share/gcc-data/armv7a-hardfloat-linux-uclibceabi/9.2.0/man \ --infodir=$ORCHESTRA_ROOT/share/gcc-data/armv7a-hardfloat-linux-uclibceabi/9.2.0/info \ --with-sysroot=$ORCHESTRA_ROOT/armv7a-hardfloat-linux-uclibceabi \ --enable-obsolete \ --enable-secureplt \ --disable-werror \ --disable-nls \ --without-included-gettext \ --enable-checking=release \ --enable-libstdcxx-time \ --enable-poison-system-directories \ --disable-host-shared \ --enable-shared \ --disable-libatomic \ --disable-bootstrap \ --disable-multilib \ --disable-altivec \ --disable-fixed-point \ --disable-libgcj \ --disable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-libcilkrts \ --disable-vtable-verify \ --disable-libvtv \ --disable-libquadmath \ --disable-rpath \ --enable-lto \ --disable-vtable-verify \ --disable-libsanitizer \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --without-zstd \ --enable-__cxa_atexit \ --enable-tls \ --enable-clocale=gnu \ --with-float=softfp \ --with-arch=armv7-a \ --without-cloog \ --disable-libsanitizer \ --disable-libssp \ --disable-shared \ --enable-languages=c \ CFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include" \ CXXFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include -std=gnu++11" \ LDFLAGS="-L$INSTALL_LINK_ONLY_PATH/lib -L$ORCHESTRA_ROOT/lib -lrt --sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -fuse-ld=gold -Wl,-rpath,$RPATH_PLACEHOLDER/lib -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/clang/16/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/llvm/lib/ -static-libgcc -static-libstdc++ $BUILD_DIR/fake-libc-single-threaded.o -L$INSTALL_LINK_ONLY_PATH/lib64 --sysroot=$INSTALL_LINK_ONLY_PATH" "dependencies": - |- toolchain/arm/binutils - |- toolchain/host/binutils - |- toolchain/arm/uclibc~headers - |- toolchain/arm/linux-headers "install": "cd \"$BUILD_DIR\"\nmake ${JOBS:+-j$JOBS} \nmake install \n\nNEW_GCC_PATH=\"$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/gcc-bin/9.2.0/\"\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/gcc\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/cc\"; then\n ln -s gcc \"${DESTDIR}${NEW_GCC_PATH}/cc\"\n fi\n\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n COMPILER_WRAPPER=\"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\"\n echo \"25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}\" | sha256sum -c -\n cp \"${COMPILER_WRAPPER}\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/gcc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-gcc\"\n\n cp -a \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/gcc/x86_64-pc-linux-gnu/9.2.0/*.{a,o} \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/\n\nfi\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/g++\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/c++\"; then\n ln -s g++ \"${DESTDIR}${NEW_GCC_PATH}/c++\"\n fi\n\n cp \"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/g++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-g++\"\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/c++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-c++\"\n\nfi\n\nrm -f \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib64/libcc1.*\n\n# Fixinclude locates the wrong pthread.h\nfind \"${DESTDIR}${ORCHESTRA_ROOT}\" -type d -name include-fixed -exec rm -f {}/pthread.h \\;\n" "ndebug": !!bool |- true "stage2": "build_dependencies": - |- toolchain/arm/gcc~stage1 - |- glibc - |- gmp - |- mpfr - |- mpc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cfns-fix-mismatch-in-gnu_inline-attributes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cpp-musl-support.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-fixes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-remove-dependency-on-libc_single_threaded.patch" "$SOURCE_DIR" sed -i 's|gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"|gcc_gxx_include_dir="/${gcc_gxx_without_sysroot#/}"|' "$SOURCE_DIR/gcc/configure" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" "$SOURCE_DIR/configure" \ --host=x86_64-pc-linux-gnu \ --build=x86_64-pc-linux-gnu \ --target=armv7a-hardfloat-linux-uclibceabi \ --prefix=$ORCHESTRA_ROOT \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/gcc-bin/9.2.0 \ --includedir=$ORCHESTRA_ROOT/lib/gcc/armv7a-hardfloat-linux-uclibceabi/9.2.0/include \ --datadir=$ORCHESTRA_ROOT/share/gcc-data/armv7a-hardfloat-linux-uclibceabi/9.2.0 \ --mandir=$ORCHESTRA_ROOT/share/gcc-data/armv7a-hardfloat-linux-uclibceabi/9.2.0/man \ --infodir=$ORCHESTRA_ROOT/share/gcc-data/armv7a-hardfloat-linux-uclibceabi/9.2.0/info \ --with-sysroot=$ORCHESTRA_ROOT/armv7a-hardfloat-linux-uclibceabi \ --enable-obsolete \ --enable-secureplt \ --disable-werror \ --disable-nls \ --without-included-gettext \ --enable-checking=release \ --enable-libstdcxx-time \ --enable-poison-system-directories \ --disable-host-shared \ --enable-shared \ --disable-libatomic \ --disable-bootstrap \ --disable-multilib \ --disable-altivec \ --disable-fixed-point \ --disable-libgcj \ --disable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-libcilkrts \ --disable-vtable-verify \ --disable-libvtv \ --disable-libquadmath \ --disable-rpath \ --enable-lto \ --disable-vtable-verify \ --disable-libsanitizer \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --without-zstd \ --enable-__cxa_atexit \ --enable-tls \ --enable-clocale=gnu \ --with-float=softfp \ --with-arch=armv7-a \ --without-cloog \ --disable-libsanitizer \ --disable-libssp \ --disable-shared \ --enable-languages=c,c++ \ CFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include" \ CXXFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include -std=gnu++11" \ LDFLAGS="-L$INSTALL_LINK_ONLY_PATH/lib -L$ORCHESTRA_ROOT/lib -lrt --sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -fuse-ld=gold -Wl,-rpath,$RPATH_PLACEHOLDER/lib -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/clang/16/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/llvm/lib/ -static-libgcc -static-libstdc++ $BUILD_DIR/fake-libc-single-threaded.o -L$INSTALL_LINK_ONLY_PATH/lib64 --sysroot=$INSTALL_LINK_ONLY_PATH" "dependencies": - |- toolchain/arm/binutils - |- toolchain/host/binutils - |- toolchain/arm/uclibc - |- toolchain/arm/linux-headers "install": "cd \"$BUILD_DIR\"\nmake ${JOBS:+-j$JOBS} \nmake install \n\nNEW_GCC_PATH=\"$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/gcc-bin/9.2.0/\"\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/gcc\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/cc\"; then\n ln -s gcc \"${DESTDIR}${NEW_GCC_PATH}/cc\"\n fi\n\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n COMPILER_WRAPPER=\"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\"\n echo \"25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}\" | sha256sum -c -\n cp \"${COMPILER_WRAPPER}\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/gcc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-gcc\"\n\n cp -a \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/gcc/x86_64-pc-linux-gnu/9.2.0/*.{a,o} \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/\n\nfi\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/g++\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/c++\"; then\n ln -s g++ \"${DESTDIR}${NEW_GCC_PATH}/c++\"\n fi\n\n cp \"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/g++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-g++\"\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/c++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-c++\"\n\nfi\n\nrm -f \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib64/libcc1.*\n\n# Fixinclude locates the wrong pthread.h\nfind \"${DESTDIR}${ORCHESTRA_ROOT}\" -type d -name include-fixed -exec rm -f {}/pthread.h \\;\n" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- stage2 "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.1.4.tar.xz "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} -C "$BUILD_DIR" \ ARCH=arm \ INSTALL_HDR_PATH="${DESTDIR}${ORCHESTRA_ROOT}/armv7a-hardfloat-linux-uclibceabi/usr" headers_install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- toolchain/arm/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "https://uclibc.org/downloads/uClibc-0.9.33.2.tar.bz2" cd "$BUILD_DIR" patch -p1 < "${ORCHESTRA_DOTDIR}/patches/blt-blo.patch" patch -p1 < "${ORCHESTRA_DOTDIR}/patches/uclibc-0071-Fix-libgcc_s_resume-issue.patch" echo 'false' > extra/config/lxdialog/check-lxdialog.sh make ARCH=arm defconfig cp "${ORCHESTRA_DOTDIR}/patches/uClibc.config" .config sed 's|$INSTALL_PATH|'"$ORCHESTRA_ROOT"'|g' .config -i sed 's|$FLAGS|-ggdb3|g' .config -i true | make oldconfig sed 's|^typedef __kernel_dev_t\s*__kernel_old_dev_t;$|\0\ntypedef long __kernel_long_t;\ntypedef unsigned long __kernel_ulong_t;|' libc/sysdeps/linux/arm/bits/kernel_types.h -i "dependencies": [] "install": | export PATH="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/gcc-bin/9.2.0/:$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/binutils-bin/2.35:$PATH" make -C "$BUILD_DIR" make -C "$BUILD_DIR" install DESTDIR="${DESTDIR}${ORCHESTRA_ROOT}/armv7a-hardfloat-linux-uclibceabi" "ndebug": !!bool |- true "headers": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "https://uclibc.org/downloads/uClibc-0.9.33.2.tar.bz2" cd "$BUILD_DIR" patch -p1 < "${ORCHESTRA_DOTDIR}/patches/blt-blo.patch" patch -p1 < "${ORCHESTRA_DOTDIR}/patches/uclibc-0071-Fix-libgcc_s_resume-issue.patch" echo 'false' > extra/config/lxdialog/check-lxdialog.sh make ARCH=arm defconfig cp "${ORCHESTRA_DOTDIR}/patches/uClibc.config" .config sed 's|$INSTALL_PATH|'"$ORCHESTRA_ROOT"'|g' .config -i sed 's|$FLAGS||g' .config -i true | make oldconfig sed 's|^typedef __kernel_dev_t\s*__kernel_old_dev_t;$|\0\ntypedef long __kernel_long_t;\ntypedef unsigned long __kernel_ulong_t;|' libc/sysdeps/linux/arm/bits/kernel_types.h -i "dependencies": [] "install": | cd "$BUILD_DIR" make headers make DESTDIR="${DESTDIR}${ORCHESTRA_ROOT}/armv7a-hardfloat-linux-uclibceabi" install_headers "ndebug": !!bool |- true "o0": "build_dependencies": - |- toolchain/arm/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "https://uclibc.org/downloads/uClibc-0.9.33.2.tar.bz2" cd "$BUILD_DIR" patch -p1 < "${ORCHESTRA_DOTDIR}/patches/blt-blo.patch" patch -p1 < "${ORCHESTRA_DOTDIR}/patches/uclibc-0071-Fix-libgcc_s_resume-issue.patch" echo 'false' > extra/config/lxdialog/check-lxdialog.sh make ARCH=arm defconfig cp "${ORCHESTRA_DOTDIR}/patches/uClibc.config" .config sed 's|$INSTALL_PATH|'"$ORCHESTRA_ROOT"'|g' .config -i sed 's|$FLAGS|-ggdb3 -Wl,--gc-sections -ffunction-sections -O0|g' .config -i true | make oldconfig sed 's|^typedef __kernel_dev_t\s*__kernel_old_dev_t;$|\0\ntypedef long __kernel_long_t;\ntypedef unsigned long __kernel_ulong_t;|' libc/sysdeps/linux/arm/bits/kernel_types.h -i "dependencies": [] "install": | export PATH="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/gcc-bin/9.2.0/:$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/binutils-bin/2.35:$PATH" make -C "$BUILD_DIR" make -C "$BUILD_DIR" install DESTDIR="${DESTDIR}${ORCHESTRA_ROOT}/armv7a-hardfloat-linux-uclibceabi" "ndebug": !!bool |- true "o1": "build_dependencies": - |- toolchain/arm/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "https://uclibc.org/downloads/uClibc-0.9.33.2.tar.bz2" cd "$BUILD_DIR" patch -p1 < "${ORCHESTRA_DOTDIR}/patches/blt-blo.patch" patch -p1 < "${ORCHESTRA_DOTDIR}/patches/uclibc-0071-Fix-libgcc_s_resume-issue.patch" echo 'false' > extra/config/lxdialog/check-lxdialog.sh make ARCH=arm defconfig cp "${ORCHESTRA_DOTDIR}/patches/uClibc.config" .config sed 's|$INSTALL_PATH|'"$ORCHESTRA_ROOT"'|g' .config -i sed 's|$FLAGS|-ggdb3 -Wl,--gc-sections -ffunction-sections -O1|g' .config -i true | make oldconfig sed 's|^typedef __kernel_dev_t\s*__kernel_old_dev_t;$|\0\ntypedef long __kernel_long_t;\ntypedef unsigned long __kernel_ulong_t;|' libc/sysdeps/linux/arm/bits/kernel_types.h -i "dependencies": [] "install": | export PATH="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/gcc-bin/9.2.0/:$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/binutils-bin/2.35:$PATH" make -C "$BUILD_DIR" make -C "$BUILD_DIR" install DESTDIR="${DESTDIR}${ORCHESTRA_ROOT}/armv7a-hardfloat-linux-uclibceabi" "ndebug": !!bool |- true "o2": "build_dependencies": - |- toolchain/arm/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "https://uclibc.org/downloads/uClibc-0.9.33.2.tar.bz2" cd "$BUILD_DIR" patch -p1 < "${ORCHESTRA_DOTDIR}/patches/blt-blo.patch" patch -p1 < "${ORCHESTRA_DOTDIR}/patches/uclibc-0071-Fix-libgcc_s_resume-issue.patch" echo 'false' > extra/config/lxdialog/check-lxdialog.sh make ARCH=arm defconfig cp "${ORCHESTRA_DOTDIR}/patches/uClibc.config" .config sed 's|$INSTALL_PATH|'"$ORCHESTRA_ROOT"'|g' .config -i sed 's|$FLAGS|-ggdb3 -Wl,--gc-sections -ffunction-sections -O2|g' .config -i true | make oldconfig sed 's|^typedef __kernel_dev_t\s*__kernel_old_dev_t;$|\0\ntypedef long __kernel_long_t;\ntypedef unsigned long __kernel_ulong_t;|' libc/sysdeps/linux/arm/bits/kernel_types.h -i "dependencies": [] "install": | export PATH="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/gcc-bin/9.2.0/:$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/binutils-bin/2.35:$PATH" make -C "$BUILD_DIR" make -C "$BUILD_DIR" install DESTDIR="${DESTDIR}${ORCHESTRA_ROOT}/armv7a-hardfloat-linux-uclibceabi" "ndebug": !!bool |- true "o3": "build_dependencies": - |- toolchain/arm/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "https://uclibc.org/downloads/uClibc-0.9.33.2.tar.bz2" cd "$BUILD_DIR" patch -p1 < "${ORCHESTRA_DOTDIR}/patches/blt-blo.patch" patch -p1 < "${ORCHESTRA_DOTDIR}/patches/uclibc-0071-Fix-libgcc_s_resume-issue.patch" echo 'false' > extra/config/lxdialog/check-lxdialog.sh make ARCH=arm defconfig cp "${ORCHESTRA_DOTDIR}/patches/uClibc.config" .config sed 's|$INSTALL_PATH|'"$ORCHESTRA_ROOT"'|g' .config -i sed 's|$FLAGS|-ggdb3 -Wl,--gc-sections -ffunction-sections -O3|g' .config -i true | make oldconfig sed 's|^typedef __kernel_dev_t\s*__kernel_old_dev_t;$|\0\ntypedef long __kernel_long_t;\ntypedef unsigned long __kernel_ulong_t;|' libc/sysdeps/linux/arm/bits/kernel_types.h -i "dependencies": [] "install": | export PATH="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/gcc-bin/9.2.0/:$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/armv7a-hardfloat-linux-uclibceabi/binutils-bin/2.35:$PATH" make -C "$BUILD_DIR" make -C "$BUILD_DIR" install DESTDIR="${DESTDIR}${ORCHESTRA_ROOT}/armv7a-hardfloat-linux-uclibceabi" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING.LIB "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": - |- ${ORCHESTRA_ROOT}/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/binutils-bin/2.39 "builds": "default": "build_dependencies": - |- glibc - |- toolchain/host/gcc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/binutils/binutils-2.39.tar.bz2 cd "$BUILD_DIR" && "$SOURCE_DIR/configure" \ --build=x86_64-pc-linux-gnu \ --host=x86_64-pc-linux-gnu \ --target=x86_64-pc-linux-gnu \ --with-sysroot="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu" \ --prefix=$ORCHESTRA_ROOT \ --datadir=$ORCHESTRA_ROOT/share/binutils-data/x86_64-pc-linux-gnu/2.39 \ --infodir=$ORCHESTRA_ROOT/share/binutils-data/x86_64-pc-linux-gnu/2.39/info \ --mandir=$ORCHESTRA_ROOT/share/binutils-data/x86_64-pc-linux-gnu/2.39/man \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/binutils-bin/2.39 \ --libdir=$ORCHESTRA_ROOT/lib64/binutils/x86_64-pc-linux-gnu/2.39 \ --libexecdir=$ORCHESTRA_ROOT/lib64/binutils/x86_64-pc-linux-gnu/2.39 \ --includedir=$ORCHESTRA_ROOT/lib64/binutils/x86_64-pc-linux-gnu/2.39/include \ --without-included-gettext \ --with-zlib \ --enable-poison-system-directories \ --enable-secureplt \ --enable-obsolete \ --enable-gold \ --disable-shared \ --enable-threads \ --enable-install-libiberty \ --disable-werror \ --disable-static \ --disable-gdb \ --disable-libdecnumber \ --disable-readline \ --disable-sim \ --without-debuginfod \ --without-stage1-ldflags \ --enable-gold=default \ CFLAGS="-w -ggdb3 -O3" \ CXXFLAGS="-w -ggdb3 -O3" "dependencies": - |- gcc-runtime "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": - |- ${ORCHESTRA_ROOT}/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/gcc-bin/11.2.0 "builds": "stage1": "build_dependencies": - |- glibc - |- gmp - |- mpfr - |- mpc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-11.2.0-cfns-fix-mismatch-in-gnu_inline-attributes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-11.2.0-cpp-musl-support.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-11.2.0-fixes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-11.2.0-remove-dependency-on-libc_single_threaded.patch" "$SOURCE_DIR" sed -i 's|gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"|gcc_gxx_include_dir="/${gcc_gxx_without_sysroot#/}"|' "$SOURCE_DIR/gcc/configure" sed -i "s|SHLIB_LINK = .(CC)|\0 -L$ORCHESTRA_ROOT/link-only/lib|" "$SOURCE_DIR/libgcc/config/t-slibgcc" sed -i 's|@multilib_flags@||' "$SOURCE_DIR/libgcc/config/t-slibgcc" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" "$SOURCE_DIR/configure" \ --host=x86_64-pc-linux-gnu \ --build=x86_64-pc-linux-gnu \ --target=x86_64-pc-linux-gnu \ --prefix=$ORCHESTRA_ROOT \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/gcc-bin/11.2.0 \ --includedir=$ORCHESTRA_ROOT/lib/gcc/x86_64-pc-linux-gnu/11.2.0/include \ --datadir=$ORCHESTRA_ROOT/share/gcc-data/x86_64-pc-linux-gnu/11.2.0 \ --mandir=$ORCHESTRA_ROOT/share/gcc-data/x86_64-pc-linux-gnu/11.2.0/man \ --infodir=$ORCHESTRA_ROOT/share/gcc-data/x86_64-pc-linux-gnu/11.2.0/info \ --with-sysroot=$INSTALL_LINK_ONLY_PATH \ --enable-obsolete \ --enable-secureplt \ --disable-werror \ --disable-nls \ --without-included-gettext \ --enable-checking=release \ --enable-libstdcxx-time \ --enable-poison-system-directories \ --disable-host-shared \ --enable-shared \ --disable-libatomic \ --disable-bootstrap \ --disable-multilib \ --disable-altivec \ --disable-fixed-point \ --disable-libgcj \ --disable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-libcilkrts \ --disable-vtable-verify \ --disable-libvtv \ --disable-libquadmath \ --disable-rpath \ --enable-lto \ --disable-vtable-verify \ --disable-libsanitizer \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --without-zstd \ --without-cloog \ --enable-libsanitizer \ --enable-libssp \ --enable-shared \ --enable-libatomic \ --enable-libquadmath \ --enable-esp \ --disable-libstdcxx-pch \ --enable-threads=posix \ --enable-__cxa_atexit \ --enable-clocale=gnu \ --disable-altivec \ --disable-fixed-point \ --enable-targets=all \ --enable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-systemtap \ --enable-lto \ --without-isl \ --enable-default-pie \ --enable-default-ssp \ --disable-libmpx \ --with-glibc-version=2.13 \ CC=$INSTALL_LINK_ONLY_PATH/early-gcc/bin/gcc \ CXX=$INSTALL_LINK_ONLY_PATH/early-gcc/bin/g++ \ CFLAGS_FOR_TARGET="--sysroot=$INSTALL_LINK_ONLY_PATH -I$ORCHESTRA_ROOT/include" \ CXXFLAGS_FOR_TARGET="--sysroot=$INSTALL_LINK_ONLY_PATH -I$ORCHESTRA_ROOT/include" \ LDFLAGS_FOR_TARGET="--sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -L$ORCHESTRA_ROOT/lib -L$INSTALL_LINK_ONLY_PATH/lib" \ --enable-languages=c \ CFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include" \ CXXFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include -std=gnu++11" \ LDFLAGS="-L$INSTALL_LINK_ONLY_PATH/lib -L$ORCHESTRA_ROOT/lib -lrt --sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -fuse-ld=gold -Wl,-rpath,$RPATH_PLACEHOLDER/lib -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/clang/16/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/llvm/lib/ -static-libgcc -static-libstdc++ $BUILD_DIR/fake-libc-single-threaded.o -L$INSTALL_LINK_ONLY_PATH/lib64 --sysroot=$INSTALL_LINK_ONLY_PATH" "dependencies": - |- toolchain/host/linux-headers "install": "cd \"$BUILD_DIR\"\nmake ${JOBS:+-j$JOBS} \nmake install \n\nNEW_GCC_PATH=\"$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/gcc-bin/11.2.0/\"\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/gcc\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/cc\"; then\n ln -s gcc \"${DESTDIR}${NEW_GCC_PATH}/cc\"\n fi\n\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n COMPILER_WRAPPER=\"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\"\n echo \"25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}\" | sha256sum -c -\n cp \"${COMPILER_WRAPPER}\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/gcc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-gcc\"\n\n cp -a \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/gcc/x86_64-pc-linux-gnu/11.2.0/*.{a,o} \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/\n\nfi\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/g++\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/c++\"; then\n ln -s g++ \"${DESTDIR}${NEW_GCC_PATH}/c++\"\n fi\n\n cp \"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/g++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-g++\"\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/c++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-c++\"\n\nfi\n\nrm -f \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib64/libcc1.*\n\n# Fixinclude locates the wrong pthread.h\nfind \"${DESTDIR}${ORCHESTRA_ROOT}\" -type d -name include-fixed -exec rm -f {}/pthread.h \\;\n\"$ORCHESTRA_DOTDIR\"/support/save-for-later \\\n -i \"${DESTDIR}${ORCHESTRA_ROOT}\" \\\n gcc-runtime \\\n '^lib(|32|64)\\/lib[^/]*$' '^lib(|32|64)\\/crt[^/]*\\.o$'\n" "ndebug": !!bool |- true "stage2": "build_dependencies": - |- early-gcc - |- glibc - |- gmp - |- mpfr - |- mpc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-11.2.0-cfns-fix-mismatch-in-gnu_inline-attributes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-11.2.0-cpp-musl-support.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-11.2.0-fixes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-11.2.0-remove-dependency-on-libc_single_threaded.patch" "$SOURCE_DIR" sed -i 's|gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"|gcc_gxx_include_dir="/${gcc_gxx_without_sysroot#/}"|' "$SOURCE_DIR/gcc/configure" sed -i "s|SHLIB_LINK = .(CC)|\0 -L$ORCHESTRA_ROOT/link-only/lib|" "$SOURCE_DIR/libgcc/config/t-slibgcc" sed -i 's|@multilib_flags@||' "$SOURCE_DIR/libgcc/config/t-slibgcc" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" "$SOURCE_DIR/configure" \ --host=x86_64-pc-linux-gnu \ --build=x86_64-pc-linux-gnu \ --target=x86_64-pc-linux-gnu \ --prefix=$ORCHESTRA_ROOT \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/gcc-bin/11.2.0 \ --includedir=$ORCHESTRA_ROOT/lib/gcc/x86_64-pc-linux-gnu/11.2.0/include \ --datadir=$ORCHESTRA_ROOT/share/gcc-data/x86_64-pc-linux-gnu/11.2.0 \ --mandir=$ORCHESTRA_ROOT/share/gcc-data/x86_64-pc-linux-gnu/11.2.0/man \ --infodir=$ORCHESTRA_ROOT/share/gcc-data/x86_64-pc-linux-gnu/11.2.0/info \ --with-sysroot=$INSTALL_LINK_ONLY_PATH \ --enable-obsolete \ --enable-secureplt \ --disable-werror \ --disable-nls \ --without-included-gettext \ --enable-checking=release \ --enable-libstdcxx-time \ --enable-poison-system-directories \ --disable-host-shared \ --enable-shared \ --disable-libatomic \ --disable-bootstrap \ --disable-multilib \ --disable-altivec \ --disable-fixed-point \ --disable-libgcj \ --disable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-libcilkrts \ --disable-vtable-verify \ --disable-libvtv \ --disable-libquadmath \ --disable-rpath \ --enable-lto \ --disable-vtable-verify \ --disable-libsanitizer \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --without-zstd \ --without-cloog \ --enable-libsanitizer \ --enable-libssp \ --enable-shared \ --enable-libatomic \ --enable-libquadmath \ --enable-esp \ --disable-libstdcxx-pch \ --enable-threads=posix \ --enable-__cxa_atexit \ --enable-clocale=gnu \ --disable-altivec \ --disable-fixed-point \ --enable-targets=all \ --enable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-systemtap \ --enable-lto \ --without-isl \ --enable-default-pie \ --enable-default-ssp \ --disable-libmpx \ --with-glibc-version=2.13 \ CC=$INSTALL_LINK_ONLY_PATH/early-gcc/bin/gcc \ CXX=$INSTALL_LINK_ONLY_PATH/early-gcc/bin/g++ \ CFLAGS_FOR_TARGET="--sysroot=$INSTALL_LINK_ONLY_PATH -I$ORCHESTRA_ROOT/include" \ CXXFLAGS_FOR_TARGET="--sysroot=$INSTALL_LINK_ONLY_PATH -I$ORCHESTRA_ROOT/include" \ LDFLAGS_FOR_TARGET="--sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -L$ORCHESTRA_ROOT/lib -L$INSTALL_LINK_ONLY_PATH/lib" \ --enable-languages=c,c++ \ CFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include" \ CXXFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include -std=gnu++11" \ LDFLAGS="-L$INSTALL_LINK_ONLY_PATH/lib -L$ORCHESTRA_ROOT/lib -lrt --sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -fuse-ld=gold -Wl,-rpath,$RPATH_PLACEHOLDER/lib -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/clang/16/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/llvm/lib/ -static-libgcc -static-libstdc++ $BUILD_DIR/fake-libc-single-threaded.o -L$INSTALL_LINK_ONLY_PATH/lib64 --sysroot=$INSTALL_LINK_ONLY_PATH" "dependencies": - |- toolchain/host/linux-headers "install": "cd \"$BUILD_DIR\"\nmake ${JOBS:+-j$JOBS} \nmake install \n\nNEW_GCC_PATH=\"$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/gcc-bin/11.2.0/\"\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/gcc\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/cc\"; then\n ln -s gcc \"${DESTDIR}${NEW_GCC_PATH}/cc\"\n fi\n\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n COMPILER_WRAPPER=\"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\"\n echo \"25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}\" | sha256sum -c -\n cp \"${COMPILER_WRAPPER}\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/gcc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-gcc\"\n\n cp -a \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/gcc/x86_64-pc-linux-gnu/11.2.0/*.{a,o} \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/\n\nfi\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/g++\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/c++\"; then\n ln -s g++ \"${DESTDIR}${NEW_GCC_PATH}/c++\"\n fi\n\n cp \"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/g++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-g++\"\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/c++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-c++\"\n\nfi\n\nrm -f \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib64/libcc1.*\n\n# Fixinclude locates the wrong pthread.h\nfind \"${DESTDIR}${ORCHESTRA_ROOT}\" -type d -name include-fixed -exec rm -f {}/pthread.h \\;\n\"$ORCHESTRA_DOTDIR\"/support/save-for-later \\\n -i \"${DESTDIR}${ORCHESTRA_ROOT}\" \\\n gcc-runtime \\\n '^lib(|32|64)\\/lib[^/]*$' '^lib(|32|64)\\/crt[^/]*\\.o$'\n" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- stage2 "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.1.4.tar.xz "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} -C "$BUILD_DIR" \ ARCH=x86_64 \ INSTALL_HDR_PATH="${DESTDIR}${ORCHESTRA_ROOT}/link-only" headers_install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": - |- ${ORCHESTRA_ROOT}/x86_64-pc-linux-gnu/i386-gentoo-linux-musl/binutils-bin/2.35 "builds": "default": "build_dependencies": - |- glibc - |- toolchain/host/gcc - |- toolchain/host/binutils "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/binutils/binutils-2.35.tar.bz2 cd "$BUILD_DIR" && "$SOURCE_DIR/configure" \ --build=x86_64-pc-linux-gnu \ --host=x86_64-pc-linux-gnu \ --target=i386-gentoo-linux-musl \ --with-sysroot="$ORCHESTRA_ROOT/i386-gentoo-linux-musl" \ --prefix=$ORCHESTRA_ROOT \ --datadir=$ORCHESTRA_ROOT/share/binutils-data/i386-gentoo-linux-musl/2.35 \ --infodir=$ORCHESTRA_ROOT/share/binutils-data/i386-gentoo-linux-musl/2.35/info \ --mandir=$ORCHESTRA_ROOT/share/binutils-data/i386-gentoo-linux-musl/2.35/man \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/i386-gentoo-linux-musl/binutils-bin/2.35 \ --libdir=$ORCHESTRA_ROOT/lib64/binutils/i386-gentoo-linux-musl/2.35 \ --libexecdir=$ORCHESTRA_ROOT/lib64/binutils/i386-gentoo-linux-musl/2.35 \ --includedir=$ORCHESTRA_ROOT/lib64/binutils/i386-gentoo-linux-musl/2.35/include \ --without-included-gettext \ --with-zlib \ --enable-poison-system-directories \ --enable-secureplt \ --enable-obsolete \ --enable-gold \ --disable-shared \ --enable-threads \ --enable-install-libiberty \ --disable-werror \ --disable-static \ --disable-gdb \ --disable-libdecnumber \ --disable-readline \ --disable-sim \ --without-debuginfod \ --without-stage1-ldflags \ \ CFLAGS="-w -ggdb3 -O3" \ CXXFLAGS="-w -ggdb3 -O3" "dependencies": - |- gcc-runtime "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": - |- ${ORCHESTRA_ROOT}/x86_64-pc-linux-gnu/i386-gentoo-linux-musl/gcc-bin/9.2.0 "builds": "stage1": "build_dependencies": - |- glibc - |- gmp - |- mpfr - |- mpc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cfns-fix-mismatch-in-gnu_inline-attributes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cpp-musl-support.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-fixes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-remove-dependency-on-libc_single_threaded.patch" "$SOURCE_DIR" sed -i 's|gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"|gcc_gxx_include_dir="/${gcc_gxx_without_sysroot#/}"|' "$SOURCE_DIR/gcc/configure" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" "$SOURCE_DIR/configure" \ --host=x86_64-pc-linux-gnu \ --build=x86_64-pc-linux-gnu \ --target=i386-gentoo-linux-musl \ --prefix=$ORCHESTRA_ROOT \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/i386-gentoo-linux-musl/gcc-bin/9.2.0 \ --includedir=$ORCHESTRA_ROOT/lib/gcc/i386-gentoo-linux-musl/9.2.0/include \ --datadir=$ORCHESTRA_ROOT/share/gcc-data/i386-gentoo-linux-musl/9.2.0 \ --mandir=$ORCHESTRA_ROOT/share/gcc-data/i386-gentoo-linux-musl/9.2.0/man \ --infodir=$ORCHESTRA_ROOT/share/gcc-data/i386-gentoo-linux-musl/9.2.0/info \ --with-sysroot=$ORCHESTRA_ROOT/i386-gentoo-linux-musl \ --enable-obsolete \ --enable-secureplt \ --disable-werror \ --disable-nls \ --without-included-gettext \ --enable-checking=release \ --enable-libstdcxx-time \ --enable-poison-system-directories \ --disable-host-shared \ --enable-shared \ --disable-libatomic \ --disable-bootstrap \ --disable-multilib \ --disable-altivec \ --disable-fixed-point \ --disable-libgcj \ --disable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-libcilkrts \ --disable-vtable-verify \ --disable-libvtv \ --disable-libquadmath \ --disable-rpath \ --enable-lto \ --disable-vtable-verify \ --disable-libsanitizer \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --without-zstd \ --without-cloog \ --enable-targets=all \ --without-isl \ --disable-libsanitizer \ --disable-libssp \ --disable-shared \ --enable-languages=c \ CFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include" \ CXXFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include -std=gnu++11" \ LDFLAGS="-L$INSTALL_LINK_ONLY_PATH/lib -L$ORCHESTRA_ROOT/lib -lrt --sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -fuse-ld=gold -Wl,-rpath,$RPATH_PLACEHOLDER/lib -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/clang/16/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/llvm/lib/ -static-libgcc -static-libstdc++ $BUILD_DIR/fake-libc-single-threaded.o -L$INSTALL_LINK_ONLY_PATH/lib64 --sysroot=$INSTALL_LINK_ONLY_PATH" "dependencies": - |- toolchain/i386/binutils - |- toolchain/host/binutils - |- toolchain/i386/musl~headers - |- toolchain/i386/linux-headers "install": "cd \"$BUILD_DIR\"\nmake ${JOBS:+-j$JOBS} \nmake install \n\nNEW_GCC_PATH=\"$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/i386-gentoo-linux-musl/gcc-bin/9.2.0/\"\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/gcc\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/cc\"; then\n ln -s gcc \"${DESTDIR}${NEW_GCC_PATH}/cc\"\n fi\n\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n COMPILER_WRAPPER=\"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\"\n echo \"25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}\" | sha256sum -c -\n cp \"${COMPILER_WRAPPER}\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/gcc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-gcc\"\n\n cp -a \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/gcc/x86_64-pc-linux-gnu/9.2.0/*.{a,o} \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/\n\nfi\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/g++\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/c++\"; then\n ln -s g++ \"${DESTDIR}${NEW_GCC_PATH}/c++\"\n fi\n\n cp \"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/g++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-g++\"\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/c++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-c++\"\n\nfi\n\nrm -f \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib64/libcc1.*\n\n# Fixinclude locates the wrong pthread.h\nfind \"${DESTDIR}${ORCHESTRA_ROOT}\" -type d -name include-fixed -exec rm -f {}/pthread.h \\;\n" "ndebug": !!bool |- true "stage2": "build_dependencies": - |- toolchain/i386/gcc~stage1 - |- glibc - |- gmp - |- mpfr - |- mpc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cfns-fix-mismatch-in-gnu_inline-attributes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cpp-musl-support.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-fixes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-remove-dependency-on-libc_single_threaded.patch" "$SOURCE_DIR" sed -i 's|gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"|gcc_gxx_include_dir="/${gcc_gxx_without_sysroot#/}"|' "$SOURCE_DIR/gcc/configure" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" "$SOURCE_DIR/configure" \ --host=x86_64-pc-linux-gnu \ --build=x86_64-pc-linux-gnu \ --target=i386-gentoo-linux-musl \ --prefix=$ORCHESTRA_ROOT \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/i386-gentoo-linux-musl/gcc-bin/9.2.0 \ --includedir=$ORCHESTRA_ROOT/lib/gcc/i386-gentoo-linux-musl/9.2.0/include \ --datadir=$ORCHESTRA_ROOT/share/gcc-data/i386-gentoo-linux-musl/9.2.0 \ --mandir=$ORCHESTRA_ROOT/share/gcc-data/i386-gentoo-linux-musl/9.2.0/man \ --infodir=$ORCHESTRA_ROOT/share/gcc-data/i386-gentoo-linux-musl/9.2.0/info \ --with-sysroot=$ORCHESTRA_ROOT/i386-gentoo-linux-musl \ --enable-obsolete \ --enable-secureplt \ --disable-werror \ --disable-nls \ --without-included-gettext \ --enable-checking=release \ --enable-libstdcxx-time \ --enable-poison-system-directories \ --disable-host-shared \ --enable-shared \ --disable-libatomic \ --disable-bootstrap \ --disable-multilib \ --disable-altivec \ --disable-fixed-point \ --disable-libgcj \ --disable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-libcilkrts \ --disable-vtable-verify \ --disable-libvtv \ --disable-libquadmath \ --disable-rpath \ --enable-lto \ --disable-vtable-verify \ --disable-libsanitizer \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --without-zstd \ --without-cloog \ --enable-targets=all \ --without-isl \ --disable-libsanitizer \ --disable-libssp \ --disable-shared \ --enable-languages=c,c++ \ CFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include" \ CXXFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include -std=gnu++11" \ LDFLAGS="-L$INSTALL_LINK_ONLY_PATH/lib -L$ORCHESTRA_ROOT/lib -lrt --sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -fuse-ld=gold -Wl,-rpath,$RPATH_PLACEHOLDER/lib -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/clang/16/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/llvm/lib/ -static-libgcc -static-libstdc++ $BUILD_DIR/fake-libc-single-threaded.o -L$INSTALL_LINK_ONLY_PATH/lib64 --sysroot=$INSTALL_LINK_ONLY_PATH" "dependencies": - |- toolchain/i386/binutils - |- toolchain/host/binutils - |- toolchain/i386/musl - |- toolchain/i386/linux-headers "install": "cd \"$BUILD_DIR\"\nmake ${JOBS:+-j$JOBS} \nmake install \n\nNEW_GCC_PATH=\"$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/i386-gentoo-linux-musl/gcc-bin/9.2.0/\"\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/gcc\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/cc\"; then\n ln -s gcc \"${DESTDIR}${NEW_GCC_PATH}/cc\"\n fi\n\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n COMPILER_WRAPPER=\"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\"\n echo \"25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}\" | sha256sum -c -\n cp \"${COMPILER_WRAPPER}\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/gcc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-gcc\"\n\n cp -a \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/gcc/x86_64-pc-linux-gnu/9.2.0/*.{a,o} \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/\n\nfi\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/g++\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/c++\"; then\n ln -s g++ \"${DESTDIR}${NEW_GCC_PATH}/c++\"\n fi\n\n cp \"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/g++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-g++\"\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/c++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-c++\"\n\nfi\n\nrm -f \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib64/libcc1.*\n\n# Fixinclude locates the wrong pthread.h\nfind \"${DESTDIR}${ORCHESTRA_ROOT}\" -type d -name include-fixed -exec rm -f {}/pthread.h \\;\n" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- stage2 "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.1.4.tar.xz "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} -C "$BUILD_DIR" \ ARCH=i386 \ INSTALL_HDR_PATH="${DESTDIR}${ORCHESTRA_ROOT}/i386-gentoo-linux-musl/usr" headers_install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- toolchain/i386/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/i386-gentoo-linux-musl/gcc-bin/9.2.0//i386-gentoo-linux-musl-gcc" CFLAGS=" -ggdb3" "$BUILD_DIR/configure" \ --target=i386-gentoo-linux-musl \ --prefix="$ORCHESTRA_ROOT/i386-gentoo-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/i386-gentoo-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "headers": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="true" "$BUILD_DIR/configure" \ --target=i386-gentoo-linux-musl \ --prefix="$ORCHESTRA_ROOT/i386-gentoo-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/i386-gentoo-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} include/bits/alltypes.h || make ${JOBS:+-j$JOBS} obj/include/bits/alltypes.h make ${JOBS:+-j$JOBS} install-headers "ndebug": !!bool |- true "o0": "build_dependencies": - |- toolchain/i386/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/i386-gentoo-linux-musl/gcc-bin/9.2.0//i386-gentoo-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O0" "$BUILD_DIR/configure" \ --target=i386-gentoo-linux-musl \ --prefix="$ORCHESTRA_ROOT/i386-gentoo-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/i386-gentoo-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o1": "build_dependencies": - |- toolchain/i386/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/i386-gentoo-linux-musl/gcc-bin/9.2.0//i386-gentoo-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O1" "$BUILD_DIR/configure" \ --target=i386-gentoo-linux-musl \ --prefix="$ORCHESTRA_ROOT/i386-gentoo-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/i386-gentoo-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o2": "build_dependencies": - |- toolchain/i386/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/i386-gentoo-linux-musl/gcc-bin/9.2.0//i386-gentoo-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O2" "$BUILD_DIR/configure" \ --target=i386-gentoo-linux-musl \ --prefix="$ORCHESTRA_ROOT/i386-gentoo-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/i386-gentoo-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o3": "build_dependencies": - |- toolchain/i386/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/i386-gentoo-linux-musl/gcc-bin/9.2.0//i386-gentoo-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O3" "$BUILD_DIR/configure" \ --target=i386-gentoo-linux-musl \ --prefix="$ORCHESTRA_ROOT/i386-gentoo-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/i386-gentoo-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYRIGHT "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": - |- ${ORCHESTRA_ROOT}/x86_64-pc-linux-gnu/mips-unknown-linux-musl/binutils-bin/2.35 "builds": "default": "build_dependencies": - |- glibc - |- toolchain/host/gcc - |- toolchain/host/binutils "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/binutils/binutils-2.35.tar.bz2 cd "$BUILD_DIR" && "$SOURCE_DIR/configure" \ --build=x86_64-pc-linux-gnu \ --host=x86_64-pc-linux-gnu \ --target=mips-unknown-linux-musl \ --with-sysroot="$ORCHESTRA_ROOT/mips-unknown-linux-musl" \ --prefix=$ORCHESTRA_ROOT \ --datadir=$ORCHESTRA_ROOT/share/binutils-data/mips-unknown-linux-musl/2.35 \ --infodir=$ORCHESTRA_ROOT/share/binutils-data/mips-unknown-linux-musl/2.35/info \ --mandir=$ORCHESTRA_ROOT/share/binutils-data/mips-unknown-linux-musl/2.35/man \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mips-unknown-linux-musl/binutils-bin/2.35 \ --libdir=$ORCHESTRA_ROOT/lib64/binutils/mips-unknown-linux-musl/2.35 \ --libexecdir=$ORCHESTRA_ROOT/lib64/binutils/mips-unknown-linux-musl/2.35 \ --includedir=$ORCHESTRA_ROOT/lib64/binutils/mips-unknown-linux-musl/2.35/include \ --without-included-gettext \ --with-zlib \ --enable-poison-system-directories \ --enable-secureplt \ --enable-obsolete \ --enable-gold \ --disable-shared \ --enable-threads \ --enable-install-libiberty \ --disable-werror \ --disable-static \ --disable-gdb \ --disable-libdecnumber \ --disable-readline \ --disable-sim \ --without-debuginfod \ --without-stage1-ldflags \ \ CFLAGS="-w -ggdb3 -O3" \ CXXFLAGS="-w -ggdb3 -O3" "dependencies": - |- gcc-runtime "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": - |- ${ORCHESTRA_ROOT}/x86_64-pc-linux-gnu/mips-unknown-linux-musl/gcc-bin/9.2.0 "builds": "stage1": "build_dependencies": - |- glibc - |- gmp - |- mpfr - |- mpc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cfns-fix-mismatch-in-gnu_inline-attributes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cpp-musl-support.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-fixes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-remove-dependency-on-libc_single_threaded.patch" "$SOURCE_DIR" sed -i 's|gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"|gcc_gxx_include_dir="/${gcc_gxx_without_sysroot#/}"|' "$SOURCE_DIR/gcc/configure" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" "$SOURCE_DIR/configure" \ --host=x86_64-pc-linux-gnu \ --build=x86_64-pc-linux-gnu \ --target=mips-unknown-linux-musl \ --prefix=$ORCHESTRA_ROOT \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mips-unknown-linux-musl/gcc-bin/9.2.0 \ --includedir=$ORCHESTRA_ROOT/lib/gcc/mips-unknown-linux-musl/9.2.0/include \ --datadir=$ORCHESTRA_ROOT/share/gcc-data/mips-unknown-linux-musl/9.2.0 \ --mandir=$ORCHESTRA_ROOT/share/gcc-data/mips-unknown-linux-musl/9.2.0/man \ --infodir=$ORCHESTRA_ROOT/share/gcc-data/mips-unknown-linux-musl/9.2.0/info \ --with-sysroot=$ORCHESTRA_ROOT/mips-unknown-linux-musl \ --enable-obsolete \ --enable-secureplt \ --disable-werror \ --disable-nls \ --without-included-gettext \ --enable-checking=release \ --enable-libstdcxx-time \ --enable-poison-system-directories \ --disable-host-shared \ --enable-shared \ --disable-libatomic \ --disable-bootstrap \ --disable-multilib \ --disable-altivec \ --disable-fixed-point \ --disable-libgcj \ --disable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-libcilkrts \ --disable-vtable-verify \ --disable-libvtv \ --disable-libquadmath \ --disable-rpath \ --enable-lto \ --disable-vtable-verify \ --disable-libsanitizer \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --without-zstd \ --with-abi= \ --without-isl \ --disable-libsanitizer \ --disable-libssp \ --disable-shared \ --enable-languages=c \ CFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include" \ CXXFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include -std=gnu++11" \ LDFLAGS="-L$INSTALL_LINK_ONLY_PATH/lib -L$ORCHESTRA_ROOT/lib -lrt --sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -fuse-ld=gold -Wl,-rpath,$RPATH_PLACEHOLDER/lib -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/clang/16/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/llvm/lib/ -static-libgcc -static-libstdc++ $BUILD_DIR/fake-libc-single-threaded.o -L$INSTALL_LINK_ONLY_PATH/lib64 --sysroot=$INSTALL_LINK_ONLY_PATH" "dependencies": - |- toolchain/mips/binutils - |- toolchain/host/binutils - |- toolchain/mips/musl~headers - |- toolchain/mips/linux-headers "install": "cd \"$BUILD_DIR\"\nmake ${JOBS:+-j$JOBS} \nmake install \n\nNEW_GCC_PATH=\"$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mips-unknown-linux-musl/gcc-bin/9.2.0/\"\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/gcc\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/cc\"; then\n ln -s gcc \"${DESTDIR}${NEW_GCC_PATH}/cc\"\n fi\n\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n COMPILER_WRAPPER=\"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\"\n echo \"25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}\" | sha256sum -c -\n cp \"${COMPILER_WRAPPER}\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/gcc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-gcc\"\n\n cp -a \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/gcc/x86_64-pc-linux-gnu/9.2.0/*.{a,o} \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/\n\nfi\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/g++\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/c++\"; then\n ln -s g++ \"${DESTDIR}${NEW_GCC_PATH}/c++\"\n fi\n\n cp \"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/g++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-g++\"\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/c++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-c++\"\n\nfi\n\nrm -f \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib64/libcc1.*\n\n# Fixinclude locates the wrong pthread.h\nfind \"${DESTDIR}${ORCHESTRA_ROOT}\" -type d -name include-fixed -exec rm -f {}/pthread.h \\;\n" "ndebug": !!bool |- true "stage2": "build_dependencies": - |- toolchain/mips/gcc~stage1 - |- glibc - |- gmp - |- mpfr - |- mpc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cfns-fix-mismatch-in-gnu_inline-attributes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cpp-musl-support.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-fixes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-remove-dependency-on-libc_single_threaded.patch" "$SOURCE_DIR" sed -i 's|gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"|gcc_gxx_include_dir="/${gcc_gxx_without_sysroot#/}"|' "$SOURCE_DIR/gcc/configure" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" "$SOURCE_DIR/configure" \ --host=x86_64-pc-linux-gnu \ --build=x86_64-pc-linux-gnu \ --target=mips-unknown-linux-musl \ --prefix=$ORCHESTRA_ROOT \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mips-unknown-linux-musl/gcc-bin/9.2.0 \ --includedir=$ORCHESTRA_ROOT/lib/gcc/mips-unknown-linux-musl/9.2.0/include \ --datadir=$ORCHESTRA_ROOT/share/gcc-data/mips-unknown-linux-musl/9.2.0 \ --mandir=$ORCHESTRA_ROOT/share/gcc-data/mips-unknown-linux-musl/9.2.0/man \ --infodir=$ORCHESTRA_ROOT/share/gcc-data/mips-unknown-linux-musl/9.2.0/info \ --with-sysroot=$ORCHESTRA_ROOT/mips-unknown-linux-musl \ --enable-obsolete \ --enable-secureplt \ --disable-werror \ --disable-nls \ --without-included-gettext \ --enable-checking=release \ --enable-libstdcxx-time \ --enable-poison-system-directories \ --disable-host-shared \ --enable-shared \ --disable-libatomic \ --disable-bootstrap \ --disable-multilib \ --disable-altivec \ --disable-fixed-point \ --disable-libgcj \ --disable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-libcilkrts \ --disable-vtable-verify \ --disable-libvtv \ --disable-libquadmath \ --disable-rpath \ --enable-lto \ --disable-vtable-verify \ --disable-libsanitizer \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --without-zstd \ --with-abi= \ --without-isl \ --disable-libsanitizer \ --disable-libssp \ --disable-shared \ --enable-languages=c,c++ \ CFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include" \ CXXFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include -std=gnu++11" \ LDFLAGS="-L$INSTALL_LINK_ONLY_PATH/lib -L$ORCHESTRA_ROOT/lib -lrt --sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -fuse-ld=gold -Wl,-rpath,$RPATH_PLACEHOLDER/lib -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/clang/16/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/llvm/lib/ -static-libgcc -static-libstdc++ $BUILD_DIR/fake-libc-single-threaded.o -L$INSTALL_LINK_ONLY_PATH/lib64 --sysroot=$INSTALL_LINK_ONLY_PATH" "dependencies": - |- toolchain/mips/binutils - |- toolchain/host/binutils - |- toolchain/mips/musl - |- toolchain/mips/linux-headers "install": "cd \"$BUILD_DIR\"\nmake ${JOBS:+-j$JOBS} \nmake install \n\nNEW_GCC_PATH=\"$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mips-unknown-linux-musl/gcc-bin/9.2.0/\"\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/gcc\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/cc\"; then\n ln -s gcc \"${DESTDIR}${NEW_GCC_PATH}/cc\"\n fi\n\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n COMPILER_WRAPPER=\"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\"\n echo \"25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}\" | sha256sum -c -\n cp \"${COMPILER_WRAPPER}\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/gcc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-gcc\"\n\n cp -a \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/gcc/x86_64-pc-linux-gnu/9.2.0/*.{a,o} \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/\n\nfi\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/g++\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/c++\"; then\n ln -s g++ \"${DESTDIR}${NEW_GCC_PATH}/c++\"\n fi\n\n cp \"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/g++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-g++\"\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/c++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-c++\"\n\nfi\n\nrm -f \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib64/libcc1.*\n\n# Fixinclude locates the wrong pthread.h\nfind \"${DESTDIR}${ORCHESTRA_ROOT}\" -type d -name include-fixed -exec rm -f {}/pthread.h \\;\n" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- stage2 "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.1.4.tar.xz "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} -C "$BUILD_DIR" \ ARCH=mips \ INSTALL_HDR_PATH="${DESTDIR}${ORCHESTRA_ROOT}/mips-unknown-linux-musl/usr" headers_install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- toolchain/mips/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mips-unknown-linux-musl/gcc-bin/9.2.0//mips-unknown-linux-musl-gcc" CFLAGS=" -ggdb3" "$BUILD_DIR/configure" \ --target=mips-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/mips-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/mips-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "headers": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="true" "$BUILD_DIR/configure" \ --target=mips-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/mips-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/mips-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} include/bits/alltypes.h || make ${JOBS:+-j$JOBS} obj/include/bits/alltypes.h make ${JOBS:+-j$JOBS} install-headers "ndebug": !!bool |- true "o0": "build_dependencies": - |- toolchain/mips/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mips-unknown-linux-musl/gcc-bin/9.2.0//mips-unknown-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O0" "$BUILD_DIR/configure" \ --target=mips-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/mips-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/mips-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o1": "build_dependencies": - |- toolchain/mips/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mips-unknown-linux-musl/gcc-bin/9.2.0//mips-unknown-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O1" "$BUILD_DIR/configure" \ --target=mips-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/mips-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/mips-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o2": "build_dependencies": - |- toolchain/mips/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mips-unknown-linux-musl/gcc-bin/9.2.0//mips-unknown-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O2" "$BUILD_DIR/configure" \ --target=mips-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/mips-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/mips-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o3": "build_dependencies": - |- toolchain/mips/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mips-unknown-linux-musl/gcc-bin/9.2.0//mips-unknown-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O3" "$BUILD_DIR/configure" \ --target=mips-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/mips-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/mips-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYRIGHT "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": - |- ${ORCHESTRA_ROOT}/x86_64-pc-linux-gnu/mipsel-unknown-linux-musl/binutils-bin/2.35 "builds": "default": "build_dependencies": - |- glibc - |- toolchain/host/gcc - |- toolchain/host/binutils "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/binutils/binutils-2.35.tar.bz2 cd "$BUILD_DIR" && "$SOURCE_DIR/configure" \ --build=x86_64-pc-linux-gnu \ --host=x86_64-pc-linux-gnu \ --target=mipsel-unknown-linux-musl \ --with-sysroot="$ORCHESTRA_ROOT/mipsel-unknown-linux-musl" \ --prefix=$ORCHESTRA_ROOT \ --datadir=$ORCHESTRA_ROOT/share/binutils-data/mipsel-unknown-linux-musl/2.35 \ --infodir=$ORCHESTRA_ROOT/share/binutils-data/mipsel-unknown-linux-musl/2.35/info \ --mandir=$ORCHESTRA_ROOT/share/binutils-data/mipsel-unknown-linux-musl/2.35/man \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mipsel-unknown-linux-musl/binutils-bin/2.35 \ --libdir=$ORCHESTRA_ROOT/lib64/binutils/mipsel-unknown-linux-musl/2.35 \ --libexecdir=$ORCHESTRA_ROOT/lib64/binutils/mipsel-unknown-linux-musl/2.35 \ --includedir=$ORCHESTRA_ROOT/lib64/binutils/mipsel-unknown-linux-musl/2.35/include \ --without-included-gettext \ --with-zlib \ --enable-poison-system-directories \ --enable-secureplt \ --enable-obsolete \ --enable-gold \ --disable-shared \ --enable-threads \ --enable-install-libiberty \ --disable-werror \ --disable-static \ --disable-gdb \ --disable-libdecnumber \ --disable-readline \ --disable-sim \ --without-debuginfod \ --without-stage1-ldflags \ \ CFLAGS="-w -ggdb3 -O3" \ CXXFLAGS="-w -ggdb3 -O3" "dependencies": - |- gcc-runtime "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": - |- ${ORCHESTRA_ROOT}/x86_64-pc-linux-gnu/mipsel-unknown-linux-musl/gcc-bin/9.2.0 "builds": "stage1": "build_dependencies": - |- glibc - |- gmp - |- mpfr - |- mpc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cfns-fix-mismatch-in-gnu_inline-attributes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cpp-musl-support.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-fixes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-remove-dependency-on-libc_single_threaded.patch" "$SOURCE_DIR" sed -i 's|gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"|gcc_gxx_include_dir="/${gcc_gxx_without_sysroot#/}"|' "$SOURCE_DIR/gcc/configure" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" "$SOURCE_DIR/configure" \ --host=x86_64-pc-linux-gnu \ --build=x86_64-pc-linux-gnu \ --target=mipsel-unknown-linux-musl \ --prefix=$ORCHESTRA_ROOT \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mipsel-unknown-linux-musl/gcc-bin/9.2.0 \ --includedir=$ORCHESTRA_ROOT/lib/gcc/mipsel-unknown-linux-musl/9.2.0/include \ --datadir=$ORCHESTRA_ROOT/share/gcc-data/mipsel-unknown-linux-musl/9.2.0 \ --mandir=$ORCHESTRA_ROOT/share/gcc-data/mipsel-unknown-linux-musl/9.2.0/man \ --infodir=$ORCHESTRA_ROOT/share/gcc-data/mipsel-unknown-linux-musl/9.2.0/info \ --with-sysroot=$ORCHESTRA_ROOT/mipsel-unknown-linux-musl \ --enable-obsolete \ --enable-secureplt \ --disable-werror \ --disable-nls \ --without-included-gettext \ --enable-checking=release \ --enable-libstdcxx-time \ --enable-poison-system-directories \ --disable-host-shared \ --enable-shared \ --disable-libatomic \ --disable-bootstrap \ --disable-multilib \ --disable-altivec \ --disable-fixed-point \ --disable-libgcj \ --disable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-libcilkrts \ --disable-vtable-verify \ --disable-libvtv \ --disable-libquadmath \ --disable-rpath \ --enable-lto \ --disable-vtable-verify \ --disable-libsanitizer \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --without-zstd \ --with-abi= \ --without-isl \ --disable-libsanitizer \ --disable-libssp \ --disable-shared \ --enable-languages=c \ CFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include" \ CXXFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include -std=gnu++11" \ LDFLAGS="-L$INSTALL_LINK_ONLY_PATH/lib -L$ORCHESTRA_ROOT/lib -lrt --sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -fuse-ld=gold -Wl,-rpath,$RPATH_PLACEHOLDER/lib -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/clang/16/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/llvm/lib/ -static-libgcc -static-libstdc++ $BUILD_DIR/fake-libc-single-threaded.o -L$INSTALL_LINK_ONLY_PATH/lib64 --sysroot=$INSTALL_LINK_ONLY_PATH" "dependencies": - |- toolchain/mipsel/binutils - |- toolchain/host/binutils - |- toolchain/mipsel/musl~headers - |- toolchain/mipsel/linux-headers "install": "cd \"$BUILD_DIR\"\nmake ${JOBS:+-j$JOBS} \nmake install \n\nNEW_GCC_PATH=\"$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mipsel-unknown-linux-musl/gcc-bin/9.2.0/\"\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/gcc\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/cc\"; then\n ln -s gcc \"${DESTDIR}${NEW_GCC_PATH}/cc\"\n fi\n\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n COMPILER_WRAPPER=\"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\"\n echo \"25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}\" | sha256sum -c -\n cp \"${COMPILER_WRAPPER}\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/gcc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-gcc\"\n\n cp -a \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/gcc/x86_64-pc-linux-gnu/9.2.0/*.{a,o} \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/\n\nfi\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/g++\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/c++\"; then\n ln -s g++ \"${DESTDIR}${NEW_GCC_PATH}/c++\"\n fi\n\n cp \"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/g++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-g++\"\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/c++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-c++\"\n\nfi\n\nrm -f \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib64/libcc1.*\n\n# Fixinclude locates the wrong pthread.h\nfind \"${DESTDIR}${ORCHESTRA_ROOT}\" -type d -name include-fixed -exec rm -f {}/pthread.h \\;\n" "ndebug": !!bool |- true "stage2": "build_dependencies": - |- toolchain/mipsel/gcc~stage1 - |- glibc - |- gmp - |- mpfr - |- mpc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cfns-fix-mismatch-in-gnu_inline-attributes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cpp-musl-support.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-fixes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-remove-dependency-on-libc_single_threaded.patch" "$SOURCE_DIR" sed -i 's|gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"|gcc_gxx_include_dir="/${gcc_gxx_without_sysroot#/}"|' "$SOURCE_DIR/gcc/configure" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" "$SOURCE_DIR/configure" \ --host=x86_64-pc-linux-gnu \ --build=x86_64-pc-linux-gnu \ --target=mipsel-unknown-linux-musl \ --prefix=$ORCHESTRA_ROOT \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mipsel-unknown-linux-musl/gcc-bin/9.2.0 \ --includedir=$ORCHESTRA_ROOT/lib/gcc/mipsel-unknown-linux-musl/9.2.0/include \ --datadir=$ORCHESTRA_ROOT/share/gcc-data/mipsel-unknown-linux-musl/9.2.0 \ --mandir=$ORCHESTRA_ROOT/share/gcc-data/mipsel-unknown-linux-musl/9.2.0/man \ --infodir=$ORCHESTRA_ROOT/share/gcc-data/mipsel-unknown-linux-musl/9.2.0/info \ --with-sysroot=$ORCHESTRA_ROOT/mipsel-unknown-linux-musl \ --enable-obsolete \ --enable-secureplt \ --disable-werror \ --disable-nls \ --without-included-gettext \ --enable-checking=release \ --enable-libstdcxx-time \ --enable-poison-system-directories \ --disable-host-shared \ --enable-shared \ --disable-libatomic \ --disable-bootstrap \ --disable-multilib \ --disable-altivec \ --disable-fixed-point \ --disable-libgcj \ --disable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-libcilkrts \ --disable-vtable-verify \ --disable-libvtv \ --disable-libquadmath \ --disable-rpath \ --enable-lto \ --disable-vtable-verify \ --disable-libsanitizer \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --without-zstd \ --with-abi= \ --without-isl \ --disable-libsanitizer \ --disable-libssp \ --disable-shared \ --enable-languages=c,c++ \ CFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include" \ CXXFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include -std=gnu++11" \ LDFLAGS="-L$INSTALL_LINK_ONLY_PATH/lib -L$ORCHESTRA_ROOT/lib -lrt --sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -fuse-ld=gold -Wl,-rpath,$RPATH_PLACEHOLDER/lib -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/clang/16/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/llvm/lib/ -static-libgcc -static-libstdc++ $BUILD_DIR/fake-libc-single-threaded.o -L$INSTALL_LINK_ONLY_PATH/lib64 --sysroot=$INSTALL_LINK_ONLY_PATH" "dependencies": - |- toolchain/mipsel/binutils - |- toolchain/host/binutils - |- toolchain/mipsel/musl - |- toolchain/mipsel/linux-headers "install": "cd \"$BUILD_DIR\"\nmake ${JOBS:+-j$JOBS} \nmake install \n\nNEW_GCC_PATH=\"$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mipsel-unknown-linux-musl/gcc-bin/9.2.0/\"\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/gcc\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/cc\"; then\n ln -s gcc \"${DESTDIR}${NEW_GCC_PATH}/cc\"\n fi\n\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n COMPILER_WRAPPER=\"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\"\n echo \"25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}\" | sha256sum -c -\n cp \"${COMPILER_WRAPPER}\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/gcc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-gcc\"\n\n cp -a \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/gcc/x86_64-pc-linux-gnu/9.2.0/*.{a,o} \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/\n\nfi\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/g++\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/c++\"; then\n ln -s g++ \"${DESTDIR}${NEW_GCC_PATH}/c++\"\n fi\n\n cp \"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/g++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-g++\"\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/c++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-c++\"\n\nfi\n\nrm -f \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib64/libcc1.*\n\n# Fixinclude locates the wrong pthread.h\nfind \"${DESTDIR}${ORCHESTRA_ROOT}\" -type d -name include-fixed -exec rm -f {}/pthread.h \\;\n" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- stage2 "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.1.4.tar.xz "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} -C "$BUILD_DIR" \ ARCH=mips \ INSTALL_HDR_PATH="${DESTDIR}${ORCHESTRA_ROOT}/mipsel-unknown-linux-musl/usr" headers_install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- toolchain/mipsel/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mipsel-unknown-linux-musl/gcc-bin/9.2.0//mipsel-unknown-linux-musl-gcc" CFLAGS=" -ggdb3" "$BUILD_DIR/configure" \ --target=mipsel-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/mipsel-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/mipsel-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "headers": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="true" "$BUILD_DIR/configure" \ --target=mipsel-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/mipsel-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/mipsel-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} include/bits/alltypes.h || make ${JOBS:+-j$JOBS} obj/include/bits/alltypes.h make ${JOBS:+-j$JOBS} install-headers "ndebug": !!bool |- true "o0": "build_dependencies": - |- toolchain/mipsel/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mipsel-unknown-linux-musl/gcc-bin/9.2.0//mipsel-unknown-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O0" "$BUILD_DIR/configure" \ --target=mipsel-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/mipsel-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/mipsel-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o1": "build_dependencies": - |- toolchain/mipsel/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mipsel-unknown-linux-musl/gcc-bin/9.2.0//mipsel-unknown-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O1" "$BUILD_DIR/configure" \ --target=mipsel-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/mipsel-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/mipsel-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o2": "build_dependencies": - |- toolchain/mipsel/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mipsel-unknown-linux-musl/gcc-bin/9.2.0//mipsel-unknown-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O2" "$BUILD_DIR/configure" \ --target=mipsel-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/mipsel-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/mipsel-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o3": "build_dependencies": - |- toolchain/mipsel/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/mipsel-unknown-linux-musl/gcc-bin/9.2.0//mipsel-unknown-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O3" "$BUILD_DIR/configure" \ --target=mipsel-unknown-linux-musl \ --prefix="$ORCHESTRA_ROOT/mipsel-unknown-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/mipsel-unknown-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYRIGHT "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": - |- ${ORCHESTRA_ROOT}/x86_64-pc-linux-gnu/s390x-ibm-linux-musl/binutils-bin/2.35 "builds": "default": "build_dependencies": - |- glibc - |- toolchain/host/gcc - |- toolchain/host/binutils "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/binutils/binutils-2.35.tar.bz2 cd "$BUILD_DIR" && "$SOURCE_DIR/configure" \ --build=x86_64-pc-linux-gnu \ --host=x86_64-pc-linux-gnu \ --target=s390x-ibm-linux-musl \ --with-sysroot="$ORCHESTRA_ROOT/s390x-ibm-linux-musl" \ --prefix=$ORCHESTRA_ROOT \ --datadir=$ORCHESTRA_ROOT/share/binutils-data/s390x-ibm-linux-musl/2.35 \ --infodir=$ORCHESTRA_ROOT/share/binutils-data/s390x-ibm-linux-musl/2.35/info \ --mandir=$ORCHESTRA_ROOT/share/binutils-data/s390x-ibm-linux-musl/2.35/man \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/s390x-ibm-linux-musl/binutils-bin/2.35 \ --libdir=$ORCHESTRA_ROOT/lib64/binutils/s390x-ibm-linux-musl/2.35 \ --libexecdir=$ORCHESTRA_ROOT/lib64/binutils/s390x-ibm-linux-musl/2.35 \ --includedir=$ORCHESTRA_ROOT/lib64/binutils/s390x-ibm-linux-musl/2.35/include \ --without-included-gettext \ --with-zlib \ --enable-poison-system-directories \ --enable-secureplt \ --enable-obsolete \ --enable-gold \ --disable-shared \ --enable-threads \ --enable-install-libiberty \ --disable-werror \ --disable-static \ --disable-gdb \ --disable-libdecnumber \ --disable-readline \ --disable-sim \ --without-debuginfod \ --without-stage1-ldflags \ \ CFLAGS="-w -ggdb3 -O3" \ CXXFLAGS="-w -ggdb3 -O3" "dependencies": - |- gcc-runtime "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": - |- ${ORCHESTRA_ROOT}/x86_64-pc-linux-gnu/s390x-ibm-linux-musl/gcc-bin/7.3.0 "builds": "stage1": "build_dependencies": - |- glibc - |- gmp - |- mpfr - |- mpc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-7.3.0-cfns-fix-mismatch-in-gnu_inline-attributes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-7.3.0-cpp-musl-support.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-7.3.0-fixes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-7.3.0-remove-dependency-on-libc_single_threaded.patch" "$SOURCE_DIR" sed -i 's|gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"|gcc_gxx_include_dir="/${gcc_gxx_without_sysroot#/}"|' "$SOURCE_DIR/gcc/configure" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" "$SOURCE_DIR/configure" \ --host=x86_64-pc-linux-gnu \ --build=x86_64-pc-linux-gnu \ --target=s390x-ibm-linux-musl \ --prefix=$ORCHESTRA_ROOT \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/s390x-ibm-linux-musl/gcc-bin/7.3.0 \ --includedir=$ORCHESTRA_ROOT/lib/gcc/s390x-ibm-linux-musl/7.3.0/include \ --datadir=$ORCHESTRA_ROOT/share/gcc-data/s390x-ibm-linux-musl/7.3.0 \ --mandir=$ORCHESTRA_ROOT/share/gcc-data/s390x-ibm-linux-musl/7.3.0/man \ --infodir=$ORCHESTRA_ROOT/share/gcc-data/s390x-ibm-linux-musl/7.3.0/info \ --with-sysroot=$ORCHESTRA_ROOT/s390x-ibm-linux-musl \ --enable-obsolete \ --enable-secureplt \ --disable-werror \ --disable-nls \ --without-included-gettext \ --enable-checking=release \ --enable-libstdcxx-time \ --enable-poison-system-directories \ --disable-host-shared \ --enable-shared \ --disable-libatomic \ --disable-bootstrap \ --disable-multilib \ --disable-altivec \ --disable-fixed-point \ --disable-libgcj \ --disable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-libcilkrts \ --disable-vtable-verify \ --disable-libvtv \ --disable-libquadmath \ --disable-rpath \ --enable-lto \ --disable-vtable-verify \ --disable-libsanitizer \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --without-zstd \ --without-cloog \ --without-isl \ --with-long-double-128 \ --disable-libsanitizer \ --disable-libssp \ --disable-shared \ --enable-languages=c \ CFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include" \ CXXFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include -std=gnu++11" \ LDFLAGS="-L$INSTALL_LINK_ONLY_PATH/lib -L$ORCHESTRA_ROOT/lib -lrt --sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -fuse-ld=gold -Wl,-rpath,$RPATH_PLACEHOLDER/lib -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/clang/16/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/llvm/lib/ -static-libgcc -static-libstdc++ $BUILD_DIR/fake-libc-single-threaded.o -L$INSTALL_LINK_ONLY_PATH/lib64 --sysroot=$INSTALL_LINK_ONLY_PATH" "dependencies": - |- toolchain/s390x/binutils - |- toolchain/host/binutils - |- toolchain/s390x/musl~headers - |- toolchain/s390x/linux-headers "install": "cd \"$BUILD_DIR\"\nmake ${JOBS:+-j$JOBS} \nmake install \n\nNEW_GCC_PATH=\"$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/s390x-ibm-linux-musl/gcc-bin/7.3.0/\"\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/gcc\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/cc\"; then\n ln -s gcc \"${DESTDIR}${NEW_GCC_PATH}/cc\"\n fi\n\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n COMPILER_WRAPPER=\"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\"\n echo \"25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}\" | sha256sum -c -\n cp \"${COMPILER_WRAPPER}\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/gcc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-gcc\"\n\n cp -a \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/gcc/x86_64-pc-linux-gnu/7.3.0/*.{a,o} \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/\n\nfi\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/g++\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/c++\"; then\n ln -s g++ \"${DESTDIR}${NEW_GCC_PATH}/c++\"\n fi\n\n cp \"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/g++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-g++\"\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/c++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-c++\"\n\nfi\n\nrm -f \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib64/libcc1.*\n\n# Fixinclude locates the wrong pthread.h\nfind \"${DESTDIR}${ORCHESTRA_ROOT}\" -type d -name include-fixed -exec rm -f {}/pthread.h \\;\n" "ndebug": !!bool |- true "stage2": "build_dependencies": - |- toolchain/s390x/gcc~stage1 - |- glibc - |- gmp - |- mpfr - |- mpc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-7.3.0-cfns-fix-mismatch-in-gnu_inline-attributes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-7.3.0-cpp-musl-support.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-7.3.0-fixes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-7.3.0-remove-dependency-on-libc_single_threaded.patch" "$SOURCE_DIR" sed -i 's|gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"|gcc_gxx_include_dir="/${gcc_gxx_without_sysroot#/}"|' "$SOURCE_DIR/gcc/configure" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" "$SOURCE_DIR/configure" \ --host=x86_64-pc-linux-gnu \ --build=x86_64-pc-linux-gnu \ --target=s390x-ibm-linux-musl \ --prefix=$ORCHESTRA_ROOT \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/s390x-ibm-linux-musl/gcc-bin/7.3.0 \ --includedir=$ORCHESTRA_ROOT/lib/gcc/s390x-ibm-linux-musl/7.3.0/include \ --datadir=$ORCHESTRA_ROOT/share/gcc-data/s390x-ibm-linux-musl/7.3.0 \ --mandir=$ORCHESTRA_ROOT/share/gcc-data/s390x-ibm-linux-musl/7.3.0/man \ --infodir=$ORCHESTRA_ROOT/share/gcc-data/s390x-ibm-linux-musl/7.3.0/info \ --with-sysroot=$ORCHESTRA_ROOT/s390x-ibm-linux-musl \ --enable-obsolete \ --enable-secureplt \ --disable-werror \ --disable-nls \ --without-included-gettext \ --enable-checking=release \ --enable-libstdcxx-time \ --enable-poison-system-directories \ --disable-host-shared \ --enable-shared \ --disable-libatomic \ --disable-bootstrap \ --disable-multilib \ --disable-altivec \ --disable-fixed-point \ --disable-libgcj \ --disable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-libcilkrts \ --disable-vtable-verify \ --disable-libvtv \ --disable-libquadmath \ --disable-rpath \ --enable-lto \ --disable-vtable-verify \ --disable-libsanitizer \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --without-zstd \ --without-cloog \ --without-isl \ --with-long-double-128 \ --disable-libsanitizer \ --disable-libssp \ --disable-shared \ --enable-languages=c,c++ \ CFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include" \ CXXFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include -std=gnu++11" \ LDFLAGS="-L$INSTALL_LINK_ONLY_PATH/lib -L$ORCHESTRA_ROOT/lib -lrt --sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -fuse-ld=gold -Wl,-rpath,$RPATH_PLACEHOLDER/lib -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/clang/16/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/llvm/lib/ -static-libgcc -static-libstdc++ $BUILD_DIR/fake-libc-single-threaded.o -L$INSTALL_LINK_ONLY_PATH/lib64 --sysroot=$INSTALL_LINK_ONLY_PATH" "dependencies": - |- toolchain/s390x/binutils - |- toolchain/host/binutils - |- toolchain/s390x/musl - |- toolchain/s390x/linux-headers "install": "cd \"$BUILD_DIR\"\nmake ${JOBS:+-j$JOBS} \nmake install \n\nNEW_GCC_PATH=\"$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/s390x-ibm-linux-musl/gcc-bin/7.3.0/\"\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/gcc\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/cc\"; then\n ln -s gcc \"${DESTDIR}${NEW_GCC_PATH}/cc\"\n fi\n\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n COMPILER_WRAPPER=\"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\"\n echo \"25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}\" | sha256sum -c -\n cp \"${COMPILER_WRAPPER}\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/gcc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-gcc\"\n\n cp -a \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/gcc/x86_64-pc-linux-gnu/7.3.0/*.{a,o} \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/\n\nfi\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/g++\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/c++\"; then\n ln -s g++ \"${DESTDIR}${NEW_GCC_PATH}/c++\"\n fi\n\n cp \"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/g++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-g++\"\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/c++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-c++\"\n\nfi\n\nrm -f \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib64/libcc1.*\n\n# Fixinclude locates the wrong pthread.h\nfind \"${DESTDIR}${ORCHESTRA_ROOT}\" -type d -name include-fixed -exec rm -f {}/pthread.h \\;\n" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- stage2 "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.1.4.tar.xz "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} -C "$BUILD_DIR" \ ARCH=s390 \ INSTALL_HDR_PATH="${DESTDIR}${ORCHESTRA_ROOT}/s390x-ibm-linux-musl/usr" headers_install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- toolchain/s390x/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.19.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.19-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/s390x-ibm-linux-musl/gcc-bin/7.3.0//s390x-ibm-linux-musl-gcc" CFLAGS=" -ggdb3" "$BUILD_DIR/configure" \ --target=s390x-ibm-linux-musl \ --prefix="$ORCHESTRA_ROOT/s390x-ibm-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/s390x-ibm-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "headers": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.19.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.19-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="true" "$BUILD_DIR/configure" \ --target=s390x-ibm-linux-musl \ --prefix="$ORCHESTRA_ROOT/s390x-ibm-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/s390x-ibm-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} include/bits/alltypes.h || make ${JOBS:+-j$JOBS} obj/include/bits/alltypes.h make ${JOBS:+-j$JOBS} install-headers "ndebug": !!bool |- true "o0": "build_dependencies": - |- toolchain/s390x/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.19.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.19-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/s390x-ibm-linux-musl/gcc-bin/7.3.0//s390x-ibm-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O0" "$BUILD_DIR/configure" \ --target=s390x-ibm-linux-musl \ --prefix="$ORCHESTRA_ROOT/s390x-ibm-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/s390x-ibm-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o1": "build_dependencies": - |- toolchain/s390x/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.19.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.19-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/s390x-ibm-linux-musl/gcc-bin/7.3.0//s390x-ibm-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O1" "$BUILD_DIR/configure" \ --target=s390x-ibm-linux-musl \ --prefix="$ORCHESTRA_ROOT/s390x-ibm-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/s390x-ibm-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o2": "build_dependencies": - |- toolchain/s390x/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.19.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.19-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/s390x-ibm-linux-musl/gcc-bin/7.3.0//s390x-ibm-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O2" "$BUILD_DIR/configure" \ --target=s390x-ibm-linux-musl \ --prefix="$ORCHESTRA_ROOT/s390x-ibm-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/s390x-ibm-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o3": "build_dependencies": - |- toolchain/s390x/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.19.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.19-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/s390x-ibm-linux-musl/gcc-bin/7.3.0//s390x-ibm-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O3" "$BUILD_DIR/configure" \ --target=s390x-ibm-linux-musl \ --prefix="$ORCHESTRA_ROOT/s390x-ibm-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/s390x-ibm-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYRIGHT "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- python "configure": | INSTALL_PATH="lib/vc/i386-winsdk-vc16" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" mkdir -p lib64 test -e lib || ln -s lib64 lib mkdir -p "$BUILD_DIR/$INSTALL_PATH" cd "$BUILD_DIR/$INSTALL_PATH" SOURCE_FILE="${SOURCE_ARCHIVES}/visual-studio-10-english.zip" if ! test -e "${SOURCE_FILE}"; then mkdir download cd download aria2c \ -q \ --seed-time=0 \ 'https://archive.org/download/vs2010_202102/vs2010_202102_archive.torrent' \ 'https://archive.org/download/vs2010_202102/vs2010.zip' mkdir -p "${SOURCE_ARCHIVES}" mv vs2010_202102/vs2010.zip "${SOURCE_FILE}" cd .. rm -rf download fi mkdir extract cd extract unzip "${SOURCE_FILE}" 7z x VCExpress/Ixpvc.exe msiinfo export vs_setup.msi Directory | sed 's/\t/,/g' > dirs.csv msiinfo export vs_setup.msi File | sed 's/\t/,/g' > file.csv msiinfo export vs_setup.msi Component | sed 's/\t/,/g' > component.csv mkdir extract-vs-setup cd extract-vs-setup 7z x ../vs_setup.cab cd .. rm -rf SourceDir/ "$ORCHESTRA_DOTDIR"/support/vs10-create-directories.py --create-directories dirs.csv file.csv component.csv | while IFS=, read -r TARGET_NAME TARGET_PATH; do if ! test -e "extract-vs-setup/$TARGET_NAME"; then echo "Warning: $TARGET_NAME not found" > /dev/stderr continue fi mv "extract-vs-setup/$TARGET_NAME" "./$TARGET_PATH" done rm -rf extract-vs-setup cd 'SourceDir/Program Files/Microsoft Visual Studio 10.0/Common7/IDE/' find . -maxdepth 1 -type f -exec cp -a {} ../../VC/bin/ \; cd - mv \ 'SourceDir/Program Files/Microsoft Visual Studio 10.0/VC' \ ../VC mv \ 'SourceDir/Program Files/Microsoft SDKs/Windows/v7.0A' \ ../sdk-70a cd .. rm -rf extract cat > cl.exe <<'EOF' #!/bin/bash SCRIPT_DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]:-$0}"; )" &> /dev/null && pwd 2> /dev/null; )"; # Genius shopt -s nocaseglob export INCLUDE="$SCRIPT_DIR/VC/include;$SCRIPT_DIR/sdk-70a/Include" export LIB="$SCRIPT_DIR/VC/lib;$SCRIPT_DIR/sdk-70a/Lib" # Suppress wine debug information export WINEDEBUG="-all" # Disable .Net and mshtml export WINEDLLOVERRIDES="mscoree,mshtml=" # Run one dedicated mspdbsrv.exe per instance of the executable export _MSPDBSRV_ENDPOINT_="$(python3 -c 'import uuid; print(uuid.uuid4())')" wine "$SCRIPT_DIR"/VC/bin//mspdbsrv.ex*e -start -spawn & MSPDBSRV_PID="$!" # Stop mspdbsrv.exe upon exit trap 'wine "$SCRIPT_DIR"/VC/bin//mspdbsrv.ex*e -stop' EXIT; # Wait for mspdbsrv.exe to be up and running while ! [[ "$(readlink -f "/proc/$MSPDBSRV_PID/exe")" == *"wine"* ]]; do sleep 0.2 done sleep 0.2 PROGRAM_NAME="$(basename $0)" wine "$SCRIPT_DIR"/VC/bin//$PROGRAM_NAME "$@" EOF cp cl.exe dumpbin.exe cp cl.exe ml.exe chmod +x cl.exe chmod +x dumpbin.exe chmod +x ml.exe cd "$BUILD_DIR" mkdir -p bin cat > bin/i386-winsdk-vc16-cl <<'EOF' #!/bin/bash SCRIPT_DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]:-$0}"; )" &> /dev/null && pwd 2> /dev/null; )"; FILE_NAME="$(basename $0)" TRIPLE="${FILE_NAME%-*}" PROGRAM_NAME="${FILE_NAME##*-}" exec "$SCRIPT_DIR/../lib/vc/$TRIPLE/$PROGRAM_NAME.exe" "$@" EOF cp bin/i386-winsdk-vc16-cl bin/i386-winsdk-vc16-dumpbin cp bin/i386-winsdk-vc16-cl bin/i386-winsdk-vc16-ml chmod +x bin/i386-winsdk-vc16-cl chmod +x bin/i386-winsdk-vc16-dumpbin chmod +x bin/i386-winsdk-vc16-ml "dependencies": [] "install": "cd \"$BUILD_DIR\"\n\ncp -far --reflink=auto \"$BUILD_DIR/\"* \"${DESTDIR}${ORCHESTRA_ROOT}/\"\n\nif test \"$RUN_TESTS\" -eq 1; then\n cat > test.c <<'EOF'\n#include <stdio.h>\n\nint main() {\n puts(\"Hello world!\");\n return 0;\n}\nEOF\n\n WINE_TMP_DIRECTORY_32=\"$(mktemp --tmpdir tmp.wine-prefix.XXXXXXXXXX -d)\"\n trap 'rm -rf \"$WINE_TMP_DIRECTORY_32\"' EXIT\n\n \n WINEPREFIX=\"$WINE_TMP_DIRECTORY_32\" ./bin/i386-winsdk-vc16-cl test.c -nologo /DEBUG:FASTLINK /Zi\n \n export WINEDEBUG=-all\n\n if [[ \"i386-winsdk-vc16\" =~ ^x86_64- ]]; then\n WINE_TMP_DIRECTORY_64=\"$(mktemp --tmpdir tmp.wine-prefix.XXXXXXXXXX -d)\"\n trap 'rm -rf \"$WINE_TMP_DIRECTORY_64\"' EXIT\n WINEPREFIX=\"$WINE_TMP_DIRECTORY_64\" wine64 test.exe\n else\n WINEPREFIX=\"$WINE_TMP_DIRECTORY_32\" wine test.exe\n fi\nfi\n" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": !!null |- null "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- python "configure": | INSTALL_PATH="lib/vc/i386-winsdk-vc19" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" mkdir -p lib64 test -e lib || ln -s lib64 lib mkdir -p "$BUILD_DIR/$INSTALL_PATH" cd "$BUILD_DIR/$INSTALL_PATH" fetch.sh \ --no-copy \ 'https://aka.ms/vs/17/release/channel' \ --save-as visual-studio-17-release-channel.json URL="$(cat "${SOURCE_ARCHIVES}/visual-studio-17-release-channel.json" | \ jq -r '.channelItems | .[] | select(.id | contains("Microsoft.VisualStudio.Manifests.VisualStudio")).payloads[0].url')" fetch.sh \ --no-copy \ "$URL" \ --save-as visual-studio-17-packages.json # Fetch MSVC and the SDK cat "${SOURCE_ARCHIVES}/visual-studio-17-packages.json" | \ "$ORCHESTRA_DOTDIR"/support/parse-vs17-json.py \ Microsoft.VisualStudio.Component.VC.14.37.17.7.x86.x64 \ Microsoft.VisualStudio.Component.Windows11SDK.22621 \ > to-fetch.csv mkdir -p downloads while IFS="," read -r DIR NAME SHA256 URL; do DESTINATION="downloads/$DIR/$NAME" if ! test -e "$DESTINATION"; then mkdir -p "$(dirname $DESTINATION)" echo "Downloading $DESTINATION" while ! curl -s -L "$URL" > "$DESTINATION"; do echo "Retrying" < /dev/stderr done fi if ! echo "$SHA256 $DESTINATION" | sha256sum --check --status; then echo "Wrong hash for $(readlink -f $DESTINATION)" > /dev/stderr exit 1 fi done < <(tail -n +2 to-fetch.csv) rm -f to-fetch.csv # Extract all the *.vsix files rm -rf extracted-vsix mkdir extracted-vsix cd extracted-vsix find ../downloads/ -name "*.vsix" -type f | while read VSIX_FILE; do python -c 'import zipfile; zipfile.ZipFile("'"$VSIX_FILE"'").extractall(".")' done cd .. rm -rf VC mv extracted-vsix/Contents/VC/Tools/MSVC/14.37.32822 VC rm -rf extracted-vsix # Extract all the *.cab of the SDK rm -rf extracted-cabs mkdir extracted-cabs cd extracted-cabs for CAB in ../downloads/Win11SDK_10.0.22621/Installers/*.cab; do yes S | 7z x "$CAB" || true done # Extract meta-information from MSI installsers rm -f all-dirs.csv all-file.csv all-component.csv for MSI in ../downloads/Win11SDK_10.0.22621/Installers/*.msi; do msiinfo export "$MSI" Directory | sed 's/\t/,/g' > dirs.csv msiinfo export "$MSI" File | sed 's/\t/,/g' > file.csv msiinfo export "$MSI" Component | sed 's/\t/,/g' > component.csv if test -e all-dirs.csv; then cat dirs.csv | tail -n +2 >> all-dirs.csv cat file.csv | tail -n +2 >> all-file.csv cat component.csv | tail -n +2 >> all-component.csv rm dirs.csv file.csv component.csv else mv dirs.csv all-dirs.csv mv file.csv all-file.csv mv component.csv all-component.csv fi done # Rename files "$ORCHESTRA_DOTDIR"/support/vs10-create-directories.py \ --create-directories \ all-dirs.csv \ all-file.csv \ all-component.csv | \ while IFS=, read -r TARGET_NAME TARGET_PATH; do if ! test -e "$TARGET_NAME"; then echo "Warning: $TARGET_NAME not found" > /dev/stderr continue fi mv "$TARGET_NAME" "./$TARGET_PATH" done cd .. mv 'extracted-cabs/SourceDir/Windows Kits/10' windows-sdk rm -rf extracted-cabs/ downloads/ cat > cl.exe <<'EOF' #!/bin/bash SCRIPT_DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]:-$0}"; )" &> /dev/null && pwd 2> /dev/null; )"; # Genius shopt -s nocaseglob export INCLUDE="$SCRIPT_DIR/VC/include;$SCRIPT_DIR/windows-sdk/Include/10.0.22621.0/ucrt" export LIB="$SCRIPT_DIR/VC/lib/x86;$SCRIPT_DIR/windows-sdk/Lib/10.0.22621.0/um/x86;$SCRIPT_DIR/windows-sdk/Lib/10.0.22621.0/ucrt/x86" # Suppress wine debug information export WINEDEBUG="-all" # Disable .Net and mshtml export WINEDLLOVERRIDES="mscoree,mshtml=" # Run one dedicated mspdbsrv.exe per instance of the executable export _MSPDBSRV_ENDPOINT_="$(python3 -c 'import uuid; print(uuid.uuid4())')" wine "$SCRIPT_DIR"/VC/bin/Hostx86/x86//mspdbsrv.ex*e -start -spawn & MSPDBSRV_PID="$!" # Stop mspdbsrv.exe upon exit trap 'wine "$SCRIPT_DIR"/VC/bin/Hostx86/x86//mspdbsrv.ex*e -stop' EXIT; # Wait for mspdbsrv.exe to be up and running while ! [[ "$(readlink -f "/proc/$MSPDBSRV_PID/exe")" == *"wine"* ]]; do sleep 0.2 done sleep 0.2 PROGRAM_NAME="$(basename $0)" wine "$SCRIPT_DIR"/VC/bin/Hostx86/x86//$PROGRAM_NAME "$@" EOF cp cl.exe dumpbin.exe cp cl.exe ml.exe chmod +x cl.exe chmod +x dumpbin.exe chmod +x ml.exe cd "$BUILD_DIR" mkdir -p bin cat > bin/i386-winsdk-vc19-cl <<'EOF' #!/bin/bash SCRIPT_DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]:-$0}"; )" &> /dev/null && pwd 2> /dev/null; )"; FILE_NAME="$(basename $0)" TRIPLE="${FILE_NAME%-*}" PROGRAM_NAME="${FILE_NAME##*-}" exec "$SCRIPT_DIR/../lib/vc/$TRIPLE/$PROGRAM_NAME.exe" "$@" EOF cp bin/i386-winsdk-vc19-cl bin/i386-winsdk-vc19-dumpbin cp bin/i386-winsdk-vc19-cl bin/i386-winsdk-vc19-ml chmod +x bin/i386-winsdk-vc19-cl chmod +x bin/i386-winsdk-vc19-dumpbin chmod +x bin/i386-winsdk-vc19-ml "dependencies": [] "install": "cd \"$BUILD_DIR\"\n\ncp -far --reflink=auto \"$BUILD_DIR/\"* \"${DESTDIR}${ORCHESTRA_ROOT}/\"\n\nif test \"$RUN_TESTS\" -eq 1; then\n cat > test.c <<'EOF'\n#include <stdio.h>\n\nint main() {\n puts(\"Hello world!\");\n return 0;\n}\nEOF\n\n WINE_TMP_DIRECTORY_32=\"$(mktemp --tmpdir tmp.wine-prefix.XXXXXXXXXX -d)\"\n trap 'rm -rf \"$WINE_TMP_DIRECTORY_32\"' EXIT\n\n \n WINEPREFIX=\"$WINE_TMP_DIRECTORY_32\" ./bin/i386-winsdk-vc19-cl test.c -nologo /DEBUG:FASTLINK /Zi\n \n export WINEDEBUG=-all\n\n if [[ \"i386-winsdk-vc19\" =~ ^x86_64- ]]; then\n WINE_TMP_DIRECTORY_64=\"$(mktemp --tmpdir tmp.wine-prefix.XXXXXXXXXX -d)\"\n trap 'rm -rf \"$WINE_TMP_DIRECTORY_64\"' EXIT\n WINEPREFIX=\"$WINE_TMP_DIRECTORY_64\" wine64 test.exe\n else\n WINEPREFIX=\"$WINE_TMP_DIRECTORY_32\" wine test.exe\n fi\nfi\n" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": !!null |- null "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- python "configure": | INSTALL_PATH="lib/vc/x86_64-winsdk-vc19" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" mkdir -p lib64 test -e lib || ln -s lib64 lib mkdir -p "$BUILD_DIR/$INSTALL_PATH" cd "$BUILD_DIR/$INSTALL_PATH" fetch.sh \ --no-copy \ 'https://aka.ms/vs/17/release/channel' \ --save-as visual-studio-17-release-channel.json URL="$(cat "${SOURCE_ARCHIVES}/visual-studio-17-release-channel.json" | \ jq -r '.channelItems | .[] | select(.id | contains("Microsoft.VisualStudio.Manifests.VisualStudio")).payloads[0].url')" fetch.sh \ --no-copy \ "$URL" \ --save-as visual-studio-17-packages.json # Fetch MSVC and the SDK cat "${SOURCE_ARCHIVES}/visual-studio-17-packages.json" | \ "$ORCHESTRA_DOTDIR"/support/parse-vs17-json.py \ Microsoft.VisualStudio.Component.VC.14.37.17.7.x86.x64 \ Microsoft.VisualStudio.Component.Windows11SDK.22621 \ > to-fetch.csv mkdir -p downloads while IFS="," read -r DIR NAME SHA256 URL; do DESTINATION="downloads/$DIR/$NAME" if ! test -e "$DESTINATION"; then mkdir -p "$(dirname $DESTINATION)" echo "Downloading $DESTINATION" while ! curl -s -L "$URL" > "$DESTINATION"; do echo "Retrying" < /dev/stderr done fi if ! echo "$SHA256 $DESTINATION" | sha256sum --check --status; then echo "Wrong hash for $(readlink -f $DESTINATION)" > /dev/stderr exit 1 fi done < <(tail -n +2 to-fetch.csv) rm -f to-fetch.csv # Extract all the *.vsix files rm -rf extracted-vsix mkdir extracted-vsix cd extracted-vsix find ../downloads/ -name "*.vsix" -type f | while read VSIX_FILE; do python -c 'import zipfile; zipfile.ZipFile("'"$VSIX_FILE"'").extractall(".")' done cd .. rm -rf VC mv extracted-vsix/Contents/VC/Tools/MSVC/14.37.32822 VC rm -rf extracted-vsix # Extract all the *.cab of the SDK rm -rf extracted-cabs mkdir extracted-cabs cd extracted-cabs for CAB in ../downloads/Win11SDK_10.0.22621/Installers/*.cab; do yes S | 7z x "$CAB" || true done # Extract meta-information from MSI installsers rm -f all-dirs.csv all-file.csv all-component.csv for MSI in ../downloads/Win11SDK_10.0.22621/Installers/*.msi; do msiinfo export "$MSI" Directory | sed 's/\t/,/g' > dirs.csv msiinfo export "$MSI" File | sed 's/\t/,/g' > file.csv msiinfo export "$MSI" Component | sed 's/\t/,/g' > component.csv if test -e all-dirs.csv; then cat dirs.csv | tail -n +2 >> all-dirs.csv cat file.csv | tail -n +2 >> all-file.csv cat component.csv | tail -n +2 >> all-component.csv rm dirs.csv file.csv component.csv else mv dirs.csv all-dirs.csv mv file.csv all-file.csv mv component.csv all-component.csv fi done # Rename files "$ORCHESTRA_DOTDIR"/support/vs10-create-directories.py \ --create-directories \ all-dirs.csv \ all-file.csv \ all-component.csv | \ while IFS=, read -r TARGET_NAME TARGET_PATH; do if ! test -e "$TARGET_NAME"; then echo "Warning: $TARGET_NAME not found" > /dev/stderr continue fi mv "$TARGET_NAME" "./$TARGET_PATH" done cd .. mv 'extracted-cabs/SourceDir/Windows Kits/10' windows-sdk rm -rf extracted-cabs/ downloads/ cat > cl.exe <<'EOF' #!/bin/bash SCRIPT_DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]:-$0}"; )" &> /dev/null && pwd 2> /dev/null; )"; # Genius shopt -s nocaseglob export INCLUDE="$SCRIPT_DIR/VC/include;$SCRIPT_DIR/windows-sdk/Include/10.0.22621.0/ucrt" export LIB="$SCRIPT_DIR/VC/lib/x64;$SCRIPT_DIR/windows-sdk/Lib/10.0.22621.0/um/x64;$SCRIPT_DIR/windows-sdk/Lib/10.0.22621.0/ucrt/x64" # Suppress wine debug information export WINEDEBUG="-all" # Disable .Net and mshtml export WINEDLLOVERRIDES="mscoree,mshtml=" # Run one dedicated mspdbsrv.exe per instance of the executable export _MSPDBSRV_ENDPOINT_="$(python3 -c 'import uuid; print(uuid.uuid4())')" wine "$SCRIPT_DIR"/VC/bin/Hostx86/x64//mspdbsrv.ex*e -start -spawn & MSPDBSRV_PID="$!" # Stop mspdbsrv.exe upon exit trap 'wine "$SCRIPT_DIR"/VC/bin/Hostx86/x64//mspdbsrv.ex*e -stop' EXIT; # Wait for mspdbsrv.exe to be up and running while ! [[ "$(readlink -f "/proc/$MSPDBSRV_PID/exe")" == *"wine"* ]]; do sleep 0.2 done sleep 0.2 PROGRAM_NAME="$(basename $0)" if [[ "${PROGRAM_NAME}" =~ ^ml.exe$ ]]; then PROGRAM_NAME="ml64.exe" fi wine "$SCRIPT_DIR"/VC/bin/Hostx86/x64//$PROGRAM_NAME "$@" EOF cp cl.exe dumpbin.exe cp cl.exe ml.exe chmod +x cl.exe chmod +x dumpbin.exe chmod +x ml.exe cd "$BUILD_DIR" mkdir -p bin cat > bin/x86_64-winsdk-vc19-cl <<'EOF' #!/bin/bash SCRIPT_DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]:-$0}"; )" &> /dev/null && pwd 2> /dev/null; )"; FILE_NAME="$(basename $0)" TRIPLE="${FILE_NAME%-*}" PROGRAM_NAME="${FILE_NAME##*-}" exec "$SCRIPT_DIR/../lib/vc/$TRIPLE/$PROGRAM_NAME.exe" "$@" EOF cp bin/x86_64-winsdk-vc19-cl bin/x86_64-winsdk-vc19-dumpbin cp bin/x86_64-winsdk-vc19-cl bin/x86_64-winsdk-vc19-ml chmod +x bin/x86_64-winsdk-vc19-cl chmod +x bin/x86_64-winsdk-vc19-dumpbin chmod +x bin/x86_64-winsdk-vc19-ml "dependencies": [] "install": "cd \"$BUILD_DIR\"\n\ncp -far --reflink=auto \"$BUILD_DIR/\"* \"${DESTDIR}${ORCHESTRA_ROOT}/\"\n\nif test \"$RUN_TESTS\" -eq 1; then\n cat > test.c <<'EOF'\n#include <stdio.h>\n\nint main() {\n puts(\"Hello world!\");\n return 0;\n}\nEOF\n\n WINE_TMP_DIRECTORY_32=\"$(mktemp --tmpdir tmp.wine-prefix.XXXXXXXXXX -d)\"\n trap 'rm -rf \"$WINE_TMP_DIRECTORY_32\"' EXIT\n\n \n WINEPREFIX=\"$WINE_TMP_DIRECTORY_32\" ./bin/x86_64-winsdk-vc19-cl test.c -nologo /DEBUG:FASTLINK /Zi\n \n export WINEDEBUG=-all\n\n if [[ \"x86_64-winsdk-vc19\" =~ ^x86_64- ]]; then\n WINE_TMP_DIRECTORY_64=\"$(mktemp --tmpdir tmp.wine-prefix.XXXXXXXXXX -d)\"\n trap 'rm -rf \"$WINE_TMP_DIRECTORY_64\"' EXIT\n WINEPREFIX=\"$WINE_TMP_DIRECTORY_64\" wine64 test.exe\n else\n WINEPREFIX=\"$WINE_TMP_DIRECTORY_32\" wine test.exe\n fi\nfi\n" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": !!null |- null "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": - |- ${ORCHESTRA_ROOT}/x86_64-pc-linux-gnu/x86_64-gentoo-linux-musl/binutils-bin/2.35 "builds": "default": "build_dependencies": - |- glibc - |- toolchain/host/gcc - |- toolchain/host/binutils "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/binutils/binutils-2.35.tar.bz2 cd "$BUILD_DIR" && "$SOURCE_DIR/configure" \ --build=x86_64-pc-linux-gnu \ --host=x86_64-pc-linux-gnu \ --target=x86_64-gentoo-linux-musl \ --with-sysroot="$ORCHESTRA_ROOT/x86_64-gentoo-linux-musl" \ --prefix=$ORCHESTRA_ROOT \ --datadir=$ORCHESTRA_ROOT/share/binutils-data/x86_64-gentoo-linux-musl/2.35 \ --infodir=$ORCHESTRA_ROOT/share/binutils-data/x86_64-gentoo-linux-musl/2.35/info \ --mandir=$ORCHESTRA_ROOT/share/binutils-data/x86_64-gentoo-linux-musl/2.35/man \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/x86_64-gentoo-linux-musl/binutils-bin/2.35 \ --libdir=$ORCHESTRA_ROOT/lib64/binutils/x86_64-gentoo-linux-musl/2.35 \ --libexecdir=$ORCHESTRA_ROOT/lib64/binutils/x86_64-gentoo-linux-musl/2.35 \ --includedir=$ORCHESTRA_ROOT/lib64/binutils/x86_64-gentoo-linux-musl/2.35/include \ --without-included-gettext \ --with-zlib \ --enable-poison-system-directories \ --enable-secureplt \ --enable-obsolete \ --enable-gold \ --disable-shared \ --enable-threads \ --enable-install-libiberty \ --disable-werror \ --disable-static \ --disable-gdb \ --disable-libdecnumber \ --disable-readline \ --disable-sim \ --without-debuginfod \ --without-stage1-ldflags \ \ CFLAGS="-w -ggdb3 -O3" \ CXXFLAGS="-w -ggdb3 -O3" "dependencies": - |- gcc-runtime "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": - |- ${ORCHESTRA_ROOT}/x86_64-pc-linux-gnu/x86_64-gentoo-linux-musl/gcc-bin/9.2.0 "builds": "stage1": "build_dependencies": - |- glibc - |- gmp - |- mpfr - |- mpc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cfns-fix-mismatch-in-gnu_inline-attributes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cpp-musl-support.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-fixes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-remove-dependency-on-libc_single_threaded.patch" "$SOURCE_DIR" sed -i 's|gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"|gcc_gxx_include_dir="/${gcc_gxx_without_sysroot#/}"|' "$SOURCE_DIR/gcc/configure" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" "$SOURCE_DIR/configure" \ --host=x86_64-pc-linux-gnu \ --build=x86_64-pc-linux-gnu \ --target=x86_64-gentoo-linux-musl \ --prefix=$ORCHESTRA_ROOT \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/x86_64-gentoo-linux-musl/gcc-bin/9.2.0 \ --includedir=$ORCHESTRA_ROOT/lib/gcc/x86_64-gentoo-linux-musl/9.2.0/include \ --datadir=$ORCHESTRA_ROOT/share/gcc-data/x86_64-gentoo-linux-musl/9.2.0 \ --mandir=$ORCHESTRA_ROOT/share/gcc-data/x86_64-gentoo-linux-musl/9.2.0/man \ --infodir=$ORCHESTRA_ROOT/share/gcc-data/x86_64-gentoo-linux-musl/9.2.0/info \ --with-sysroot=$ORCHESTRA_ROOT/x86_64-gentoo-linux-musl \ --enable-obsolete \ --enable-secureplt \ --disable-werror \ --disable-nls \ --without-included-gettext \ --enable-checking=release \ --enable-libstdcxx-time \ --enable-poison-system-directories \ --disable-host-shared \ --enable-shared \ --disable-libatomic \ --disable-bootstrap \ --disable-multilib \ --disable-altivec \ --disable-fixed-point \ --disable-libgcj \ --disable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-libcilkrts \ --disable-vtable-verify \ --disable-libvtv \ --disable-libquadmath \ --disable-rpath \ --enable-lto \ --disable-vtable-verify \ --disable-libsanitizer \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --without-zstd \ --without-cloog \ --enable-targets=all \ --with-multilib-list=m64 \ --without-isl \ --disable-libsanitizer \ --disable-libssp \ --disable-shared \ --enable-languages=c \ CFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include" \ CXXFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include -std=gnu++11" \ LDFLAGS="-L$INSTALL_LINK_ONLY_PATH/lib -L$ORCHESTRA_ROOT/lib -lrt --sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -fuse-ld=gold -Wl,-rpath,$RPATH_PLACEHOLDER/lib -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/clang/16/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/llvm/lib/ -static-libgcc -static-libstdc++ $BUILD_DIR/fake-libc-single-threaded.o -L$INSTALL_LINK_ONLY_PATH/lib64 --sysroot=$INSTALL_LINK_ONLY_PATH" "dependencies": - |- toolchain/x86-64/binutils - |- toolchain/host/binutils - |- toolchain/x86-64/musl~headers - |- toolchain/x86-64/linux-headers "install": "cd \"$BUILD_DIR\"\nmake ${JOBS:+-j$JOBS} \nmake install \n\nNEW_GCC_PATH=\"$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/x86_64-gentoo-linux-musl/gcc-bin/9.2.0/\"\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/gcc\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/cc\"; then\n ln -s gcc \"${DESTDIR}${NEW_GCC_PATH}/cc\"\n fi\n\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n COMPILER_WRAPPER=\"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\"\n echo \"25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}\" | sha256sum -c -\n cp \"${COMPILER_WRAPPER}\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/gcc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-gcc\"\n\n cp -a \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/gcc/x86_64-pc-linux-gnu/9.2.0/*.{a,o} \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/\n\nfi\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/g++\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/c++\"; then\n ln -s g++ \"${DESTDIR}${NEW_GCC_PATH}/c++\"\n fi\n\n cp \"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/g++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-g++\"\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/c++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-c++\"\n\nfi\n\nrm -f \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib64/libcc1.*\n\n# Fixinclude locates the wrong pthread.h\nfind \"${DESTDIR}${ORCHESTRA_ROOT}\" -type d -name include-fixed -exec rm -f {}/pthread.h \\;\n" "ndebug": !!bool |- true "stage2": "build_dependencies": - |- toolchain/x86-64/gcc~stage1 - |- glibc - |- gmp - |- mpfr - |- mpc "configure": | export SOURCE_DIR="$BUILD_DIR/source" mkdir -p "$SOURCE_DIR" extract.sh --into "$SOURCE_DIR" https://ftp.gnu.org/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.gz patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cfns-fix-mismatch-in-gnu_inline-attributes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-cpp-musl-support.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-fixes.patch" "$SOURCE_DIR" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/gcc-9.2.0-remove-dependency-on-libc_single_threaded.patch" "$SOURCE_DIR" sed -i 's|gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"|gcc_gxx_include_dir="/${gcc_gxx_without_sysroot#/}"|' "$SOURCE_DIR/gcc/configure" mkdir -p "$BUILD_DIR" cd "$BUILD_DIR" echo 'char __libc_single_threaded __attribute__ ((weak));' > fake-libc-single-threaded.c gcc -c -fPIC -x c fake-libc-single-threaded.c -o "$BUILD_DIR/fake-libc-single-threaded.o" "$SOURCE_DIR/configure" \ --host=x86_64-pc-linux-gnu \ --build=x86_64-pc-linux-gnu \ --target=x86_64-gentoo-linux-musl \ --prefix=$ORCHESTRA_ROOT \ --bindir=$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/x86_64-gentoo-linux-musl/gcc-bin/9.2.0 \ --includedir=$ORCHESTRA_ROOT/lib/gcc/x86_64-gentoo-linux-musl/9.2.0/include \ --datadir=$ORCHESTRA_ROOT/share/gcc-data/x86_64-gentoo-linux-musl/9.2.0 \ --mandir=$ORCHESTRA_ROOT/share/gcc-data/x86_64-gentoo-linux-musl/9.2.0/man \ --infodir=$ORCHESTRA_ROOT/share/gcc-data/x86_64-gentoo-linux-musl/9.2.0/info \ --with-sysroot=$ORCHESTRA_ROOT/x86_64-gentoo-linux-musl \ --enable-obsolete \ --enable-secureplt \ --disable-werror \ --disable-nls \ --without-included-gettext \ --enable-checking=release \ --enable-libstdcxx-time \ --enable-poison-system-directories \ --disable-host-shared \ --enable-shared \ --disable-libatomic \ --disable-bootstrap \ --disable-multilib \ --disable-altivec \ --disable-fixed-point \ --disable-libgcj \ --disable-libgomp \ --disable-libmudflap \ --disable-libssp \ --disable-libcilkrts \ --disable-vtable-verify \ --disable-libvtv \ --disable-libquadmath \ --disable-rpath \ --enable-lto \ --disable-vtable-verify \ --disable-libsanitizer \ --with-gmp="$ORCHESTRA_ROOT" \ --with-mpfr="$ORCHESTRA_ROOT" \ --with-mpc="$ORCHESTRA_ROOT" \ --without-zstd \ --without-cloog \ --enable-targets=all \ --with-multilib-list=m64 \ --without-isl \ --disable-libsanitizer \ --disable-libssp \ --disable-shared \ --enable-languages=c,c++ \ CFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include" \ CXXFLAGS="-w -ggdb3 -O3 --sysroot $INSTALL_LINK_ONLY_PATH -idirafter $ORCHESTRA_ROOT/include -std=gnu++11" \ LDFLAGS="-L$INSTALL_LINK_ONLY_PATH/lib -L$ORCHESTRA_ROOT/lib -lrt --sysroot=$INSTALL_LINK_ONLY_PATH -Wl,-z,origin -Wl,--enable-new-dtags -fuse-ld=gold -Wl,-rpath,$RPATH_PLACEHOLDER/lib -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/clang/16/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/clang-release/lib/x86_64-unknown-linux-gnu/ -Wl,-rpath,$RPATH_PLACEHOLDER/lib64/llvm/llvm/lib/ -static-libgcc -static-libstdc++ $BUILD_DIR/fake-libc-single-threaded.o -L$INSTALL_LINK_ONLY_PATH/lib64 --sysroot=$INSTALL_LINK_ONLY_PATH" "dependencies": - |- toolchain/x86-64/binutils - |- toolchain/host/binutils - |- toolchain/x86-64/musl - |- toolchain/x86-64/linux-headers "install": "cd \"$BUILD_DIR\"\nmake ${JOBS:+-j$JOBS} \nmake install \n\nNEW_GCC_PATH=\"$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/x86_64-gentoo-linux-musl/gcc-bin/9.2.0/\"\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/gcc\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/cc\"; then\n ln -s gcc \"${DESTDIR}${NEW_GCC_PATH}/cc\"\n fi\n\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n COMPILER_WRAPPER=\"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\"\n echo \"25da6081a2325995b8e668072c23387428d8561cfc6e932876fd449b57aaa862 ${COMPILER_WRAPPER}\" | sha256sum -c -\n cp \"${COMPILER_WRAPPER}\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/gcc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-cc\"\n ln -s gcc \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-gcc\"\n\n cp -a \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/gcc/x86_64-pc-linux-gnu/9.2.0/*.{a,o} \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib/\n\nfi\n\nif test -e \"${DESTDIR}${NEW_GCC_PATH}/g++\"; then\n\n if ! test -e \"${DESTDIR}${NEW_GCC_PATH}/c++\"; then\n ln -s g++ \"${DESTDIR}${NEW_GCC_PATH}/c++\"\n fi\n\n cp \"${ORCHESTRA_DOTDIR}/support/hard-flags-compiler-wrapper.py\" \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/g++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-g++\"\n mkdir -p \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/c++\"\n ln -s g++ \"${DESTDIR}${ORCHESTRA_ROOT}/link-only/bin/x86_64-pc-linux-gnu-c++\"\n\nfi\n\nrm -f \"${DESTDIR}${ORCHESTRA_ROOT}\"/lib64/libcc1.*\n\n# Fixinclude locates the wrong pthread.h\nfind \"${DESTDIR}${ORCHESTRA_ROOT}\" -type d -name include-fixed -exec rm -f {}/pthread.h \\;\n" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- stage2 "license": |- source/COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.1.4.tar.xz "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} -C "$BUILD_DIR" \ ARCH=x86_64 \ INSTALL_HDR_PATH="${DESTDIR}${ORCHESTRA_ROOT}/x86_64-gentoo-linux-musl/usr" headers_install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- toolchain/x86-64/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/x86_64-gentoo-linux-musl/gcc-bin/9.2.0//x86_64-gentoo-linux-musl-gcc" CFLAGS=" -ggdb3" "$BUILD_DIR/configure" \ --target=x86_64-gentoo-linux-musl \ --prefix="$ORCHESTRA_ROOT/x86_64-gentoo-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/x86_64-gentoo-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "headers": "build_dependencies": [] "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="true" "$BUILD_DIR/configure" \ --target=x86_64-gentoo-linux-musl \ --prefix="$ORCHESTRA_ROOT/x86_64-gentoo-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/x86_64-gentoo-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} include/bits/alltypes.h || make ${JOBS:+-j$JOBS} obj/include/bits/alltypes.h make ${JOBS:+-j$JOBS} install-headers "ndebug": !!bool |- true "o0": "build_dependencies": - |- toolchain/x86-64/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/x86_64-gentoo-linux-musl/gcc-bin/9.2.0//x86_64-gentoo-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O0" "$BUILD_DIR/configure" \ --target=x86_64-gentoo-linux-musl \ --prefix="$ORCHESTRA_ROOT/x86_64-gentoo-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/x86_64-gentoo-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o1": "build_dependencies": - |- toolchain/x86-64/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/x86_64-gentoo-linux-musl/gcc-bin/9.2.0//x86_64-gentoo-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O1" "$BUILD_DIR/configure" \ --target=x86_64-gentoo-linux-musl \ --prefix="$ORCHESTRA_ROOT/x86_64-gentoo-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/x86_64-gentoo-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o2": "build_dependencies": - |- toolchain/x86-64/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/x86_64-gentoo-linux-musl/gcc-bin/9.2.0//x86_64-gentoo-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O2" "$BUILD_DIR/configure" \ --target=x86_64-gentoo-linux-musl \ --prefix="$ORCHESTRA_ROOT/x86_64-gentoo-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/x86_64-gentoo-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "o3": "build_dependencies": - |- toolchain/x86-64/gcc~stage1 "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" "http://www.musl-libc.org/releases/musl-1.1.12.tar.gz" patch-if-exists "${ORCHESTRA_DOTDIR}/patches/musl-1.1.12-printf-floating-point-rounding.patch" "$BUILD_DIR" cd "$BUILD_DIR" && CC="$ORCHESTRA_ROOT/x86_64-pc-linux-gnu/x86_64-gentoo-linux-musl/gcc-bin/9.2.0//x86_64-gentoo-linux-musl-gcc" CFLAGS=" -ggdb3 -Wl,--gc-sections -ffunction-sections -O3" "$BUILD_DIR/configure" \ --target=x86_64-gentoo-linux-musl \ --prefix="$ORCHESTRA_ROOT/x86_64-gentoo-linux-musl/usr" \ --syslibdir="$ORCHESTRA_ROOT/x86_64-gentoo-linux-musl/lib" \ --disable-gcc-wrapper "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make install "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYRIGHT "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- host-c-toolchain "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://tukaani.org/xz/xz-5.4.0.tar.bz2 cd "$BUILD_DIR" ./configure \ --prefix="$ORCHESTRA_ROOT" "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- COPYING "repository": !!null |- null "skip_post_install": !!bool |- false - "add_to_path": [] "builds": "default": "build_dependencies": - |- gcc-host-toolchain - |- glibc "configure": | mkdir -p "$BUILD_DIR" extract.sh --into "$BUILD_DIR" https://zlib.net/fossils/zlib-1.2.12.tar.gz cd "$BUILD_DIR" ./configure \ --shared \ --uname=linux \ --prefix="$ORCHESTRA_ROOT" "dependencies": [] "install": | cd "$BUILD_DIR" make ${JOBS:+-j$JOBS} make ${JOBS:+-j$JOBS} install DESTDIR="$DESTDIR" "ndebug": !!bool |- true "commit": !!null |- null "default_build": |- default "license": |- README "repository": !!null |- null "skip_post_install": !!bool |- false