Skip to content

Commit

Permalink
Update Docker distro, and latest CMAKE, GCC, CLANG and QT versions (3)
Browse files Browse the repository at this point in the history
  • Loading branch information
arBmind committed Jun 9, 2024
1 parent 36c3255 commit 3342f88
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 25 deletions.
46 changes: 28 additions & 18 deletions .github/workflows/docker_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,26 +8,30 @@ jobs:
strategy:
fail-fast: false
matrix:
distro: ['lunar']
cmake_version: ['3.26.5', '3.27.6']
distro: ['noble']
cmake_version: ['3.28.6', '3.29.5']
clang: [
{major: 15, source: 'apt'},
{major: 16, source: 'apt'},
{major: 17, source: 'llvm'}
{major: 17, source: 'llvm'},
{major: 18, source: 'llvm'}
]
gcc: [
{major: 11, source: 'apt'},
{major: 12, source: 'apt'},
{major: 13, source: 'apt'}
{major: 13, source: 'apt'},
{major: 14, source: 'apt'}
]
qt: [
{version: '6.5.3', arch: 'gcc_64'},
{version: '6.6.3', arch: 'gcc_64'},
{version: '6.7.1', arch: 'linux_gcc_64'}
]
qt_version: ['6.4.3', '6.5.3']

include:
- distro: lunar
cmake_version: '3.27.6'
clang: {major: 17, source: 'llvm'}
gcc: {major: 13, source: 'apt'}
qt_version: '6.5.2'
- distro: noble
cmake_version: '3.29.5'
clang: {major: 18, source: 'llvm'}
gcc: {major: 14, source: 'apt'}
qt: {version: '6.7.1', arch: 'linux_gcc_64'}
gcc_tags: |
arbmind/cmake-gcc:latest
ghcr.io/arbmind/cmake-gcc:latest
Expand Down Expand Up @@ -102,7 +106,8 @@ jobs:
DISTRO=${{ matrix.distro }}
GCC_MAJOR=${{ matrix.gcc.major }}
GCC_SOURCE=${{ matrix.gcc.source }}
QT_VERSION=${{ matrix.qt_version }}
QT_VERSION=${{ matrix.qt.version }}
QT_ARCH=${{ matrix.qt.arch }}
CMAKE_VERSION=${{ matrix.cmake_version }}
- name: CMake ${{ matrix.cmake_version }} + GCC ${{ matrix.gcc.major }} + QtGui ${{ matrix.qt_version }} + Dev
Expand All @@ -121,7 +126,8 @@ jobs:
DISTRO=${{ matrix.distro }}
GCC_MAJOR=${{ matrix.gcc.major }}
GCC_SOURCE=${{ matrix.gcc.source }}
QT_VERSION=${{ matrix.qt_version }}
QT_VERSION=${{ matrix.qt.version }}
QT_ARCH=${{ matrix.qt.arch }}
CMAKE_VERSION=${{ matrix.cmake_version }}
QTGUI_BASE_IMAGE=cmake-gcc-qt
Expand All @@ -138,7 +144,8 @@ jobs:
DISTRO=${{ matrix.distro }}
CLANG_MAJOR=${{ matrix.clang.major }}
CLANG_SOURCE=${{ matrix.clang.source }}
QT_VERSION=${{ matrix.qt_version }}
QT_VERSION=${{ matrix.qt.version }}
QT_ARCH=${{ matrix.qt.arch }}
CMAKE_VERSION=${{ matrix.cmake_version }}
- name: CMake ${{ matrix.cmake_version }} + Clang ${{ matrix.clang.major }} + LibStdC++ ${{ matrix.gcc.major }}
Expand All @@ -156,7 +163,8 @@ jobs:
CLANG_SOURCE=${{ matrix.clang.source }}
GCC_MAJOR=${{ matrix.gcc.major }}
GCC_SOURCE=${{ matrix.gcc.source }}
QT_VERSION=${{ matrix.qt_version }}
QT_VERSION=${{ matrix.qt.version }}
QT_ARCH=${{ matrix.qt.arch }}
CMAKE_VERSION=${{ matrix.cmake_version }}
- name: CMake ${{ matrix.cmake_version }} + Clang ${{ matrix.clang.major }} + LibStdC++ ${{ matrix.gcc.major }} + Qt ${{ matrix.qt_version }}
Expand All @@ -174,7 +182,8 @@ jobs:
CLANG_SOURCE=${{ matrix.clang.source }}
GCC_MAJOR=${{ matrix.gcc.major }}
GCC_SOURCE=${{ matrix.gcc.source }}
QT_VERSION=${{ matrix.qt_version }}
QT_VERSION=${{ matrix.qt.version }}
QT_ARCH=${{ matrix.qt.arch }}
CMAKE_VERSION=${{ matrix.cmake_version }}
- name: CMake ${{ matrix.cmake_version }} + Clang ${{ matrix.clang.major }} + LibStdC++ ${{ matrix.gcc.major }} + QtGui ${{ matrix.qt_version }} + Dev
Expand All @@ -195,6 +204,7 @@ jobs:
CLANG_SOURCE=${{ matrix.clang.source }}
GCC_MAJOR=${{ matrix.gcc.major }}
GCC_SOURCE=${{ matrix.gcc.source }}
QT_VERSION=${{ matrix.qt_version }}
QT_VERSION=${{ matrix.qt.version }}
QT_ARCH=${{ matrix.qt.arch }}
CMAKE_VERSION=${{ matrix.cmake_version }}
QTGUI_BASE_IMAGE=cmake-clang-libstdcpp-qt
17 changes: 10 additions & 7 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,20 +1,23 @@
ARG DISTRO=lunar
ARG CLANG_MAJOR=16
ARG DISTRO=noble
ARG CLANG_MAJOR=18
# clang source options:
# apt - directly use apt version
# llvm - add llvm distro repo
ARG CLANG_SOURCE=apt
ARG GCC_MAJOR=13
ARG CLANG_SOURCE=llvm
ARG GCC_MAJOR=14
# gcc source options:
# apt - directly use apt version
# ppa - add toolchain ppa
ARG GCC_SOURCE=apt
ARG QT_ARCH=gcc_64
ARG QT_VERSION=6.5.0
ARG QT_VERSION=6.7.1
ARG QT_MODULES=""
ARG CMAKE_VERSION=3.26.3
ARG CMAKE_VERSION=3.29.5
ARG CMAKE_URL=https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-linux-x86_64.tar.gz
ARG RUNTIME_APT="libicu72 libgssapi-krb5-2 libdbus-1-3 libpcre2-16-0"
# Ubuntu lunar
#ARG RUNTIME_APT="libicu72 libgssapi-krb5-2 libdbus-1-3 libpcre2-16-0"
# Ubuntu noble
ARG RUNTIME_APT="libicu74 libgssapi-krb5-2 libdbus-1-3 libpcre2-16-0"
# use "cmake-gcc-qt" or "cmake-clang-libstdcpp-qt"
ARG QTGUI_BASE_IMAGE="cmake-gcc-qt"
# note: these depend on distro and Qt version
Expand Down

0 comments on commit 3342f88

Please sign in to comment.