diff --git a/app-text/uchmviewer/files/uchmviewer-8.4-cmake-minreqver-3.16.patch b/app-text/uchmviewer/files/uchmviewer-8.4-cmake-minreqver-3.16.patch new file mode 100644 index 000000000000..338dc25728d0 --- /dev/null +++ b/app-text/uchmviewer/files/uchmviewer-8.4-cmake-minreqver-3.16.patch @@ -0,0 +1,297 @@ +Source: https://github.com/eBookProjects/uChmViewer/pull/58 + +From d3fecffbc959df7b8b7fa029c3575376c8f9e263 Mon Sep 17 00:00:00 2001 +From: Andreas Sturmlechner +Date: Thu, 23 Oct 2025 11:34:07 +0200 +Subject: [PATCH 1/2] Raise CMake minimum version to 3.16 + +CMake 3.31 warns about compat. for <3.10 being removed in the future. Qt6 +CMake modules already require 3.16 though, so it is a good base line. + +CMake 3.16 was released in 2019. + +Signed-off-by: Andreas Sturmlechner +--- + CMakeLists.txt | 2 +- + cmake/Findlibzip.cmake | 2 +- + cmake/get-version.cmake | 3 +-- + cmake/qt-aliases.cmake | 2 +- + cmake/use-in.cmake | 2 +- + lib/CMakeLists.txt | 2 +- + lib/libebook/CMakeLists.txt | 2 +- + packages/CMakeLists.txt | 2 +- + po/CMakeLists.txt | 2 +- + src/CMakeLists.txt | 2 +- + 10 files changed, 10 insertions(+), 11 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index dbc9f89..ca4e68f 100755 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -19,7 +19,7 @@ + # The default is ON. + ################################################ + +-cmake_minimum_required(VERSION 3.13) ++cmake_minimum_required(VERSION 3.16) + + # Project info + project(uchmviewer HOMEPAGE_URL "https://github.com/u-235/uchmviewer") +diff --git a/cmake/Findlibzip.cmake b/cmake/Findlibzip.cmake +index 580e77a..cba1ed3 100644 +--- a/cmake/Findlibzip.cmake ++++ b/cmake/Findlibzip.cmake +@@ -1,6 +1,6 @@ + # Tries to find libzip + +-cmake_minimum_required(VERSION 3.5) ++cmake_minimum_required(VERSION 3.16) + + find_path(libzip_INCLUDE_DIR NAMES zip.h + PATHS ${libzip_ROOT} +diff --git a/cmake/get-version.cmake b/cmake/get-version.cmake +index ba9e40e..675ce89 100644 +--- a/cmake/get-version.cmake ++++ b/cmake/get-version.cmake +@@ -1,8 +1,7 @@ + # Getting the application version from the version.h file. + # The result is saved in the APP_VERSION cache variables. +-# CMAKE_MATCH_n request CMake 3.9 + +-cmake_minimum_required(VERSION 3.9) ++cmake_minimum_required(VERSION 3.16) + + set (f_ver "src/version.h") + +diff --git a/cmake/qt-aliases.cmake b/cmake/qt-aliases.cmake +index 0e4e0c1..1e7aae1 100644 +--- a/cmake/qt-aliases.cmake ++++ b/cmake/qt-aliases.cmake +@@ -31,7 +31,7 @@ + # + ################################################################################ + +-cmake_minimum_required(VERSION 3.13) ++cmake_minimum_required(VERSION 3.16) + + ############################ + # Core macros # +diff --git a/cmake/use-in.cmake b/cmake/use-in.cmake +index 3691e99..1341bc2 100644 +--- a/cmake/use-in.cmake ++++ b/cmake/use-in.cmake +@@ -3,7 +3,7 @@ + # Copyright (c) 2022 Nick Egorrov + ######################################## + +-cmake_minimum_required(VERSION 3.5) ++cmake_minimum_required(VERSION 3.16) + + #[==============================[ + Attempts to set the cache variable to ON when building for a specific OS. +diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt +index ce560d0..7cbc530 100644 +--- a/lib/CMakeLists.txt ++++ b/lib/CMakeLists.txt +@@ -1,5 +1,5 @@ + +-cmake_minimum_required(VERSION 3.5) ++cmake_minimum_required(VERSION 3.16) + + if (${USE_STATIC_CHMLIB}) + set(CHMLIB_SRC_DIR ${CMAKE_CURRENT_LIST_DIR}/CHMLib/src) +diff --git a/lib/libebook/CMakeLists.txt b/lib/libebook/CMakeLists.txt +index bdc132e..3b7a48b 100644 +--- a/lib/libebook/CMakeLists.txt ++++ b/lib/libebook/CMakeLists.txt +@@ -1,5 +1,5 @@ + +-cmake_minimum_required(VERSION 3.5) ++cmake_minimum_required(VERSION 3.16) + + # Project files + set(CPP_SOURCES +diff --git a/packages/CMakeLists.txt b/packages/CMakeLists.txt +index 53e71bd..5e9d5de 100644 +--- a/packages/CMakeLists.txt ++++ b/packages/CMakeLists.txt +@@ -1,5 +1,5 @@ + +-cmake_minimum_required(VERSION 3.5) ++cmake_minimum_required(VERSION 3.16) + + if (${CMAKE_SYSTEM_NAME} MATCHES "Linux") + install(FILES freedesktop/uchmviewer.desktop DESTINATION ${APP_DEF_INSTALL_DIR}) +diff --git a/po/CMakeLists.txt b/po/CMakeLists.txt +index 32f4b4a..7af790c 100644 +--- a/po/CMakeLists.txt ++++ b/po/CMakeLists.txt +@@ -1,6 +1,6 @@ + # Create and install translation files. + +-cmake_minimum_required(VERSION 3.5) ++cmake_minimum_required(VERSION 3.16) + + set(CATALOG_NAME uchmviewer) + # The languages.txt file contains a list of locales. +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 9e1c7e5..49c7bfc 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -1,5 +1,5 @@ + +-cmake_minimum_required(VERSION 3.5) ++cmake_minimum_required(VERSION 3.16) + # Need to include generated files. + set(CMAKE_INCLUDE_CURRENT_DIR ON) + +-- +2.51.1 + + +From 97fab8d74068936adeaf79bc31839e8a2c0666e7 Mon Sep 17 00:00:00 2001 +From: Andreas Sturmlechner +Date: Thu, 23 Oct 2025 11:56:57 +0200 +Subject: [PATCH 2/2] Do not expand variables beforehand + +See also: +https://invent.kde.org/plasma/libplasma/-/merge_requests/267 +https://cmake.org/cmake/help/latest/command/if.html#variable-expansion +https://cmake.org/cmake/help/latest/policy/CMP0054.html#policy:CMP0054 + +Signed-off-by: Andreas Sturmlechner +--- + CMakeLists.txt | 10 +++++----- + lib/CMakeLists.txt | 4 ++-- + packages/CMakeLists.txt | 4 ++-- + po/CMakeLists.txt | 2 +- + src/CMakeLists.txt | 6 +++--- + 5 files changed, 13 insertions(+), 13 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index ca4e68f..b6bc021 100755 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -49,7 +49,7 @@ find_package(libzip REQUIRED) + set(APP_QT_MIN_VERSION 5.0) + set(APP_QT_MODULES Core Network PrintSupport Widgets Xml) + # Modules for WebKit or WebEngine. +-if (${USE_WEBENGINE}) ++if (USE_WEBENGINE) + set(APP_QT_MIN_VERSION 5.9) + list(APPEND APP_QT_MODULES WebEngineWidgets) + target_link_libraries(extra INTERFACE Qt::WebEngineWidgets) +@@ -73,25 +73,25 @@ endif () + + set(QT Qt${QT_VERSION_MAJOR}) + # Since Qt 6 QTextCodec moved in the Qt 5 Core Compat module. +-if (${QT_VERSION_MAJOR} GREATER_EQUAL 6) ++if (QT_VERSION_MAJOR GREATER_EQUAL 6) + list(APPEND APP_QT_MODULES Core5Compat) + target_link_libraries(extra INTERFACE ${QT}::Core5Compat) + endif () + +-if (${USE_DBUS}) ++if (USE_DBUS) + list(APPEND APP_QT_MODULES DBus) + target_link_libraries(extra INTERFACE Qt::DBus) + target_compile_definitions(extra INTERFACE USE_DBUS) + endif () + +-if (${USE_MAC_APP}) ++if (USE_MAC_APP) + target_compile_definitions(extra INTERFACE USE_MAC_APP) + endif () + + # Now we know all the required Qt modules. + find_package(${QT} REQUIRED ${APP_QT_MODULES}) + +-if (${USE_KF5}) ++if (USE_KF5) + # Needed by find_package(KF5) below. + find_package(ECM REQUIRED) + list(APPEND CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) +diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt +index 7cbc530..5a12a5d 100644 +--- a/lib/CMakeLists.txt ++++ b/lib/CMakeLists.txt +@@ -1,10 +1,10 @@ + + cmake_minimum_required(VERSION 3.16) + +-if (${USE_STATIC_CHMLIB}) ++if (USE_STATIC_CHMLIB) + set(CHMLIB_SRC_DIR ${CMAKE_CURRENT_LIST_DIR}/CHMLib/src) + +- if (EXISTS ${CHMLIB_SRC_DIR}/chm_lib.h) ++ if (EXISTS CHMLIB_SRC_DIR/chm_lib.h) + add_library(chmlib STATIC + ${CHMLIB_SRC_DIR}/chm_lib.c + ${CHMLIB_SRC_DIR}/chm_lib.h +diff --git a/packages/CMakeLists.txt b/packages/CMakeLists.txt +index 5e9d5de..46a5aea 100644 +--- a/packages/CMakeLists.txt ++++ b/packages/CMakeLists.txt +@@ -1,7 +1,7 @@ + + cmake_minimum_required(VERSION 3.16) + +-if (${CMAKE_SYSTEM_NAME} MATCHES "Linux") ++if (CMAKE_SYSTEM_NAME MATCHES "Linux") + install(FILES freedesktop/uchmviewer.desktop DESTINATION ${APP_DEF_INSTALL_DIR}) + install(DIRECTORY freedesktop/icons/ DESTINATION ${APP_ICONS_INSTALL_DIR}) + elseif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin" AND USE_MACOS_BUNDLE) +@@ -26,7 +26,7 @@ if (USE_DEPLOY_RUNTIME) + install(FILES $ DESTINATION ${APP_BIN_INSTALL_DIR}) + endif () + +- if (${CMAKE_SYSTEM_NAME} MATCHES "Windows") ++ if (CMAKE_SYSTEM_NAME MATCHES "Windows") + # Copying runtime dependencies for Windows deployment + # See https://doc.qt.io/qt-5/windows-deployment.html + set(QT_DEPLOY_DIR ${CMAKE_CURRENT_BINARY_DIR}/qt-deploy) +diff --git a/po/CMakeLists.txt b/po/CMakeLists.txt +index 7af790c..57e6b82 100644 +--- a/po/CMakeLists.txt ++++ b/po/CMakeLists.txt +@@ -38,7 +38,7 @@ endif () + if (USE_GETTEXT) + foreach (LANG ${LANGUAGES}) + set(CATALOG ${CMAKE_CURRENT_SOURCE_DIR}/${CATALOG_NAME}_${LANG}.po) +- if(EXISTS ${CATALOG}) ++ if(EXISTS "${CATALOG}") + file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${LANG}/LC_MESSAGES) + set(GMO_FILE ${CMAKE_CURRENT_BINARY_DIR}/${LANG}/LC_MESSAGES/${CATALOG_NAME}.mo) + list(APPEND GMO_LIST ${GMO_FILE}) +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 49c7bfc..f0128b4 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -76,7 +76,7 @@ set(UIS + window_browser.ui + ) + +-if (${USE_WEBENGINE}) ++if (USE_WEBENGINE) + list(APPEND CPP_SOURCES + qtwebengine/viewwindow.cpp + qtwebengine/viewwindow.h +@@ -94,13 +94,13 @@ else () + list(APPEND MOC_HEADERS qtwebkit/viewwindow.h) + endif () + +-if (${USE_DBUS}) ++if (USE_DBUS) + list(APPEND CPP_SOURCES dbus_interface.cpp dbus_interface.h) + list(APPEND MOC_HEADERS dbus_interface.h) + endif () + + # Mac OS specific +-if (${USE_MAC_APP}) ++if (USE_MAC_APP) + list(APPEND CPP_SOURCES uchmviewerapp.cpp uchmviewerapp.h) + list(APPEND MOC_HEADERS uchmviewerapp.h) + endif () +-- +2.51.1 + diff --git a/app-text/uchmviewer/uchmviewer-8.4.ebuild b/app-text/uchmviewer/uchmviewer-8.4.ebuild index c991da3833ea..45cf71807be0 100644 --- a/app-text/uchmviewer/uchmviewer-8.4.ebuild +++ b/app-text/uchmviewer/uchmviewer-8.4.ebuild @@ -25,6 +25,10 @@ DEPEND=" " RDEPEND="${DEPEND}" +PATCHES=( + "${FILESDIR}/${P}-cmake-minreqver-3.16.patch" # bug #964965, pending PR +) + DOCS=( AUTHORS.md ChangeLog DBUS-bindings README.md ) src_configure() {