mirror of
https://github.com/tailix/libkernaux.git
synced 2024-10-30 11:54:01 -04:00
104 lines
3.1 KiB
YAML
104 lines
3.1 KiB
YAML
# We use Cirrus CI to test on FreeBSD.
|
|
# For GNU/Linux CI see GitHub Actions.
|
|
|
|
freebsd_instance:
|
|
image_family: freebsd-13-1
|
|
|
|
main_freebsd_task:
|
|
name: Main (FreeBSD)
|
|
only_if: $CIRRUS_BRANCH == 'master' || $CIRRUS_BASE_BRANCH == 'master'
|
|
dependencies_script:
|
|
- pkg install --yes autoconf automake cppcheck libtool libyaml py39-pip py39-wheel python3
|
|
- pip install --user Jinja2 PyYAML
|
|
main_build_script:
|
|
- ./autogen.sh
|
|
- ./configure --enable-fixtures --enable-checks-all CFLAGS='-O3'
|
|
- make
|
|
- sudo make install
|
|
main_test_script:
|
|
- make check
|
|
|
|
mruby_freebsd_task:
|
|
name: mruby (FreeBSD)
|
|
only_if: $CIRRUS_BRANCH == 'master' || $CIRRUS_BASE_BRANCH == 'master'
|
|
env:
|
|
CPATH: '/usr/local/include'
|
|
LIBRARY_PATH: '/usr/local/lib'
|
|
MRUBY_YAML_USE_SYSTEM_LIBRARY: x
|
|
dependencies_script:
|
|
- pkg install --yes autoconf automake git libtool rubygem-rake wget
|
|
dependencies_mruby_script:
|
|
- wget https://github.com/mruby/mruby/archive/3.1.0.zip -O mruby-3.1.0.zip
|
|
- unzip mruby-3.1.0.zip
|
|
main_build_script:
|
|
- ./autogen.sh
|
|
- ./configure CFLAGS='-O3'
|
|
- make
|
|
- sudo make install
|
|
mruby_test_script:
|
|
- cd mruby-3.1.0
|
|
- MRUBY_CONFIG=../bindings/mruby/build_config.rb rake test
|
|
|
|
ruby_freebsd_task:
|
|
name: Ruby (FreeBSD)
|
|
only_if: $CIRRUS_BRANCH == 'master' || $CIRRUS_BASE_BRANCH == 'master'
|
|
env:
|
|
CPATH: '/usr/local/include'
|
|
LIBRARY_PATH: '/usr/local/lib'
|
|
dependencies_script:
|
|
- pkg install --yes autoconf automake cppcheck git libtool wget
|
|
dependencies_ruby_script:
|
|
- wget https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.3.tar.gz
|
|
- tar -xzf ruby-3.0.3.tar.gz
|
|
- cd ruby-3.0.3
|
|
- ./configure --disable-install-doc
|
|
- make
|
|
- sudo make install
|
|
main_build_script:
|
|
- ./autogen.sh
|
|
- ./configure CFLAGS='-O3'
|
|
- make
|
|
- sudo make install
|
|
ruby_build_script:
|
|
- cd bindings/ruby
|
|
- ./bin/setup
|
|
- bundle exec rake compile
|
|
ruby_test_script:
|
|
- cd bindings/ruby
|
|
- bundle exec rake
|
|
|
|
rust_freebsd_task:
|
|
name: Rust (FreeBSD)
|
|
only_if: $CIRRUS_BRANCH == 'master' || $CIRRUS_BASE_BRANCH == 'master'
|
|
env:
|
|
RUSTFLAGS: '-L /usr/local/lib'
|
|
dependencies_script:
|
|
- pkg install --yes autoconf automake libtool
|
|
dependencies_rust_script:
|
|
- curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
|
|
main_build_script:
|
|
- ./autogen.sh
|
|
- ./configure CFLAGS='-O3'
|
|
- make
|
|
- sudo make install
|
|
rust_test_script:
|
|
- cd bindings/rust
|
|
- ~/.cargo/bin/cargo test
|
|
- ~/.cargo/bin/cargo clippy
|
|
- ~/.cargo/bin/cargo fmt --check
|
|
|
|
main_freebsd_port_task:
|
|
name: Main (FreeBSD port)
|
|
only_if: "changesInclude('.cirrus.yml', 'pkgs/freebsd/**')"
|
|
dependencies_script:
|
|
- pkg install --yes portfmt portlint porttools
|
|
port_prepare_script:
|
|
- echo 'DEVELOPER=yes' >> /etc/make.conf
|
|
- rm -rf /usr/ports/devel/libkernaux/
|
|
- cp -r $CIRRUS_WORKING_DIR/pkgs/freebsd/devel/libkernaux /usr/ports/devel/
|
|
port_test_script:
|
|
- cd /usr/ports/devel/libkernaux/
|
|
- portfmt -D Makefile
|
|
- portclippy --strict Makefile
|
|
- portlint -A
|
|
- port test .
|