|
|
|
@ -48,12 +48,17 @@ jobs: |
|
|
|
runs-on: ${{ matrix.os }} |
|
|
|
strategy: |
|
|
|
matrix: |
|
|
|
os: [ubuntu-20.04, ubuntu-22.04] |
|
|
|
mode: [newlib, linux, musl] |
|
|
|
target: [rv32gc-ilp32d, rv64gc-lp64d] |
|
|
|
os: [ubuntu-20.04, ubuntu-22.04] |
|
|
|
mode: [newlib, linux, musl] |
|
|
|
target: [rv32gc-ilp32d, rv64gc-lp64d] |
|
|
|
compiler: [gcc, llvm] |
|
|
|
exclude: |
|
|
|
- mode: musl |
|
|
|
target: rv32gc-ilp32d |
|
|
|
- mode: newlib |
|
|
|
compiler: llvm |
|
|
|
- mode: musl |
|
|
|
compiler: llvm |
|
|
|
steps: |
|
|
|
- uses: actions/checkout@v2 |
|
|
|
|
|
|
|
@ -64,18 +69,17 @@ jobs: |
|
|
|
|
|
|
|
- name: install apt dependencies |
|
|
|
run: sudo ./.github/setup-apt.sh |
|
|
|
|
|
|
|
|
|
|
|
- name: build toolchain |
|
|
|
run: | |
|
|
|
TARGET_TUPLE=($(echo ${{ matrix.target }} | tr "-" "\n")) |
|
|
|
BUILD_TOOLCHAIN="./configure --prefix=/opt/riscv --with-arch=${TARGET_TUPLE[0]} --with-abi=${TARGET_TUPLE[1]}" |
|
|
|
if [ "${{ matrix.mode }}" == "linux" ]; then # build toolchain with llvm |
|
|
|
if [ "${{ matrix.compiler }}" == "llvm" ]; then # build toolchain with llvm |
|
|
|
$BUILD_TOOLCHAIN --enable-llvm --enable-linux |
|
|
|
sudo make -j $(nproc) all |
|
|
|
else |
|
|
|
$BUILD_TOOLCHAIN |
|
|
|
sudo make -j $(nproc) ${{ matrix.mode }} |
|
|
|
fi |
|
|
|
sudo make -j $(nproc) ${{ matrix.mode }} |
|
|
|
|
|
|
|
- name: build qemu |
|
|
|
if: "${{ matrix.mode }}" == "linux" |
|
|
|
|