v / .github / workflows / riscv64_linux_ci.yml
56 lines · 54 sloc · 1.55 KB · 93162641ddda0809e8e8c2da69af8b13982567ee
Raw
1name: riscv64 CI
2
3on:
4 workflow_dispatch:
5 push:
6 branches:
7 - master
8 paths-ignore:
9 - '**.md'
10 - '**.yml'
11 - '!**/riscv64_linux_ci.yml'
12 - 'cmd/tools/**'
13 - '!cmd/tools/builders/**.v'
14 pull_request:
15 paths-ignore:
16 - '**.md'
17 - '**.yml'
18 - '!**/riscv64_linux_ci.yml'
19 - 'cmd/tools/**'
20 - '!cmd/tools/builders/**.v'
21
22jobs:
23 riscv64_linux:
24 # The host should always be Linux
25 runs-on: ubuntu-24.04
26 timeout-minutes: 30
27 name: Build on ubuntu-24.04 riscv64
28 steps:
29 - uses: actions/checkout@v6
30 - uses: uraimo/run-on-arch-action@v3
31 name: Run commands
32 id: runcmd
33 with:
34 arch: riscv64
35 distro: ubuntu24.04
36 base_image: --platform=linux/riscv64 riscv64/ubuntu:24.04
37 # The token tag here is not required, but speeds up builds,
38 # by allowing caching of the installed dependencies, which is ~2.5min:
39 githubToken: ${{ github.token }}
40 shell: /bin/bash
41 install: |
42 apt-get update -q -y
43 apt-get install -q -y make gcc git file coreutils binutils
44 run: |
45 uname -a
46 make --version
47 gcc --version
48 ls -la
49 export LDFLAGS="-latomic"
50 export VFLAGS="-gc none -no-retry-compilation -cc cc"
51 make
52 file ./v
53 ls -la ./v
54 ./v test vlib/builtin vlib/os vlib/encoding/binary
55 ./v test vlib/v/slow_tests/assembly
56 VTEST_ONLY=closure ./v test vlib/v/tests
57