From e528bd26bcd65297f74fd8f2dcfaa45e12bcab20 Mon Sep 17 00:00:00 2001 From: Stefan Becker Date: Fri, 30 Jan 2026 19:33:48 +0200 Subject: [PATCH 1/2] build: use unique job ID Flatpak workflow This fixes commit 1a5dfb093f875ad19f05004f15d62289707140c0 Now act job ID filter works as expected. --- .github/workflows/build-flatpak.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-flatpak.yml b/.github/workflows/build-flatpak.yml index a5c013a..45c9a4f 100644 --- a/.github/workflows/build-flatpak.yml +++ b/.github/workflows/build-flatpak.yml @@ -5,7 +5,7 @@ on: workflow_call: jobs: - build-linux: + build-flatpak: name: Build Flatpak runs-on: ubuntu-latest From 5e66737e50db9f8f32b531e9e80df514be353735 Mon Sep 17 00:00:00 2001 From: Stefan Becker Date: Fri, 30 Jan 2026 19:38:00 +0200 Subject: [PATCH 2/2] build: enforce highest available C/C++ standard Hopefully this will flag C++23/C++26 & C23 problems in the code early enough before they cause downstream FTBFS bugs. --- CMakeLists.txt | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7fe40b1..eb02e69 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,9 +2,31 @@ cmake_minimum_required(VERSION 3.18) set(TARGET qMasterPassword) project(${TARGET} LANGUAGES C CXX) +# enforce the highest available C++ standard +if("cxx_std_26" IN_LIST CMAKE_CXX_COMPILE_FEATURES) + message(STATUS "Using C++26 standard") + set(CMAKE_CXX_STANDARD 26) +elseif("cxx_std_23" IN_LIST CMAKE_CXX_COMPILE_FEATURES) + message(STATUS "Using C++23 standard") + set(CMAKE_CXX_STANDARD 23) +else() + # fall back to C++20 if the compiler supports it + message(STATUS "Using C++20 standard") + set(CMAKE_CXX_STANDARD 20) +endif() + +# enforce the highest available C standard +if("c_std_23" IN_LIST CMAKE_C_COMPILE_FEATURES) + message(STATUS "Using C23 standard") + set(CMAKE_C_STANDARD 23) +else() + # fall back to C17 if the compiler supports it + message(STATUS "Using C17 standard") + set(CMAKE_C_STANDARD 17) +endif() + set(CMAKE_AUTOUIC_SEARCH_PATHS ui) set(CMAKE_AUTORCC ON) -set(CMAKE_CXX_STANDARD 20) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_SKIP_RPATH ON)