From cc2c4f36540668b8af25d6c05838e3dad528fe26 Mon Sep 17 00:00:00 2001 From: Clint Banzhaf Date: Fri, 15 Nov 2024 17:36:25 +0100 Subject: [PATCH] Add Ubuntu 24.04 to Github CI (#92) --- .github/workflows/build-linux.yml | 4 ++-- build/make/CppCore.Test.mk | 12 ++++++++---- dist/ubuntu-24.04/.gitignore | 3 +++ .../CppCore.Example.Client.Resources.control | 9 +++++++++ dist/ubuntu-24.04/CppCore.Example.Client.control | 10 ++++++++++ dist/ubuntu-24.04/CppCore.Example.Client.desktop | 10 ++++++++++ .../CppCore.Example.Server.Resources.control | 9 +++++++++ dist/ubuntu-24.04/CppCore.Example.Server.control | 10 ++++++++++ dist/ubuntu-24.04/CppCore.Example.Server.desktop | 10 ++++++++++ .../CppCore.Example.UI.Resources.control | 9 +++++++++ dist/ubuntu-24.04/CppCore.Example.UI.control | 15 +++++++++++++++ dist/ubuntu-24.04/CppCore.Example.UI.desktop | 10 ++++++++++ dist/ubuntu-24.04/CppCore.Interface.C.control | 10 ++++++++++ 13 files changed, 115 insertions(+), 6 deletions(-) create mode 100644 dist/ubuntu-24.04/.gitignore create mode 100644 dist/ubuntu-24.04/CppCore.Example.Client.Resources.control create mode 100644 dist/ubuntu-24.04/CppCore.Example.Client.control create mode 100644 dist/ubuntu-24.04/CppCore.Example.Client.desktop create mode 100644 dist/ubuntu-24.04/CppCore.Example.Server.Resources.control create mode 100644 dist/ubuntu-24.04/CppCore.Example.Server.control create mode 100644 dist/ubuntu-24.04/CppCore.Example.Server.desktop create mode 100644 dist/ubuntu-24.04/CppCore.Example.UI.Resources.control create mode 100644 dist/ubuntu-24.04/CppCore.Example.UI.control create mode 100644 dist/ubuntu-24.04/CppCore.Example.UI.desktop create mode 100644 dist/ubuntu-24.04/CppCore.Interface.C.control diff --git a/.github/workflows/build-linux.yml b/.github/workflows/build-linux.yml index 2d897c07..819679de 100644 --- a/.github/workflows/build-linux.yml +++ b/.github/workflows/build-linux.yml @@ -21,7 +21,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-20.04, ubuntu-22.04] + os: [ubuntu-20.04, ubuntu-22.04, ubuntu-24.04] arch: [amd64, i386, arm64, armhf] cpurev: [legacy, default, modern] steps: @@ -39,7 +39,7 @@ jobs: # Cross-Compile Support - name: Cross-Compile Support - uses: cyberjunk/gha-ubuntu-cross@v4 + uses: cyberjunk/gha-ubuntu-cross@v5 if: matrix.arch != 'amd64' with: arch: ${{ matrix.arch }} diff --git a/build/make/CppCore.Test.mk b/build/make/CppCore.Test.mk index 3dde5299..e1429fb7 100644 --- a/build/make/CppCore.Test.mk +++ b/build/make/CppCore.Test.mk @@ -26,6 +26,10 @@ VERSIONMACROMAJOR = CPPCORE_VERSION_MAJOR VERSIONMACROMINOR = CPPCORE_VERSION_MINOR VERSIONMACROPATCH = CPPCORE_VERSION_PATCH +DEC64MB := 67108864 +HEX8MB := 0x00800000 +DEC8MB := 8388608 + ################################################################################################ # CPU Specific @@ -65,7 +69,9 @@ OUTDIST := $(DISTDIR)/$(NAME).app/Contents/MacOS/$(NAME)$(EXTBIN) DEFINES := $(DEFINES) CXXFLAGS := $(CXXFLAGS) -fdeclspec -ObjC++ CFLAGS := $(CFLAGS) -LINKFLAGS := $(LINKFLAGS) -Wl,-object_path_lto,$(OBJDIR)/lto.o +LINKFLAGS := $(LINKFLAGS) \ + -Wl,-object_path_lto,$(OBJDIR)/lto.o \ + -Wl,-stack_size -Wl,$(HEX8MB) LINKLIBS := $(LINKLIBS) -framework AppKit RESO := $(RESO) endif @@ -75,7 +81,7 @@ OUTDIST := $(DISTDIR)/$(NAME)-$(TARGET_ARCH)/usr/bin/$(NAME)$(EXTBIN) DEFINES := $(DEFINES) CXXFLAGS := $(CXXFLAGS) CFLAGS := $(CFLAGS) -LINKFLAGS := $(LINKFLAGS) +LINKFLAGS := $(LINKFLAGS) -Wl,-z,stack-size=$(DEC8MB) LINKLIBS := $(LINKLIBS) -lpthread RESO := $(RESO) endif @@ -105,8 +111,6 @@ OUTDIST := $(DISTDIR)/$(NAME)$(EXTBIN) DEFINES := $(DEFINES) CXXFLAGS := $(CXXFLAGS) CFLAGS := $(CFLAGS) -DEC64MB := 67108864 -HEX8MB := 0x00800000 LINKFLAGS := $(LINKFLAGS) \ -Wl,-z,stack-size=$(HEX8MB) \ -Wl,--initial-heap=$(DEC64MB) \ diff --git a/dist/ubuntu-24.04/.gitignore b/dist/ubuntu-24.04/.gitignore new file mode 100644 index 00000000..ce456278 --- /dev/null +++ b/dist/ubuntu-24.04/.gitignore @@ -0,0 +1,3 @@ +**/ +*.deb +*.whl diff --git a/dist/ubuntu-24.04/CppCore.Example.Client.Resources.control b/dist/ubuntu-24.04/CppCore.Example.Client.Resources.control new file mode 100644 index 00000000..d6a8eb25 --- /dev/null +++ b/dist/ubuntu-24.04/CppCore.Example.Client.Resources.control @@ -0,0 +1,9 @@ +Package: CppCore.Example.Client.Resources +Version: {VERSION}-1 +Section: base +Priority: optional +Architecture: all +Maintainer: Clint Banzhaf +Description: CppCore.Example.Client Resources + Resources of CppCore.Example.Client. + diff --git a/dist/ubuntu-24.04/CppCore.Example.Client.control b/dist/ubuntu-24.04/CppCore.Example.Client.control new file mode 100644 index 00000000..188ca582 --- /dev/null +++ b/dist/ubuntu-24.04/CppCore.Example.Client.control @@ -0,0 +1,10 @@ +Package: CppCore.Example.Client +Version: {VERSION}-1 +Section: base +Priority: optional +Architecture: {ARCH} +Depends: libc6:{ARCH} (>= 2.39) +Maintainer: Clint Banzhaf +Description: CppCore Example Client + Just an example to demonstrate Client code of CppCore. + diff --git a/dist/ubuntu-24.04/CppCore.Example.Client.desktop b/dist/ubuntu-24.04/CppCore.Example.Client.desktop new file mode 100644 index 00000000..17f67245 --- /dev/null +++ b/dist/ubuntu-24.04/CppCore.Example.Client.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Name={DISPLAYNAME} +Comment=Example Client of CppCore +Exec=/usr/bin/CppCore.Example.Client +Icon=/usr/share/pixmaps/CppCore.Example.Client.png +Terminal=true +Type=Application +Categories=Development; +StartupNotify=true +NoDisplay=false diff --git a/dist/ubuntu-24.04/CppCore.Example.Server.Resources.control b/dist/ubuntu-24.04/CppCore.Example.Server.Resources.control new file mode 100644 index 00000000..af8a8aa2 --- /dev/null +++ b/dist/ubuntu-24.04/CppCore.Example.Server.Resources.control @@ -0,0 +1,9 @@ +Package: CppCore.Example.Server.Resources +Version: {VERSION}-1 +Section: base +Priority: optional +Architecture: all +Maintainer: Clint Banzhaf +Description: CppCore.Example.Server Resources + Resources of CppCore.Example.Server. + diff --git a/dist/ubuntu-24.04/CppCore.Example.Server.control b/dist/ubuntu-24.04/CppCore.Example.Server.control new file mode 100644 index 00000000..96c5227b --- /dev/null +++ b/dist/ubuntu-24.04/CppCore.Example.Server.control @@ -0,0 +1,10 @@ +Package: CppCore.Example.Server +Version: {VERSION}-1 +Section: base +Priority: optional +Architecture: {ARCH} +Depends: libc6:{ARCH} (>= 2.39) +Maintainer: Clint Banzhaf +Description: CppCore Example Server + Just an example to demonstrate server code of CppCore. + diff --git a/dist/ubuntu-24.04/CppCore.Example.Server.desktop b/dist/ubuntu-24.04/CppCore.Example.Server.desktop new file mode 100644 index 00000000..04837a17 --- /dev/null +++ b/dist/ubuntu-24.04/CppCore.Example.Server.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Name={DISPLAYNAME} +Comment=Example Server of CppCore +Exec=/usr/bin/CppCore.Example.Server +Icon=/usr/share/pixmaps/CppCore.Example.Server.png +Terminal=true +Type=Application +Categories=Development; +StartupNotify=true +NoDisplay=false diff --git a/dist/ubuntu-24.04/CppCore.Example.UI.Resources.control b/dist/ubuntu-24.04/CppCore.Example.UI.Resources.control new file mode 100644 index 00000000..6d03625e --- /dev/null +++ b/dist/ubuntu-24.04/CppCore.Example.UI.Resources.control @@ -0,0 +1,9 @@ +Package: CppCore.Example.UI.Resources +Version: {VERSION}-1 +Section: base +Priority: optional +Architecture: all +Maintainer: Clint Banzhaf +Description: CppCore.Example.UI Resources + Resources of CppCore.Example.UI. + diff --git a/dist/ubuntu-24.04/CppCore.Example.UI.control b/dist/ubuntu-24.04/CppCore.Example.UI.control new file mode 100644 index 00000000..4271ac85 --- /dev/null +++ b/dist/ubuntu-24.04/CppCore.Example.UI.control @@ -0,0 +1,15 @@ +Package: CppCore.Example.UI +Version: {VERSION}-1 +Section: base +Priority: optional +Architecture: {ARCH} +Depends: libc6:{ARCH} (>= 2.39), + libbsd0:{ARCH} (>= 0.12.1), + libxau6:{ARCH} (>= 1.0.9), + libxcb1:{ARCH} (>= 1.15), + libxdmcp6:{ARCH} (>= 1.1.3), + libx11-6:{ARCH} (>= 1.8.7) +Maintainer: Clint Banzhaf +Description: CppCore Example UI + Just an example to demonstrate UI code of CppCore. + diff --git a/dist/ubuntu-24.04/CppCore.Example.UI.desktop b/dist/ubuntu-24.04/CppCore.Example.UI.desktop new file mode 100644 index 00000000..10e456d6 --- /dev/null +++ b/dist/ubuntu-24.04/CppCore.Example.UI.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Name={DISPLAYNAME} +Comment=Example UI of CppCore +Exec=/usr/bin/CppCore.Example.UI +Icon=/usr/share/pixmaps/CppCore.Example.UI.png +Terminal=true +Type=Application +Categories=Development; +StartupNotify=true +NoDisplay=false diff --git a/dist/ubuntu-24.04/CppCore.Interface.C.control b/dist/ubuntu-24.04/CppCore.Interface.C.control new file mode 100644 index 00000000..f3412efe --- /dev/null +++ b/dist/ubuntu-24.04/CppCore.Interface.C.control @@ -0,0 +1,10 @@ +Package: CppCore.Interface.C +Version: {VERSION}-1 +Section: base +Priority: optional +Architecture: {ARCH} +Depends: libc6:{ARCH} (>= 2.39) +Maintainer: Clint Banzhaf +Description: CppCore Interface for C + Provides access to CppCore from C +