1
0
Fork 0
mirror of https://github.com/tailix/libkernaux.git synced 2024-11-13 11:04:27 -05:00
libkernaux/.github/workflows/test.yml

127 lines
3.7 KiB
YAML
Raw Normal View History

2021-12-13 17:24:25 -05:00
name: Test
on:
push:
2021-12-13 17:33:53 -05:00
branches: [master]
2021-12-13 17:24:25 -05:00
pull_request:
2021-12-13 17:33:53 -05:00
branches: [master]
2021-12-13 17:24:25 -05:00
jobs:
2021-12-14 17:20:48 -05:00
test:
2021-12-14 14:35:34 -05:00
runs-on: ubuntu-latest
2021-12-14 17:20:48 -05:00
strategy:
matrix:
2022-01-17 09:24:51 -05:00
# TODO: something is wrong with TCC, Multiboot 2 info tag struct size
#cc: ['gcc', 'clang', 'tcc']
cc: ['gcc', 'clang']
2021-12-14 17:20:48 -05:00
opt: ['', '-O0', '-O3']
2021-12-14 14:35:34 -05:00
steps:
- uses: actions/checkout@v2
2022-01-18 12:31:34 -05:00
- uses: ruby/setup-ruby@v1
2022-01-18 12:34:51 -05:00
with:
ruby-version: 3.0
2022-01-18 12:41:28 -05:00
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
2022-01-18 12:31:34 -05:00
2021-12-14 18:03:51 -05:00
- name: dependencies
2022-01-17 09:28:40 -05:00
run: sudo apt-get -y install clang tcc
2021-12-14 14:35:34 -05:00
- name: autogen
run: ./autogen.sh
2021-12-14 14:36:53 -05:00
- name: configure
run: ./configure --enable-tests CC='${{matrix.cc}}' CFLAGS='${{matrix.opt}} -fPIC'
2021-12-14 17:10:28 -05:00
- name: make
run: make
- name: check
2022-01-17 07:43:33 -05:00
run: make check || (cat test-suite.log && false)
2021-12-17 15:26:29 -05:00
- name: install
run: sudo make install
cppcheck:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: dependencies
2022-01-17 09:28:40 -05:00
run: sudo apt-get -y install cppcheck
2021-12-17 15:17:14 -05:00
- name: cppcheck source code
2022-01-19 17:55:11 -05:00
# TODO: don't suppress "src/printf.c"
run: cppcheck --quiet --error-exitcode=1 --std=c99 --enable=warning,style,performance,portability --suppress='*:src/printf.c' include/ src/
2021-12-17 15:17:14 -05:00
- name: cppcheck examples
run: cppcheck --quiet --error-exitcode=1 --std=c99 --enable=warning,style,performance,portability --suppress=duplicateExpression --suppress=staticStringCompare examples/
- name: cppcheck tests
run: cppcheck --quiet --error-exitcode=1 --std=c99 --enable=warning,style,performance,portability --suppress=unusedStructMember tests/
mruby:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
2022-01-30 00:51:55 -05:00
with:
submodules: true
- name: dependencies
2022-01-30 00:51:55 -05:00
run: sudo apt-get -y install cppcheck rake
- working-directory: vendor/mruby
name: build config
2022-01-30 00:53:07 -05:00
run: cp ../../pkgs/mruby/build_config.rb build_config/default.rb
2022-01-30 00:51:55 -05:00
- working-directory: vendor/mruby
name: test
run: rake test
- working-directory: pkgs/mruby
name: cppcheck
run: cppcheck --quiet --error-exitcode=1 --std=c99 --enable=warning,style,performance,portability .
ruby:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: 3.0
- name: dependencies
run: sudo apt-get -y install cppcheck
- name: autogen
run: ./autogen.sh
- name: configure
run: ./configure CFLAGS='-O3 -fPIC'
- name: make
run: make
- name: install
run: sudo make install
- working-directory: pkgs/ruby
name: bundle
run: bundle install
- working-directory: pkgs/ruby
name: compile
run: rake compile
- working-directory: pkgs/ruby
name: test & lint
run: rake
- working-directory: pkgs/ruby
name: cppcheck
run: cppcheck --quiet --error-exitcode=1 --std=c99 --enable=warning,style,performance,portability .
rust:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
2022-01-29 22:15:53 -05:00
components: rustfmt, clippy
- name: autogen
run: ./autogen.sh
- name: configure
run: ./configure CFLAGS='-O3 -fPIC'
- name: make
run: make
- name: install
run: sudo make install
- working-directory: pkgs/rust
name: test
run: cargo test
2022-01-29 22:15:53 -05:00
- working-directory: pkgs/rust
name: fmt
run: cargo fmt --check
- working-directory: pkgs/rust
name: clippy
run: cargo clippy