fix: build KF6 KNewStuff widgets

This commit is contained in:
2026-05-07 09:10:59 +01:00
parent 4716dd6ce4
commit 10cf8b4e73
3 changed files with 11 additions and 9 deletions
+8 -6
View File
@@ -1,6 +1,12 @@
#TODO: KNewStuff — core-only build on Redox. Qt Quick, widgets, tools, and Kirigami-facing surfaces disabled. KF6Attica now available in-tree (kf6-attica recipe). #TODO: KNewStuff — core-only build on Redox. Qt Quick, widgets, tools, and Kirigami-facing surfaces disabled. KF6Attica now available in-tree (kf6-attica recipe).
[source]
tar = "https://invent.kde.org/frameworks/knewstuff/-/archive/v6.10.0/knewstuff-v6.10.0.tar.gz"
[build]
template = "custom"
dependencies = [ dependencies = [
"qtbase", "qtbase",
"qtdeclarative",
"kf6-extra-cmake-modules", "kf6-extra-cmake-modules",
"kf6-kcoreaddons", "kf6-kcoreaddons",
"kf6-ki18n", "kf6-ki18n",
@@ -20,22 +26,18 @@ redbear_qt_link_sysroot_dirs "${COOKBOOK_SYSROOT}" plugins mkspecs metatypes mod
sed -i 's/^include(ECMQmlModule)/# include(ECMQmlModule) # disabled for Redox core-only build/' \ sed -i 's/^include(ECMQmlModule)/# include(ECMQmlModule) # disabled for Redox core-only build/' \
"${COOKBOOK_SOURCE}/CMakeLists.txt" 2>/dev/null || true "${COOKBOOK_SOURCE}/CMakeLists.txt" 2>/dev/null || true
sed -i 's/COMPONENTS Gui Widgets Xml Qml Quick QuickWidgets/COMPONENTS Gui Xml/' \
"${COOKBOOK_SOURCE}/CMakeLists.txt" 2>/dev/null || true
sed -i 's/^find_package(KF6Kirigami2.*/# find_package(KF6Kirigami2 disabled for Redox core-only build)/' \ sed -i 's/^find_package(KF6Kirigami2.*/# find_package(KF6Kirigami2 disabled for Redox core-only build)/' \
"${COOKBOOK_SOURCE}/CMakeLists.txt" 2>/dev/null || true "${COOKBOOK_SOURCE}/CMakeLists.txt" 2>/dev/null || true
sed -i 's/^# find_package(KF6Attica disabled - KF6Attica not yet available)/find_package(KF6Attica ${KF_DEP_VERSION} REQUIRED)/' \
"${COOKBOOK_SOURCE}/CMakeLists.txt" 2>/dev/null || true
sed -i 's/^ki18n_install(po)/#ki18n_install(po)/' \ sed -i 's/^ki18n_install(po)/#ki18n_install(po)/' \
"${COOKBOOK_SOURCE}/CMakeLists.txt" 2>/dev/null || true "${COOKBOOK_SOURCE}/CMakeLists.txt" 2>/dev/null || true
sed -i 's/^add_subdirectory(qtquick)/# add_subdirectory(qtquick) # disabled for Redox core-only build/' \ sed -i 's/^add_subdirectory(qtquick)/# add_subdirectory(qtquick) # disabled for Redox core-only build/' \
"${COOKBOOK_SOURCE}/src/CMakeLists.txt" 2>/dev/null || true "${COOKBOOK_SOURCE}/src/CMakeLists.txt" 2>/dev/null || true
sed -i 's/^add_subdirectory(tools)/# add_subdirectory(tools) # disabled for Redox core-only build/' \ sed -i 's/^add_subdirectory(tools)/# add_subdirectory(tools) # disabled for Redox core-only build/' \
"${COOKBOOK_SOURCE}/src/CMakeLists.txt" 2>/dev/null || true "${COOKBOOK_SOURCE}/src/CMakeLists.txt" 2>/dev/null || true
sed -i 's/^add_subdirectory(widgets)/# add_subdirectory(widgets) # disabled for Redox core-only build/' \
"${COOKBOOK_SOURCE}/src/CMakeLists.txt" 2>/dev/null || true
sed -i 's/^add_subdirectory(tools)/# add_subdirectory(tools) # disabled for Redox core-only build/' \ sed -i 's/^add_subdirectory(tools)/# add_subdirectory(tools) # disabled for Redox core-only build/' \
"${COOKBOOK_SOURCE}/src/CMakeLists.txt" 2>/dev/null || true "${COOKBOOK_SOURCE}/src/CMakeLists.txt" 2>/dev/null || true
sed -i 's/^add_subdirectory(widgets)/# add_subdirectory(widgets) # disabled for Redox core-only build/' \
"${COOKBOOK_SOURCE}/src/CMakeLists.txt" 2>/dev/null || true
rm -f CMakeCache.txt rm -f CMakeCache.txt
rm -rf CMakeFiles rm -rf CMakeFiles
@@ -23,7 +23,7 @@ include(ECMQtDeclareLoggingCategory)
include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE) include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE)
set(REQUIRED_QT_VERSION 6.6.0) set(REQUIRED_QT_VERSION 6.6.0)
find_package(Qt6 ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED COMPONENTS Gui Xml) find_package(Qt6 ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED COMPONENTS Gui Widgets Xml Qml Quick QuickWidgets)
find_package(KF6Archive ${KF_DEP_VERSION} REQUIRED) find_package(KF6Archive ${KF_DEP_VERSION} REQUIRED)
find_package(KF6Config ${KF_DEP_VERSION} REQUIRED) find_package(KF6Config ${KF_DEP_VERSION} REQUIRED)
find_package(KF6CoreAddons ${KF_DEP_VERSION} REQUIRED) find_package(KF6CoreAddons ${KF_DEP_VERSION} REQUIRED)
@@ -40,7 +40,7 @@ include(KDEClangFormat)
include(KDEGitCommitHooks) include(KDEGitCommitHooks)
include(CMakeDependentOption) include(CMakeDependentOption)
# find_package(KF6Attica disabled - KF6Attica not yet available) find_package(KF6Attica ${KF_DEP_VERSION} REQUIRED)
set_package_properties(KF6Attica PROPERTIES DESCRIPTION "A Qt library that implements the Open Collaboration Services API" set_package_properties(KF6Attica PROPERTIES DESCRIPTION "A Qt library that implements the Open Collaboration Services API"
PURPOSE "Support for Get Hot New Stuff in KNewStuff" PURPOSE "Support for Get Hot New Stuff in KNewStuff"
URL "https://commits.kde.org/attica" URL "https://commits.kde.org/attica"
@@ -6,7 +6,7 @@ add_subdirectory(core)
# add_subdirectory(qtquick) # disabled for Redox core-only build # add_subdirectory(qtquick) # disabled for Redox core-only build
# add_subdirectory(tools) # disabled for Redox core-only build # add_subdirectory(tools) # disabled for Redox core-only build
# add_subdirectory(widgets) # disabled for Redox core-only build add_subdirectory(widgets)
ecm_qt_install_logging_categories( ecm_qt_install_logging_categories(
EXPORT KNEWSTUFF EXPORT KNEWSTUFF
FILE knewstuff.categories FILE knewstuff.categories