Skip to content

Release 0.10.1

Release 0.10.1 #1937

Workflow file for this run

name: CI
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
ASan-22:
runs-on: ubuntu-22.04
env:
CC: gcc-11
CXX: g++-11
# Avoid crash for calling crypt_r() that is pointing invalid address.
# https://github.com/JDimproved/JDim/issues/943
AVOID_CRASH: -Wl,--push-state,--no-as-needed -lcrypt -Wl,--pop-state
steps:
- uses: actions/checkout@v3
- name: dependencies installation
run: |
sudo apt update
sudo apt install libgnutls28-dev libgtest-dev libgtkmm-3.0-dev meson zlib1g-dev g++-11
- name: meson setup builddir -Db_sanitize=address,undefined -Dbuildtype=debug -Dcpp_args="-D_DEBUG" -Dcpp_link_args="${AVOID_CRASH}"
run: meson setup builddir -Db_sanitize=address,undefined -Dbuildtype=debug -Dcpp_args="-D_DEBUG" -Dcpp_link_args="${AVOID_CRASH}"
# `compile` subcommand requires Meson 0.54 or later.
- name: ninja -C builddir
run: ninja -C builddir
# Since Meson 0.57, `test` subcommand will only rebuild test program.
- name: meson test -v -C builddir
run: meson test -v -C builddir
- name: ./builddir/src/jdim -V
run: ./builddir/src/jdim -V
compiler-20:
runs-on: ubuntu-20.04
env:
CC: ${{ matrix.sets.cc }}
CXX: ${{ matrix.sets.cxx }}
strategy:
matrix:
sets:
- cc: gcc-8
cxx: g++-8
package: g++-8
- cc: gcc-9
cxx: g++-9
package: g++-9
- cc: gcc-10
cxx: g++-10
package: g++-10
- cc: clang-7
cxx: clang++-7
package: clang-7
- cc: clang-8
cxx: clang++-8
package: clang-8
- cc: clang-9
cxx: clang++-9
package: clang-9
- cc: clang-10
cxx: clang++-10
package: clang-10
steps:
- uses: actions/checkout@v3
- name: dependencies installation
run: |
sudo apt update
sudo apt install libgnutls28-dev libgtest-dev libgtkmm-3.0-dev meson zlib1g-dev ${{ matrix.sets.package }}
- name: meson setup builddir -Dbuildtype=debug -Dcpp_args="-D_DEBUG"
run: meson setup builddir -Dbuildtype=debug -Dcpp_args="-D_DEBUG"
- name: ninja -C builddir
run: ninja -C builddir
- name: meson test -v -C builddir
run: meson test -v -C builddir
- name: ./builddir/src/jdim -V
run: ./builddir/src/jdim -V
compiler-22:
runs-on: ubuntu-22.04
env:
CC: ${{ matrix.sets.cc }}
CXX: ${{ matrix.sets.cxx }}
strategy:
matrix:
sets:
- cc: gcc-11
cxx: g++-11
package: g++-11
# Omit gcc-12 due to jobs are too many.
- cc: clang-11
cxx: clang++-11
package: clang-11
# Omit clang-12 due to jobs are too many.
- cc: clang-13
cxx: clang++-13
package: clang-13
- cc: clang-14
cxx: clang++-14
package: clang-14
steps:
- uses: actions/checkout@v3
- name: dependencies installation
run: |
sudo apt update
sudo apt install libgnutls28-dev libgtest-dev libgtkmm-3.0-dev meson zlib1g-dev ${{ matrix.sets.package }}
- name: meson setup builddir -Dbuildtype=debug -Dcpp_args="-D_DEBUG"
run: meson setup builddir -Dbuildtype=debug -Dcpp_args="-D_DEBUG"
- name: ninja -C builddir
run: ninja -C builddir
- name: meson test -v -C builddir
run: meson test -v -C builddir
- name: ./builddir/src/jdim -V
run: ./builddir/src/jdim -V
autotools:
runs-on: ${{ matrix.sets.os }}
env:
CC: ${{ matrix.sets.cc }}
CXX: ${{ matrix.sets.cxx }}
CXXFLAGS: -Og -pipe
GTEST_SRCDIR: /usr/src/googletest
strategy:
matrix:
sets:
- os: ubuntu-22.04
cc: gcc-11
cxx: g++-11
package: g++-11
steps:
- uses: actions/checkout@v3
- name: dependencies installation
run: |
sudo apt update
sudo apt install autoconf-archive libgnutls28-dev libgtest-dev libgtkmm-3.0-dev libltdl-dev libtool zlib1g-dev ${{ matrix.sets.package }}
- name: autoreconf -i
run: autoreconf -i
- name: ./configure
run: ./configure
- name: make -j$(nproc)
run: make -j$(nproc)
- name: make check -j$(nproc)
run: make check -j$(nproc)
- name: ./src/jdim -V
run: ./src/jdim -V
library-20:
runs-on: ubuntu-20.04
env:
CC: gcc-9
CXX: g++-9
CXXFLAGS: -Og -pipe -D_DEBUG
strategy:
matrix:
deps:
- config_args: --with-tls=gnutls --with-sessionlib=xsmp --with-migemo --with-alsa --with-pangolayout
packages: libgnutls28-dev libmigemo-dev libasound2-dev
- config_args: --with-tls=openssl --with-sessionlib=no --with-migemo --disable-compat-cache-dir
packages: libssl-dev libmigemo-dev
- config_args: --with-tls=openssl --with-sessionlib=xsmp --with-alsa --with-pangolayout
packages: libssl-dev libasound2-dev
steps:
- uses: actions/checkout@v3
- name: dependencies installation (${{ matrix.deps.packages }})
run: |
sudo apt update
sudo apt install autoconf-archive libgtest-dev libtool libltdl-dev libgtkmm-3.0-dev ${{ matrix.deps.packages }} g++-9
- name: autoreconf -i
run: autoreconf -i
- name: ./configure ${{ matrix.deps.config_args }}
run: ./configure ${{ matrix.deps.config_args }}
- name: make -j$(nproc)
run: make -j$(nproc)
- name: make check -j$(nproc)
run: make check -j$(nproc)
- name: ./src/jdim -V
run: ./src/jdim -V
library-22:
runs-on: ubuntu-22.04
env:
CC: gcc-11
CXX: g++-11
strategy:
matrix:
deps:
- config_args: -Dtls=gnutls -Dsessionlib=xsmp -Dmigemo=enabled -Dalsa=enabled -Dpangolayout=enabled
packages: libgnutls28-dev libmigemo-dev libasound2-dev
- config_args: -Dtls=openssl -Dsessionlib=no -Dmigemo=enabled -Dcompat_cache_dir=disabled
packages: libssl-dev libmigemo-dev
- config_args: -Dtls=openssl -Dsessionlib=xsmp -Dalsa=enabled -Dpangolayout=enabled
packages: libssl-dev libasound2-dev
steps:
- uses: actions/checkout@v3
- name: dependencies installation (${{ matrix.deps.packages }})
run: |
sudo apt update
sudo apt install meson libgtest-dev libgtkmm-3.0-dev ${{ matrix.deps.packages }} g++-11
- name: meson setup builddir -Dbuildtype=debug -Dcpp_args="-D_DEBUG" ${{ matrix.deps.config_args }}
run: meson setup builddir -Dbuildtype=debug -Dcpp_args="-D_DEBUG" ${{ matrix.deps.config_args }}
- name: ninja -C builddir
run: ninja -C builddir
- name: meson test -v -C builddir
run: meson test -v -C builddir
- name: ./builddir/src/jdim -V
run: ./builddir/src/jdim -V
manual-build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/jekyll-build-pages@v1
with:
source: ./docs
destination: ./docs/_site