Skip to content

Commit

Permalink
Merge pull request #1036 from ma8ma/abandon-ubuntu-18.04-support
Browse files Browse the repository at this point in the history
Abandon Ubuntu 18.04 support
  • Loading branch information
ma8ma committed Aug 27, 2022
2 parents 6c69ab2 + 22463a1 commit 5d44f8e
Show file tree
Hide file tree
Showing 2 changed files with 85 additions and 63 deletions.
142 changes: 81 additions & 61 deletions .github/workflows/ccpp.yml
Expand Up @@ -12,6 +12,10 @@ jobs:

compiler-18:
runs-on: ubuntu-18.04
# Ubuntu 18.04 runner image will be unsupported by 2022-12-01.
# Set continue on error to avoid job failed by planned brownout.
# https://github.com/actions/runner-images/issues/6002
continue-on-error: true
env:
CC: ${{ matrix.sets.cc }}
CXX: ${{ matrix.sets.cxx }}
Expand All @@ -21,29 +25,15 @@ jobs:
- cc: gcc-7
cxx: g++-7
package: g++-7
- cc: gcc-8
cxx: g++-8
package: g++-8
- cc: clang-6.0
cxx: clang++-6.0
package: clang-6.0
- cc: clang-7
cxx: clang++-7
package: clang-7
# failed by SIGABRT on Ubuntu 20.04
# https://github.com/JDimproved/JDim/runs/2589523269?check_suite_focus=true
- cc: clang-9
cxx: clang++-9
package: clang-9
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.6'
- name: dependencies installation
run: |
sudo apt update
sudo apt install libgnutls28-dev libgtest-dev libgtkmm-3.0-dev libltdl-dev libtool ninja-build zlib1g-dev ${{ matrix.sets.package }}
sudo apt install libgnutls28-dev libgtest-dev libgtkmm-3.0-dev ninja-build zlib1g-dev ${{ matrix.sets.package }}
- name: install meson==0.49.0
run: |
python -m pip install --upgrade pip setuptools wheel
Expand All @@ -54,8 +44,8 @@ jobs:
- name: ninja -C builddir
run: ninja -C builddir
# Since Meson 0.57, `test` subcommand will only rebuild test program.
- name: meson test -C builddir
run: meson test -C builddir
- name: meson test -v -C builddir
run: meson test -v -C builddir
- name: ./builddir/src/jdim -V
run: ./builddir/src/jdim -V

Expand All @@ -67,36 +57,75 @@ jobs:
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 builddir -Dbuildtype=debug -Dcpp_args="-D_DEBUG"
run: meson 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
- cc: clang-11
cxx: clang++-11
package: clang-11
- cc: clang-12
cxx: clang++-12
package: clang-12
# 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@v2
- uses: actions/checkout@v3
- name: dependencies installation
run: |
sudo apt update
sudo apt install libgnutls28-dev libgtest-dev libgtkmm-3.0-dev libltdl-dev libtool meson zlib1g-dev ${{ matrix.sets.package }}
sudo apt install libgnutls28-dev libgtest-dev libgtkmm-3.0-dev meson zlib1g-dev ${{ matrix.sets.package }}
- name: meson builddir -Dbuildtype=debug -Dcpp_args="-D_DEBUG"
run: meson builddir -Dbuildtype=debug -Dcpp_args="-D_DEBUG"
- name: ninja -C builddir
run: ninja -C builddir
- name: meson test -C builddir
run: meson test -C builddir
- name: meson test -v -C builddir
run: meson test -v -C builddir
- name: ./builddir/src/jdim -V
run: ./builddir/src/jdim -V

Expand All @@ -110,16 +139,12 @@ jobs:
strategy:
matrix:
sets:
- os: ubuntu-18.04
cc: gcc-7
cxx: g++-7
package: g++-7
- os: ubuntu-20.04
cc: gcc-9
cxx: g++-9
package: g++-9
- os: ubuntu-22.04
cc: gcc-11
cxx: g++-11
package: g++-11
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: dependencies installation
run: |
sudo apt update
Expand All @@ -135,14 +160,13 @@ jobs:
- name: ./src/jdim -V
run: ./src/jdim -V

