From 00d8df22a21423f8251dff08e62369990a3394f9 Mon Sep 17 00:00:00 2001 From: Gary Guo Date: Wed, 24 Jan 2024 15:02:29 +0000 Subject: [PATCH] Use manylinux2014 for building toolchain This allows the artifact to run on CentOS 7. --- .github/workflows/toolchain_build.yml | 30 ++++++++++++++++++++++++--- build-gcc-with-args.sh | 2 ++ 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/.github/workflows/toolchain_build.yml b/.github/workflows/toolchain_build.yml index 34a9f97..d1b9bc6 100644 --- a/.github/workflows/toolchain_build.yml +++ b/.github/workflows/toolchain_build.yml @@ -42,16 +42,40 @@ jobs: # output_dir: /opt/riscv-linux-toolchain name: ${{ matrix.display_name }} - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest + # This is a CentOS 7 based image + container: quay.io/pypa/manylinux2014_x86_64 timeout-minutes: 360 steps: - - uses: actions/checkout@v4 + # This uses checkout v3 instead of v4 because GitHub actions's nodejs 20 currently does not work on CentOS 7. + - uses: actions/checkout@v3 - name: Setup environment run: | echo ::group::Install dependencies - ./prepare-ubuntu-20.04.sh + yum install -y \ + sudo \ + git \ + shadow-utils \ + bison \ + flex \ + texinfo \ + help2man \ + gawk \ + gettext \ + curl \ + xz \ + ncurses-devel \ + ncurses-static \ + pixman-devel \ + rh-python36 \ + zlib-devel \ + zlib-static \ + libffi-devel + echo ::endgroup:: + + echo ::group::Install crosstool-ng ./install-crosstool-ng.sh echo ::endgroup:: diff --git a/build-gcc-with-args.sh b/build-gcc-with-args.sh index 64f2801..f2921c6 100755 --- a/build-gcc-with-args.sh +++ b/build-gcc-with-args.sh @@ -64,6 +64,8 @@ cd "${build_top_dir}/build/gcc" echo "# ADDED BY ${0}"; echo "CT_PREFIX_DIR=\"${toolchain_dest}\"" echo "CT_LOCAL_PATCH_DIR=\"${build_top_dir}/patches/${toolchain_name}\"" + echo "CT_ALLOW_BUILD_AS_ROOT=y" + echo "CT_ALLOW_BUILD_AS_ROOT_SURE=y" echo "# END ADDED BY ${0}" } > .config ct-ng upgradeconfig