@@ -80,23 +80,22 @@ jobs:
8080 run : sudo apt-get update -o Acquire::Retries=3
8181
8282 # ============================================================
83- # Prebuilt RISC-V toolchains from riscv-collab
84- # https://github.com/riscv-collab/riscv-gnu-toolchain/releases
85- # Extracts to: riscv/bin/riscv{32,64}-unknown-elf-*
83+ # xPack RISC-V GCC — single toolchain with full multilib
84+ # supporting both rv32 and rv64 targets (including rv32imac/ilp32
85+ # and rv64imac/lp64 which riscv-collab nightly builds lack).
86+ # https://github.com/xpack-dev-tools/riscv-none-elf-gcc-xpack
8687 # ============================================================
87- - name : Download and install RISC-V toolchain (riscv32)
88- if : ${{ inputs.arch == 'riscv' }}
89- run : |
90- wget -q https://github.com/riscv-collab/riscv-gnu-toolchain/releases/latest/download/riscv32-elf-ubuntu-24.04-gcc.tar.xz
91- tar -xf riscv32-elf-ubuntu-24.04-gcc.tar.xz
92- echo "$GITHUB_WORKSPACE/riscv/bin" >> $GITHUB_PATH
93- $GITHUB_WORKSPACE/riscv/bin/riscv32-unknown-elf-gcc --version
94-
95- - name : Install RISC-V toolchain (riscv64)
96- if : ${{ inputs.arch == 'riscv64' }}
88+ - name : Download and install xPack RISC-V toolchain
9789 run : |
98- sudo apt-get install -y gcc-riscv64-unknown-elf binutils-riscv64-unknown-elf
99- riscv64-unknown-elf-gcc --version
90+ XPACK_VER="15.2.0-1"
91+ XPACK_FILE="xpack-riscv-none-elf-gcc-${XPACK_VER}-linux-x64.tar.gz"
92+ wget -q "https://github.com/xpack-dev-tools/riscv-none-elf-gcc-xpack/releases/download/v${XPACK_VER}/${XPACK_FILE}"
93+ echo "aaaa8060c914851a3e5ee1ba82cc3d6f80972f90638a05c6e823a37557a33758 ${XPACK_FILE}" | sha256sum -c -
94+ tar -xf "${XPACK_FILE}"
95+ echo "$GITHUB_WORKSPACE/xpack-riscv-none-elf-gcc-${XPACK_VER}/bin" >> $GITHUB_PATH
96+ export PATH="$GITHUB_WORKSPACE/xpack-riscv-none-elf-gcc-${XPACK_VER}/bin:$PATH"
97+ riscv-none-elf-gcc --version
98+ riscv-none-elf-gcc -print-multi-lib | head -5
10099
101100 # ============================================================
102101 # Build wolfboot
@@ -116,9 +115,9 @@ jobs:
116115 - name : Build wolfboot (riscv32)
117116 if : ${{ inputs.arch == 'riscv' }}
118117 run : |
119- make CROSS_COMPILE=riscv32-unknown -elf- FREEDOM_E_SDK=$GITHUB_WORKSPACE/freedom-e-sdk ${{inputs.make-args}}
118+ make CROSS_COMPILE=riscv-none -elf- FREEDOM_E_SDK=$GITHUB_WORKSPACE/freedom-e-sdk ${{inputs.make-args}}
120119
121120 - name : Build wolfboot (riscv64)
122121 if : ${{ inputs.arch == 'riscv64' }}
123122 run : |
124- make CROSS_COMPILE=riscv64-unknown -elf- ${{inputs.make-args}}
123+ make CROSS_COMPILE=riscv-none -elf- ${{inputs.make-args}}
0 commit comments