library-18:
library-20:

runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
env:
CC: gcc-7
CXX: g++-7
CC: gcc-9
CXX: g++-9
CXXFLAGS: -Og -pipe -D_DEBUG
GTEST_SRCDIR: /usr/src/googletest
strategy:
matrix:
deps:
Expand All @@ -153,11 +177,11 @@ jobs:
- config_args: --with-tls=openssl --with-sessionlib=xsmp --with-alsa --with-pangolayout
packages: libssl-dev libasound2-dev
steps:
- uses: actions/checkout@v2
- 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++-7
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 }}
Expand All @@ -169,12 +193,12 @@ jobs:
- name: ./src/jdim -V
run: ./src/jdim -V

library-20:
library-22:

runs-on: ubuntu-20.04
runs-on: ubuntu-22.04
env:
CC: gcc-9
CXX: g++-9
CC: gcc-11
CXX: g++-11
strategy:
matrix:
deps:
Expand All @@ -185,30 +209,26 @@ jobs:
- config_args: -Dtls=openssl -Dsessionlib=xsmp -Dalsa=enabled -Dpangolayout=enabled
packages: libssl-dev libasound2-dev
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: dependencies installation (${{ matrix.deps.packages }})
run: |
sudo apt update
sudo apt install meson libgtest-dev libtool libltdl-dev libgtkmm-3.0-dev ${{ matrix.deps.packages }} g++-9
sudo apt install meson libgtest-dev libgtkmm-3.0-dev ${{ matrix.deps.packages }} g++-11
- name: meson builddir -Dbuildtype=debug -Dcpp_args="-D_DEBUG" ${{ matrix.deps.config_args }}
run: meson builddir -Dbuildtype=debug -Dcpp_args="-D_DEBUG" ${{ matrix.deps.config_args }}
- name: ninja -C builddir
run: ninja -C builddir
- name: meson test -C builddir
run: meson test -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:
manual-build:

runs-on: ubuntu-18.04
env:
NOKOGIRI_USE_SYSTEM_LIBRARIES: true
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: dependencies installation
run: |
sudo apt update
sudo apt install ruby-dev ruby-bundler libcurl4-openssl-dev libxslt1-dev
- name: make -j$(nproc) -C docs build
run: make -j$(nproc) -C docs build
- uses: actions/checkout@v3
- uses: actions/jekyll-build-pages@v1
with:
source: ./docs
destination: ./docs/_site
6 changes: 4 additions & 2 deletions README.md
Expand Up @@ -44,14 +44,16 @@ JDim は GPLv2 の下で公開されている [JD][jd-project] からforkした
LinuxなどのUnixライクなOS(FreeBSD,OpenBSD,Nexenta,MacOSXでも動作報告例があります)。

##### サポートの最新情報
gccのバージョンが7未満のプラットフォームはサポートを終了しました。
Ubuntu 18.04(2018年)より前にリリースされたディストリビューションを利用されている場合は更新をお願いいたします。
Ubuntu 18.04のテスト環境が[使えなくなる][#1035]ため前倒しで18.04のサポートを放棄しました。
次のリリースまで動作環境の変更は行いませんが18.04では問題が起こるかもしれません。
Debian buster(2019年)より前にリリースされたディストリビューションを利用されている場合は更新をお願いいたします。

メンテナンスの都合によりWindows(MinGW)版のサポートは[終了][#445]しました。

Snap i386(32bit)版は2023年1月のリリースをもって[更新を終了][#890]する予定です。
i386版ディストロを利用されている場合は更新をお願いいたします。

[#1035]: https://github.com/JDimproved/JDim/issues/1035
[#445]: https://github.com/JDimproved/JDim/issues/445
[#890]: https://github.com/JDimproved/JDim/issues/890

Expand Down

0 comments on commit 5d44f8e

Please sign in to comment.