Skip to content

detect risc-v zawrs, zicbom, and some crypto exts #389

detect risc-v zawrs, zicbom, and some crypto exts

detect risc-v zawrs, zicbom, and some crypto exts #389

Workflow file for this run

name: ci
on:
push:
branches: [master]
pull_request:
branches: [master]
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
ubuntu:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: build-test
run: |
gcc main.c -o ruapu
./ruapu
- name: build-test-clang
run: |
clang main.c -o ruapu-clang
./ruapu-clang
- uses: actions/setup-python@v6
with:
python-version: '3.10'
- name: build-test-python
run: |
python3 -m pip install pip -U
python3 -m pip install setuptools -U
cd python
pip3 install .
python3 -c 'import ruapu; print(ruapu.supports("neon")); print(ruapu.supports(isa="avx"))'
python3 -c 'import ruapu; print(ruapu.rua())'
- name: build-test-rust
run: |
rustup update stable
rustup default stable
cd rust
cargo build --verbose
cargo test --verbose
- uses: erlef/setup-beam@v1
with:
otp-version: 26.2
rebar3-version: "3.22.1"
- name: build-test-erlang
run: |
cd erlang
rebar3 compile
rebar3 eunit
- name: build-test-golang
run: |
cd go
go build -o ruapu-go
./ruapu-go
- uses: dart-lang/setup-dart@v1
- name: build-test-dart
run: |
cd dart
bash ./build.sh
- uses: actions/upload-artifact@v7
with:
name: ubuntu-ruapu
path: ruapu
macos:
runs-on: macos-13
steps:
- uses: actions/checkout@v6
- name: build-test
run: |
clang main.c -o ruapu
./ruapu
- uses: actions/setup-python@v6
with:
python-version: '3.10'
- name: build-test-python
run: |
python3 -m pip install pip -U
python3 -m pip install setuptools -U
cd python
pip3 install .
python3 -c 'import ruapu; print(ruapu.supports("neon")); print(ruapu.supports(isa="avx"))'
python3 -c 'import ruapu; print(ruapu.rua())'
- name: build-test-rust
run: |
rustup update stable
rustup default stable
cd rust
cargo build --verbose
cargo test --verbose
- uses: actions/setup-go@v6
with:
go-version: 1.21.x
- name: build-test-golang
run: |
cd go
go build -o ruapu-go
./ruapu-go
- uses: dart-lang/setup-dart@v1
- name: build-test-dart
run: |
cd dart
bash ./build.sh
- uses: actions/upload-artifact@v7
with:
name: macos-ruapu
path: ruapu
macos-arm64:
runs-on: macos-latest
steps:
- uses: actions/checkout@v6
- name: build-test
run: |
clang main.c -o ruapu
./ruapu
- uses: actions/setup-python@v6
with:
python-version: '3.10'
- name: build-test-python
run: |
python3 -m pip install pip -U
python3 -m pip install setuptools -U
cd python
pip3 install .
python3 -c 'import ruapu; print(ruapu.supports("neon")); print(ruapu.supports(isa="avx"))'
python3 -c 'import ruapu; print(ruapu.rua())'
- name: build-test-rust
run: |
rustup update stable
rustup default stable
cd rust
cargo build --verbose
cargo test --verbose
- uses: actions/setup-go@v6
with:
go-version: 1.21.x
- name: build-test-golang
run: |
cd go
go build -o ruapu-go
./ruapu-go
- uses: dart-lang/setup-dart@v1
- name: build-test-dart
run: |
cd dart
bash ./build.sh
- uses: actions/upload-artifact@v7
with:
name: macos-arm64-ruapu
path: ruapu
windows:
runs-on: windows-2022
steps:
- uses: actions/checkout@v6
- uses: ilammy/msvc-dev-cmd@v1
- name: build-test
run: |
cl.exe /Fe: ruapu.exe main.c
.\ruapu.exe
- name: build-test-mingw
shell: bash
run: |
gcc main.c -o ruapu-mingw.exe
./ruapu-mingw.exe
- uses: actions/setup-python@v6
with:
python-version: '3.10'
- name: build-test-python
run: |
python3 -m pip install pip -U
python3 -m pip install setuptools -U
cd python
pip3 install .
python3 -c 'import ruapu; print(ruapu.supports("neon")); print(ruapu.supports(isa="avx"))'
python3 -c 'import ruapu; print(ruapu.rua())'
- name: build-test-rust
run: |
rustup update stable
rustup default stable
cd rust
cargo build --verbose
cargo test --verbose
- uses: erlef/setup-beam@v1
with:
otp-version: 26.2
rebar3-version: "3.22.1"
- name: build-test-erlang
run: |
cd erlang
rebar3 compile
rebar3 eunit
- name: build-test-golang
run: |
cd go
go build -o ruapu-go.exe
./ruapu-go.exe
- uses: dart-lang/setup-dart@v1
- name: build-test-dart
run: |
cd dart
.\build.ps1
- uses: actions/upload-artifact@v7
with:
name: windows-ruapu
path: ruapu.exe
qemu:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
arch: [ arm, arm64, mips64le, ppc64le, riscv64, s390x ]
include:
- docker_image: debian:unstable-slim
arch: arm
- docker_image: debian:unstable-slim
arch: arm64
- docker_image: debian:unstable-slim
arch: ppc64le
- docker_image: debian:unstable-slim
arch: riscv64
- docker_image: debian:unstable-slim
arch: s390x
- docker_image: debian:oldstable-slim
arch: mips64le
steps:
- uses: actions/checkout@v6
- name: setup-qemu
uses: docker/setup-qemu-action@v4
with:
platforms: linux/${{ matrix.arch }}
- name: build-test
run: |
docker run -u root --rm -v $(pwd):/${{ github.workspace }} -w ${{ github.workspace }} --platform linux/${{ matrix.arch }} ${{ matrix.docker_image }} \
/bin/bash -c "apt update && apt install -y gcc libc6-dev && gcc main.c -o ruapu && ./ruapu"
ubuntu-arm:
runs-on: ubuntu-24.04-arm
steps:
- uses: actions/checkout@v6
- name: build-test
run: |
gcc main.c -o ruapu
./ruapu
- name: build-test-clang
run: |
clang main.c -o ruapu-clang
./ruapu-clang
- uses: actions/setup-python@v6
with:
python-version: '3.10'
- name: build-test-python
run: |
python3 -m pip install pip -U
python3 -m pip install setuptools -U
cd python
pip3 install .
python3 -c 'import ruapu; print(ruapu.supports("neon")); print(ruapu.supports(isa="avx"))'
python3 -c 'import ruapu; print(ruapu.rua())'
- name: build-test-rust
run: |
rustup update stable
rustup default stable
cd rust
cargo build --verbose
cargo test --verbose
- uses: erlef/setup-beam@v1
with:
otp-version: 26.2
rebar3-version: "3.22.1"
- name: build-test-erlang
run: |
cd erlang
rebar3 compile
rebar3 eunit
- name: build-test-golang
run: |
cd go
go build -o ruapu-go
./ruapu-go
- uses: dart-lang/setup-dart@v1
- name: build-test-dart
run: |
cd dart
bash ./build.sh
- uses: actions/upload-artifact@v7
with:
name: ubuntu-arm-ruapu
path: ruapu
windows-arm:
runs-on: windows-11-arm
steps:
- uses: actions/checkout@v6
- uses: ilammy/msvc-dev-cmd@v1
with:
arch: arm64
- name: build-test
run: |
cl.exe /Fe: ruapu.exe main.c
.\ruapu.exe
- name: build-test-mingw
shell: bash
run: |
gcc main.c -o ruapu-mingw.exe
./ruapu-mingw.exe
- uses: actions/setup-python@v6
with:
python-version: '3.13'
- name: build-test-python
run: |
python3 -m pip install pip -U
python3 -m pip install setuptools -U
cd python
pip3 install .
python3 -c 'import ruapu; print(ruapu.supports("neon")); print(ruapu.supports(isa="avx"))'
python3 -c 'import ruapu; print(ruapu.rua())'
- uses: actions/upload-artifact@v7
with:
name: windows-arm-ruapu
path: ruapu.exe
riscv:
runs-on: ubuntu-24.04-riscv
steps:
- uses: actions/checkout@v6
- name: info
run: |
uname -a
cat /proc/cpuinfo
- name: build-test
run: |
gcc main.c -o ruapu
./ruapu
- name: build-test-clang
run: |
clang main.c -o ruapu-clang
./ruapu-clang