2019-12-10 03:20:04 +01:00
|
|
|
name: tests
|
|
|
|
|
2020-04-02 16:23:46 +02:00
|
|
|
on:
|
|
|
|
push:
|
|
|
|
branches:
|
|
|
|
- "*"
|
|
|
|
# not on tags
|
|
|
|
pull_request:
|
2019-12-10 03:20:04 +01:00
|
|
|
|
2020-03-31 22:02:57 +02:00
|
|
|
env:
|
2020-03-31 18:36:41 +02:00
|
|
|
BLAKE3_CI: "1"
|
2020-03-31 22:02:57 +02:00
|
|
|
RUSTFLAGS: "-D warnings"
|
2020-05-04 03:13:58 +02:00
|
|
|
RUST_BACKTRACE: "1"
|
2020-03-31 22:02:57 +02:00
|
|
|
|
2019-12-10 03:20:04 +01:00
|
|
|
jobs:
|
2023-06-08 21:48:18 +02:00
|
|
|
library_tests:
|
2020-02-07 19:46:42 +01:00
|
|
|
name: ${{ matrix.target.name }} ${{ matrix.channel }}
|
|
|
|
runs-on: ${{ matrix.target.os }}
|
2019-12-10 03:20:04 +01:00
|
|
|
strategy:
|
2020-02-07 00:43:50 +01:00
|
|
|
fail-fast: false
|
2019-12-10 03:20:04 +01:00
|
|
|
matrix:
|
2020-02-07 19:46:42 +01:00
|
|
|
target: [
|
|
|
|
{ "os": "ubuntu-latest", "toolchain": "x86_64-unknown-linux-gnu", "name": "Linux GNU" },
|
|
|
|
{ "os": "macOS-latest", "toolchain": "x86_64-apple-darwin", "name": "macOS" },
|
|
|
|
{ "os": "windows-latest", "toolchain": "x86_64-pc-windows-msvc", "name": "Windows MSVC" },
|
|
|
|
{ "os": "windows-latest", "toolchain": "x86_64-pc-windows-gnu", "name": "Windows GNU" }
|
|
|
|
]
|
2022-11-20 20:11:20 +01:00
|
|
|
channel: [
|
|
|
|
"stable",
|
|
|
|
"beta",
|
|
|
|
"nightly",
|
|
|
|
# The current MSRV. This crate doesn't have an official MSRV policy,
|
|
|
|
# but in practice we'll probably do what libc does:
|
|
|
|
# https://github.com/rust-lang/libs-team/issues/72.
|
|
|
|
# This test target is here so that we notice if we accidentally bump
|
|
|
|
# the MSRV, but it's not a promise that we won't bump it.
|
2023-07-06 22:26:08 +02:00
|
|
|
"1.66.1",
|
2022-11-20 20:11:20 +01:00
|
|
|
]
|
2019-12-10 03:20:04 +01:00
|
|
|
|
|
|
|
steps:
|
2022-11-20 20:11:20 +01:00
|
|
|
- uses: actions/checkout@v3
|
2019-12-10 03:20:04 +01:00
|
|
|
- uses: actions-rs/toolchain@v1
|
|
|
|
with:
|
2020-02-07 19:46:42 +01:00
|
|
|
toolchain: ${{ format('{0}-{1}', matrix.channel, matrix.target.toolchain) }}
|
|
|
|
profile: minimal
|
2019-12-10 03:20:04 +01:00
|
|
|
override: true
|
2020-04-12 05:01:46 +02:00
|
|
|
# Print the compiler version, for debugging.
|
|
|
|
- name: print compiler version
|
|
|
|
run: cargo run --quiet
|
|
|
|
working-directory: ./tools/compiler_version
|
2020-03-29 00:27:05 +01:00
|
|
|
# Print out instruction set support, for debugging.
|
2020-04-12 05:01:46 +02:00
|
|
|
- name: print instruction set support
|
|
|
|
run: cargo run --quiet
|
|
|
|
working-directory: ./tools/instruction_set_support
|
2021-03-21 20:01:42 +01:00
|
|
|
# Default tests plus Rayon and RustCrypto trait implementations.
|
2023-07-09 18:34:37 +02:00
|
|
|
- run: cargo test --features=rayon,traits-preview,zeroize
|
2022-01-18 19:58:52 +01:00
|
|
|
# Same but with only one thread in the Rayon pool. This can find deadlocks.
|
|
|
|
- name: "again with RAYON_NUM_THREADS=1"
|
2023-07-09 18:34:37 +02:00
|
|
|
run: cargo test --features=rayon,traits-preview,zeroize
|
2022-01-18 19:58:52 +01:00
|
|
|
env:
|
|
|
|
RAYON_NUM_THREADS: 1
|
2020-02-11 20:13:30 +01:00
|
|
|
# no_std tests.
|
2019-12-10 03:20:04 +01:00
|
|
|
- run: cargo test --no-default-features
|
2020-03-30 01:05:04 +02:00
|
|
|
|
|
|
|
# A matrix of different test settings:
|
|
|
|
# - debug vs release
|
|
|
|
# - assembly vs Rust+C intrinsics vs pure Rust intrinsics
|
|
|
|
# - different levels of SIMD support
|
|
|
|
#
|
|
|
|
# Full SIMD support.
|
|
|
|
- run: cargo test --features=
|
2020-03-28 22:27:31 +01:00
|
|
|
- run: cargo test --features=prefer_intrinsics
|
|
|
|
- run: cargo test --features=pure
|
2020-03-30 01:05:04 +02:00
|
|
|
- run: cargo test --features= --release
|
|
|
|
- run: cargo test --features=prefer_intrinsics --release
|
|
|
|
- run: cargo test --features=pure --release
|
|
|
|
# No AVX-512.
|
|
|
|
- run: cargo test --features=no_avx512
|
|
|
|
- run: cargo test --features=no_avx512,prefer_intrinsics
|
|
|
|
- run: cargo test --features=no_avx512,pure
|
|
|
|
- run: cargo test --features=no_avx512 --release
|
|
|
|
- run: cargo test --features=no_avx512,prefer_intrinsics --release
|
|
|
|
- run: cargo test --features=no_avx512,pure --release
|
|
|
|
# No AVX2.
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2,prefer_intrinsics
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2,pure
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2 --release
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2,prefer_intrinsics --release
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2,pure --release
|
|
|
|
# No SSE4.1
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2,no_sse41
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2,no_sse41,prefer_intrinsics
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2,no_sse41,pure
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2,no_sse41 --release
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2,no_sse41,prefer_intrinsics --release
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2,no_sse41,pure --release
|
2020-09-02 18:21:46 +02:00
|
|
|
# No SSE2
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2,no_sse41,no_sse2
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2,no_sse41,no_sse2,prefer_intrinsics
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2,no_sse41,no_sse2,pure
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2,no_sse41,no_sse2 --release
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2,no_sse41,no_sse2,prefer_intrinsics --release
|
|
|
|
- run: cargo test --features=no_avx512,no_avx2,no_sse41,no_sse2,pure --release
|
2020-03-30 01:05:04 +02:00
|
|
|
|
2020-02-11 20:13:30 +01:00
|
|
|
# Test benchmarks. RUSTC_BOOTSTRAP=1 lets this run on non-nightly toolchains.
|
2021-03-21 21:21:20 +01:00
|
|
|
- run: cargo test --benches --features=rayon
|
2020-02-11 20:13:30 +01:00
|
|
|
env:
|
|
|
|
RUSTC_BOOTSTRAP: 1
|
2019-12-12 05:19:34 +01:00
|
|
|
# Test vectors.
|
|
|
|
- name: test vectors
|
|
|
|
run: cargo test
|
|
|
|
working-directory: ./test_vectors
|
2020-03-28 22:27:31 +01:00
|
|
|
- name: test vectors intrinsics
|
|
|
|
run: cargo test --features=prefer_intrinsics
|
2020-02-11 20:13:30 +01:00
|
|
|
working-directory: ./test_vectors
|
2020-03-28 22:27:31 +01:00
|
|
|
- name: test vectors pure
|
|
|
|
run: cargo test --features=pure
|
2020-02-11 20:13:30 +01:00
|
|
|
working-directory: ./test_vectors
|
2020-01-14 00:11:07 +01:00
|
|
|
# Test C code.
|
2020-02-12 00:37:23 +01:00
|
|
|
- name: cargo test C bindings assembly
|
2020-01-14 00:11:07 +01:00
|
|
|
run: cargo test
|
|
|
|
working-directory: ./c/blake3_c_rust_bindings
|
2020-02-12 00:37:23 +01:00
|
|
|
- name: cargo test C bindings intrinsics
|
|
|
|
run: cargo test --features=prefer_intrinsics
|
|
|
|
working-directory: ./c/blake3_c_rust_bindings
|
2020-01-20 22:36:30 +01:00
|
|
|
# Reference impl doc test.
|
|
|
|
- name: reference impl doc test
|
|
|
|
run: cargo test
|
|
|
|
working-directory: ./reference_impl
|
2019-12-10 03:20:04 +01:00
|
|
|
|
2023-06-08 21:48:18 +02:00
|
|
|
b3sum_tests:
|
|
|
|
name: b3sum ${{ matrix.target.name }} ${{ matrix.channel }}
|
|
|
|
runs-on: ${{ matrix.target.os }}
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
target: [
|
|
|
|
{ "os": "ubuntu-latest", "toolchain": "x86_64-unknown-linux-gnu", "name": "Linux GNU" },
|
|
|
|
{ "os": "macOS-latest", "toolchain": "x86_64-apple-darwin", "name": "macOS" },
|
|
|
|
{ "os": "windows-latest", "toolchain": "x86_64-pc-windows-msvc", "name": "Windows MSVC" },
|
|
|
|
{ "os": "windows-latest", "toolchain": "x86_64-pc-windows-gnu", "name": "Windows GNU" }
|
|
|
|
]
|
|
|
|
channel: [
|
|
|
|
"stable",
|
|
|
|
"beta",
|
|
|
|
"nightly",
|
2023-07-06 22:26:08 +02:00
|
|
|
# The b3sum MSRV is sometimes higher than the blake3 crate's, because
|
2023-06-08 21:48:18 +02:00
|
|
|
# b3sum depends on Clap. We check in the b3sum Cargo.lock, so Clap
|
|
|
|
# update shouldn't randomly break us here.
|
2023-07-06 22:26:08 +02:00
|
|
|
"1.66.1",
|
2023-06-08 21:48:18 +02:00
|
|
|
]
|
|
|
|
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v3
|
|
|
|
- uses: actions-rs/toolchain@v1
|
|
|
|
with:
|
|
|
|
toolchain: ${{ format('{0}-{1}', matrix.channel, matrix.target.toolchain) }}
|
|
|
|
profile: minimal
|
|
|
|
override: true
|
|
|
|
# Test b3sum.
|
|
|
|
- name: test b3sum
|
|
|
|
run: cargo test
|
|
|
|
working-directory: ./b3sum
|
|
|
|
- name: test b3sum --no-default-features
|
|
|
|
run: cargo test --no-default-features
|
|
|
|
working-directory: ./b3sum
|
|
|
|
|
2019-12-10 03:25:24 +01:00
|
|
|
cross_tests:
|
2019-12-12 05:19:34 +01:00
|
|
|
name: cross ${{ matrix.arch }}
|
2019-12-10 03:20:04 +01:00
|
|
|
runs-on: ubuntu-latest
|
2019-12-12 05:19:34 +01:00
|
|
|
strategy:
|
2020-03-24 21:45:33 +01:00
|
|
|
fail-fast: false
|
2019-12-12 05:19:34 +01:00
|
|
|
matrix:
|
2020-02-11 19:58:26 +01:00
|
|
|
arch:
|
2020-08-31 23:46:39 +02:00
|
|
|
- i586-unknown-linux-musl
|
2020-02-11 19:58:26 +01:00
|
|
|
- i686-unknown-linux-musl
|
|
|
|
- armv7-unknown-linux-gnueabihf
|
|
|
|
- aarch64-unknown-linux-gnu
|
|
|
|
- mips-unknown-linux-gnu
|
2019-12-10 03:20:04 +01:00
|
|
|
|
|
|
|
steps:
|
2022-11-20 20:11:20 +01:00
|
|
|
- uses: actions/checkout@v3
|
2019-12-10 03:20:04 +01:00
|
|
|
- uses: actions-rs/toolchain@v1
|
|
|
|
with:
|
|
|
|
toolchain: stable
|
|
|
|
override: true
|
|
|
|
- run: cargo install cross
|
2019-12-12 05:19:34 +01:00
|
|
|
# Test the portable implementation on everything.
|
|
|
|
- run: cross test --target ${{ matrix.arch }}
|
2020-08-31 22:55:48 +02:00
|
|
|
# Test building for ancient i386 processors without guaranteed SSE2 support.
|
|
|
|
- run: cross rustc --target ${{ matrix.arch }} -- -C target-cpu=i386
|
2020-08-31 23:46:39 +02:00
|
|
|
if: startsWith(matrix.arch, 'i586-') || startsWith(matrix.arch, 'i686-')
|
2019-12-12 05:19:34 +01:00
|
|
|
# Test the NEON implementation on ARM targets.
|
2020-03-28 22:27:31 +01:00
|
|
|
- run: cross test --target ${{ matrix.arch }} --features=neon
|
2019-12-12 05:21:25 +01:00
|
|
|
if: startsWith(matrix.arch, 'armv7-') || startsWith(matrix.arch, 'aarch64-')
|
2021-10-08 12:51:18 +02:00
|
|
|
# NEON is enabled by default on aarch64, disabling it through the no_neon feature.
|
|
|
|
- run: cross test --target ${{ matrix.arch }} --features=no_neon
|
|
|
|
if: startsWith(matrix.arch, 'aarch64-')
|
2019-12-12 05:19:34 +01:00
|
|
|
# Test vectors. Note that this uses a hacky script due to path dependency limitations.
|
|
|
|
- run: ./test_vectors/cross_test.sh --target ${{ matrix.arch }}
|
2020-09-29 20:23:00 +02:00
|
|
|
# C code. Same issue with the hacky script.
|
|
|
|
- run: ./c/blake3_c_rust_bindings/cross_test.sh --target ${{ matrix.arch }}
|
|
|
|
- run: ./c/blake3_c_rust_bindings/cross_test.sh --target ${{ matrix.arch }} --features=neon
|
|
|
|
if: startsWith(matrix.arch, 'armv7-') || startsWith(matrix.arch, 'aarch64-')
|
2020-01-09 05:10:32 +01:00
|
|
|
|
|
|
|
# Currently only on x86.
|
|
|
|
c_tests:
|
2020-01-14 00:11:07 +01:00
|
|
|
name: C Makefile tests
|
2020-01-09 05:10:32 +01:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
|
|
|
|
steps:
|
2022-11-20 20:11:20 +01:00
|
|
|
- uses: actions/checkout@v3
|
2020-02-12 19:10:24 +01:00
|
|
|
# Test the intrinsics-based implementations.
|
2020-07-20 15:45:20 +02:00
|
|
|
- run: make -f Makefile.testing test
|
2020-01-09 05:10:32 +01:00
|
|
|
working-directory: ./c
|
2020-09-02 18:21:46 +02:00
|
|
|
- run: make -f Makefile.testing clean && rm blake3_sse2.c
|
|
|
|
working-directory: ./c
|
|
|
|
- run: BLAKE3_NO_SSE2=1 make -f Makefile.testing test
|
|
|
|
working-directory: ./c
|
2020-07-20 15:45:20 +02:00
|
|
|
- run: make -f Makefile.testing clean && rm blake3_sse41.c
|
2020-01-20 22:19:16 +01:00
|
|
|
working-directory: ./c
|
2020-09-02 18:21:46 +02:00
|
|
|
- run: BLAKE3_NO_SSE2=1 BLAKE3_NO_SSE41=1 make -f Makefile.testing test
|
2020-01-20 22:19:16 +01:00
|
|
|
working-directory: ./c
|
2020-07-20 15:45:20 +02:00
|
|
|
- run: make -f Makefile.testing clean && rm blake3_avx2.c
|
2020-01-20 22:19:16 +01:00
|
|
|
working-directory: ./c
|
2020-09-02 18:21:46 +02:00
|
|
|
- run: BLAKE3_NO_SSE2=1 BLAKE3_NO_SSE41=1 BLAKE3_NO_AVX2=1 make -f Makefile.testing test
|
2020-01-20 22:19:16 +01:00
|
|
|
working-directory: ./c
|
2020-07-20 15:45:20 +02:00
|
|
|
- run: make -f Makefile.testing clean && rm blake3_avx512.c
|
2020-01-20 22:19:16 +01:00
|
|
|
working-directory: ./c
|
2020-09-02 18:21:46 +02:00
|
|
|
- run: BLAKE3_NO_SSE2=1 BLAKE3_NO_SSE41=1 BLAKE3_NO_AVX2=1 BLAKE3_NO_AVX512=1 make -f Makefile.testing test
|
2020-01-20 22:19:16 +01:00
|
|
|
working-directory: ./c
|
2020-02-12 19:10:24 +01:00
|
|
|
# Test the assembly implementations.
|
2020-07-20 15:45:20 +02:00
|
|
|
- run: make -f Makefile.testing test_asm
|
2020-02-12 19:10:24 +01:00
|
|
|
working-directory: ./c
|
2020-09-02 18:21:46 +02:00
|
|
|
- run: make -f Makefile.testing clean && rm blake3_sse2_x86-64_unix.S
|
|
|
|
working-directory: ./c
|
|
|
|
- run: BLAKE3_NO_SSE2=1 make -f Makefile.testing test_asm
|
|
|
|
working-directory: ./c
|
2020-07-20 15:45:20 +02:00
|
|
|
- run: make -f Makefile.testing clean && rm blake3_sse41_x86-64_unix.S
|
2020-02-12 19:10:24 +01:00
|
|
|
working-directory: ./c
|
2020-09-02 18:21:46 +02:00
|
|
|
- run: BLAKE3_NO_SSE2=1 BLAKE3_NO_SSE41=1 make -f Makefile.testing test_asm
|
2020-02-12 19:10:24 +01:00
|
|
|
working-directory: ./c
|
2020-07-20 15:45:20 +02:00
|
|
|
- run: make -f Makefile.testing clean && rm blake3_avx2_x86-64_unix.S
|
2020-02-12 19:10:24 +01:00
|
|
|
working-directory: ./c
|
2020-09-02 18:21:46 +02:00
|
|
|
- run: BLAKE3_NO_SSE2=1 BLAKE3_NO_SSE41=1 BLAKE3_NO_AVX2=1 make -f Makefile.testing test_asm
|
2020-02-12 19:10:24 +01:00
|
|
|
working-directory: ./c
|
2020-07-20 15:45:20 +02:00
|
|
|
- run: make -f Makefile.testing clean && rm blake3_avx512_x86-64_unix.S
|
2020-02-12 19:10:24 +01:00
|
|
|
working-directory: ./c
|
2020-09-02 18:21:46 +02:00
|
|
|
- run: BLAKE3_NO_SSE2=1 BLAKE3_NO_SSE41=1 BLAKE3_NO_AVX2=1 BLAKE3_NO_AVX512=1 make -f Makefile.testing test_asm
|
2020-02-12 19:10:24 +01:00
|
|
|
working-directory: ./c
|
2020-10-20 18:27:57 +02:00
|
|
|
# Restore the files we deleted above.
|
|
|
|
- run: git checkout .
|
|
|
|
# Build the example.
|
|
|
|
- run: make -f Makefile.testing example
|
|
|
|
working-directory: ./c
|
2021-10-22 00:16:03 +02:00
|
|
|
|
|
|
|
# Note that this jobs builds AArch64 binaries from an x86_64 host.
|
|
|
|
build_apple_silicon:
|
|
|
|
name: build for Apple Silicon
|
|
|
|
runs-on: macOS-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
steps:
|
2022-11-20 20:11:20 +01:00
|
|
|
- uses: actions/checkout@v3
|
2021-10-22 00:16:03 +02:00
|
|
|
- uses: actions-rs/toolchain@v1
|
|
|
|
with:
|
|
|
|
toolchain: stable
|
|
|
|
target: aarch64-apple-darwin
|
|
|
|
override: true
|
|
|
|
- name: build blake3
|
|
|
|
run: cargo build --target aarch64-apple-darwin
|
|
|
|
- name: build b3sum
|
|
|
|
run: cargo build --target aarch64-apple-darwin
|
|
|
|
working-directory: ./b3sum
|
2022-09-17 16:22:54 +02:00
|
|
|
|
|
|
|
build_tinycc:
|
|
|
|
name: build with the Tiny C Compiler
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2022-11-20 20:11:20 +01:00
|
|
|
- uses: actions/checkout@v3
|
2022-09-17 16:22:54 +02:00
|
|
|
- name: install TCC
|
2022-10-12 00:27:22 +02:00
|
|
|
run: sudo apt-get install -y tcc
|
2022-09-17 16:22:54 +02:00
|
|
|
- name: compile
|
|
|
|
run: >
|
|
|
|
tcc -shared -O3 -o libblake3.so \
|
|
|
|
-DBLAKE3_NO_SSE2 -DBLAKE3_NO_SSE41 -DBLAKE3_NO_AVX2 -DBLAKE3_NO_AVX512 \
|
|
|
|
blake3.c blake3_dispatch.c blake3_portable.c
|
2022-10-12 00:27:22 +02:00
|
|
|
working-directory: ./c
|
2022-11-22 09:33:12 +01:00
|
|
|
|
|
|
|
# See https://github.com/BLAKE3-team/BLAKE3/issues/271 for why we test this.
|
|
|
|
# Note that this isn't guaranteed to execute on an AVX-512-supporting server,
|
|
|
|
# but hopefully at least some of the time it will.
|
|
|
|
gcc54:
|
|
|
|
name: "compile and test with GCC 5.4"
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v3
|
|
|
|
- uses: addnab/docker-run-action@v3
|
|
|
|
with:
|
|
|
|
image: gcc:5.4
|
|
|
|
options: -v ${{ github.workspace }}:/work
|
|
|
|
run: |
|
|
|
|
cat /proc/cpuinfo
|
|
|
|
curl https://sh.rustup.rs -sSf | sh -s -- -y --profile minimal
|
|
|
|
cd /work
|
|
|
|
~/.cargo/bin/cargo test --features prefer_intrinsics
|
2022-06-06 17:28:22 +02:00
|
|
|
|
|
|
|
# CMake build test (Library only), current macOS/Linux only.
|
|
|
|
cmake_build:
|
2023-05-11 11:26:38 +02:00
|
|
|
name: CMake ${{ matrix.os }}
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
os: ["ubuntu-latest", "macOS-latest", "windows-latest"]
|
|
|
|
compiler: [gcc, clang, cl]
|
|
|
|
exclude:
|
|
|
|
- os: windows-latest
|
|
|
|
compiler: gcc
|
|
|
|
- os: ubuntu-latest
|
|
|
|
compiler: msvc
|
|
|
|
- os: macOS-latest
|
|
|
|
compiler: msvc
|
|
|
|
steps:
|
2022-06-06 17:28:22 +02:00
|
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: CMake generation
|
2023-05-11 11:26:38 +02:00
|
|
|
run: cmake -S c -B c/build -DCMAKE_INSTALL_PREFIX=${{github.workspace}}/target
|
|
|
|
- name: CMake build / install
|
|
|
|
run: cmake --build c/build --target install
|