2024-06-11 19:13:30 +08:00
|
|
|
---
|
|
|
|
name: linux-riscv64-gcc
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
paths:
|
|
|
|
- .gitea/workflows/linux-riscv64-gcc.yml
|
|
|
|
- "cmake/**"
|
|
|
|
- toolchains/riscv64-linux-gnu.toolchain.cmake
|
|
|
|
- third_party/**
|
|
|
|
- tile/**
|
|
|
|
- "!tile/fiber/detail/asm/*"
|
|
|
|
- "tile/fiber/detail/asm/ucontext_riscv64.*"
|
|
|
|
- CMakeLists.txt
|
|
|
|
- cmake/**
|
|
|
|
pull_request:
|
|
|
|
paths:
|
|
|
|
- .gitea/workflows/linux-riscv64-gcc.yml
|
|
|
|
- "cmake/**"
|
|
|
|
- toolchains/riscv64-linux-gnu.toolchain.cmake
|
|
|
|
- third_party/**
|
|
|
|
- tile/**
|
|
|
|
- "!tile/fiber/detail/asm/*"
|
|
|
|
- "tile/fiber/detail/asm/ucontext_riscv64.*"
|
|
|
|
- CMakeLists.txt
|
|
|
|
- cmake/**
|
|
|
|
concurrency:
|
|
|
|
group: linux-riscv64-gcc-${{ github.ref }}
|
|
|
|
cancel-in-progress: true
|
|
|
|
permissions: read-all
|
|
|
|
jobs:
|
|
|
|
linux-gcc-riscv64:
|
|
|
|
runs-on: ubuntu-20.04
|
|
|
|
strategy:
|
|
|
|
matrix:
|
|
|
|
build_type: [Debug, Release]
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
submodules: recursive
|
2024-08-22 09:15:50 +08:00
|
|
|
- name: install-tools
|
|
|
|
run: |
|
|
|
|
sudo apt-get update -y
|
|
|
|
sudo apt-get install -y g++-riscv64-linux-gnu qemu-user-binfmt
|
2024-06-11 19:13:30 +08:00
|
|
|
- name: configure
|
|
|
|
run: |
|
|
|
|
mkdir build && cd build
|
|
|
|
cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/riscv64-linux-gnu.toolchain.cmake -DCMAKE_BUILD_TYPE=${{matrix.build_type}} -DTILE_BUILD_TESTS=ON -DTILE_BUILD_BENCHMARKS=ON ..
|
|
|
|
- name: build
|
2024-06-17 14:29:49 +08:00
|
|
|
run: cmake --build build --target all -j $(nproc)
|
2024-06-11 19:13:30 +08:00
|
|
|
- name: test
|
|
|
|
run: |-
|
|
|
|
cd build
|
2024-08-22 09:15:50 +08:00
|
|
|
sudo ln -sf /usr/riscv64-linux-gnu/lib/ld-linux-riscv64-lp64d.so.1 /lib/ld-linux-riscv64-lp64d.so.1
|
|
|
|
export LD_LIBRARY_PATH=/usr/riscv64-linux-gnu/lib
|
2024-06-17 14:52:25 +08:00
|
|
|
ctest --output-on-failure -j $(nproc)
|