Warning, /graphics/digikam/project/bundles/3rdparty/ext_kf6/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # Script to build KF5 Frameworks. 0002 # 0003 # Copyright (c) 2015-2024 by Gilles Caulier <caulier dot gilles at gmail dot com> 0004 # 0005 # Redistribution and use is allowed according to the terms of the BSD license. 0006 # For details see the accompanying COPYING-CMAKE-SCRIPTS file. 0007 # 0008 0009 set(EXTPREFIX_frameworks "${EXTPREFIX}") 0010 0011 function(InstallKF6Component 0012 name 0013 version 0014 argoptions 0015 patch) 0016 0017 if(${name} STREQUAL "libksane") 0018 set(giturl "https://invent.kde.org/graphics/${name}.git") 0019 elseif(${name} STREQUAL "ksanecore") 0020 set(giturl "https://invent.kde.org/libraries/${name}.git") 0021 elseif(${name} STREQUAL "qca") 0022 set(giturl "https://invent.kde.org/libraries/${name}.git") 0023 elseif(${name} STREQUAL "phonon") 0024 set(giturl "https://invent.kde.org/libraries/${name}.git") 0025 elseif(${name} STREQUAL "plasma-wayland-protocols") 0026 set(giturl "https://invent.kde.org/libraries/${name}.git") 0027 elseif(${name} STREQUAL "breeze") 0028 set(giturl "https://invent.kde.org/plasma/${name}.git") 0029 else() 0030 set(giturl "https://invent.kde.org/frameworks/${name}.git") 0031 endif() 0032 0033 message(STATUS "--------------------------------") 0034 message(STATUS "KDE component : ${name}") 0035 message(STATUS "Component version: ${version}") 0036 message(STATUS "Component Git Url: ${giturl}") 0037 message(STATUS "Configure options: ${argoptions}") 0038 message(STATUS "Patch to apply : ${patch}") 0039 0040 if(NOT "${patch}" STREQUAL "") 0041 set(patch "${PATCH_COMMAND};-p1;-i;${CMAKE_CURRENT_SOURCE_DIR}/${patch}") 0042 endif() 0043 0044 ExternalProject_Add(ext_${name} 0045 DOWNLOAD_DIR ${EXTERNALS_DOWNLOAD_DIR} 0046 GIT_REPOSITORY ${giturl} 0047 GIT_TAG ${version} 0048 0049 PATCH_COMMAND ${patch} 0050 0051 INSTALL_DIR ${EXTPREFIX_frameworks} 0052 CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${EXTPREFIX_frameworks} 0053 -DCMAKE_BUILD_TYPE=${GLOBAL_BUILD_TYPE} 0054 ${GLOBAL_PROFILE} 0055 -DCMAKE_SYSTEM_PREFIX_PATH=${EXTPREFIX} 0056 -DBUILD_TESTING=OFF 0057 "${argoptions}" 0058 -Wno-dev 0059 UPDATE_COMMAND "" 0060 ALWAYS 0 0061 ) 0062 0063 endfunction() 0064 0065 if(MSVC) 0066 set(BreezeIconsOptions -DBINARY_ICONS_RESOURCE=OFF -DSKIP_INSTALL_ICONS=OFF -DWITH_ICON_GENERATION=OFF) 0067 set(Ki18nIsoCodesPatch ki18n-disable-isocodes.patch) 0068 else() 0069 set(BreezeIconsOptions -DBINARY_ICONS_RESOURCE=ON) 0070 endif() 0071 0072 if(NOT APPLE AND NOT MINGW AND NOT WIN32) 0073 set(AppImageServicePatch kservice-sycoca.patch) 0074 endif() 0075 0076 set(MarbleQtOnlyOptions -DWITH_DESIGNER_PLUGIN=OFF -DBUILD_MARBLE_TESTS=OFF -DBUILD_MARBLE_TOOLS=OFF -DBUILD_MARBLE_EXAMPLES=OFF -DBUILD_MARBLE_APPS=OFF -DBUILD_WITH_DBUS=OFF -DQTONLY=ON -DBUILD_TESTING=OFF) 0077 set(BreezeOptions -DBUILD_QT6=ON -DBUILD_QT5=OFF -DWITH_DECORATIONS=OFF -DWITH_WALLPAPERS=OFF) 0078 0079 set(Qt6CommonOptions -DQT_MAJOR_VERSION=6 -DBUILD_WITH_QT6=ON) 0080 0081 InstallKF6Component(extra-cmake-modules ${KDE_VERSION} "${Qt6CommonOptions}" "") 0082 InstallKF6Component(plasma-wayland-protocols ${KDE_VERSION} "${Qt6CommonOptions}" "wayland-proto-ecm-version.patch") 0083 InstallKF6Component(kconfig ${KDE_VERSION} "${Qt6CommonOptions};-DKCONFIG_USE_QML=OFF" "") 0084 InstallKF6Component(breeze-icons ${KDE_VERSION} "${Qt6CommonOptions};${BreezeIconsOptions}" "breeze-icons-dropsvg-rccprefix.patch") 0085 InstallKF6Component(solid ${KDE_VERSION} "${Qt6CommonOptions}" "") 0086 InstallKF6Component(kcoreaddons ${KDE_VERSION} "${Qt6CommonOptions};-DKCOREADDONS_USE_QML=OFF" "") 0087 InstallKF6Component(threadweaver ${KDE_VERSION} "${Qt6CommonOptions}" "") 0088 InstallKF6Component(kwindowsystem ${KDE_VERSION} "${Qt6CommonOptions}" "") 0089 InstallKF6Component(karchive ${KDE_VERSION} "${Qt6CommonOptions};-DWITH_LIBZSTD=OFF" "") 0090 InstallKF6Component(kdbusaddons ${KDE_VERSION} "${Qt6CommonOptions}" "") 0091 InstallKF6Component(ki18n ${KDE_VERSION} "${Qt6CommonOptions}" "${Ki18nIsoCodesPatch}") 0092 InstallKF6Component(kcrash ${KDE_VERSION} "${Qt6CommonOptions}" "") 0093 InstallKF6Component(kcodecs ${KDE_VERSION} "${Qt6CommonOptions}" "") 0094 InstallKF6Component(kauth ${KDE_VERSION} "${Qt6CommonOptions}" "") 0095 InstallKF6Component(kguiaddons ${KDE_VERSION} "${Qt6CommonOptions}" "") 0096 InstallKF6Component(kwidgetsaddons ${KDE_VERSION} "${Qt6CommonOptions}" "") 0097 InstallKF6Component(kitemviews ${KDE_VERSION} "${Qt6CommonOptions}" "") 0098 InstallKF6Component(kcompletion ${KDE_VERSION} "${Qt6CommonOptions}" "") 0099 InstallKF6Component(kcolorscheme ${KDE_VERSION} "${Qt6CommonOptions}" "") 0100 InstallKF6Component(kconfigwidgets ${KDE_VERSION} "${Qt6CommonOptions}" "") 0101 InstallKF6Component(kiconthemes ${KDE_VERSION} "${Qt6CommonOptions};-DKICONTHEMES_USE_QTQUICK=OFF" "") 0102 InstallKF6Component(kservice ${KDE_VERSION} "${Qt6CommonOptions}" "${AppImageServicePatch}") 0103 InstallKF6Component(kglobalaccel ${KDE_VERSION} "${Qt6CommonOptions}" "") 0104 InstallKF6Component(kcalendarcore ${KDE_VERSION} "${Qt6CommonOptions}" "") 0105 InstallKF6Component(kxmlgui ${KDE_VERSION} "${Qt6CommonOptions}" "") 0106 InstallKF6Component(kbookmarks ${KDE_VERSION} "${Qt6CommonOptions}" "") 0107 InstallKF6Component(kimageformats ${KDE_VERSION} "${Qt6CommonOptions}" "") 0108 InstallKF6Component(knotifyconfig ${KDE_VERSION} "${Qt6CommonOptions}" "knotifyconfig-disable-phonon.patch") 0109 InstallKF6Component(knotifications ${KDE_VERSION} "${Qt6CommonOptions}" "") 0110 InstallKF6Component(kjobwidgets ${KDE_VERSION} "${Qt6CommonOptions}" "") 0111 InstallKF6Component(sonnet ${KDE_VERSION} "${Qt6CommonOptions};-DSONNET_USE_QML=OFF" "sonnet-hunspell-version.patch") 0112 InstallKF6Component(ktextwidgets ${KDE_VERSION} "${Qt6CommonOptions}" "") 0113 InstallKF6Component(kio ${KDE_VERSION} "${Qt6CommonOptions}" "kio-drop-deps.patch") 0114 InstallKF6Component(kinit ${KDE_VERSION} "${Qt6CommonOptions}" "") 0115 InstallKF6Component(kdoctools ${KDE_VERSION} "${Qt6CommonOptions}" "") 0116 InstallKF6Component(phonon ${KDE_VERSION} "${Qt6CommonOptions};-DPHONON_BUILD_QT5=OFF" "") 0117 InstallKF6Component(ksanecore ${KDE_VERSION} "${Qt6CommonOptions};-DQT_MAJOR_VERSION=6" "") 0118 InstallKF6Component(libksane ${KDE_VERSION} "${Qt6CommonOptions};-DQT_MAJOR_VERSION=6" "") 0119 InstallKF6Component(kfilemetadata ${KDE_VERSION} "${Qt6CommonOptions}" "") 0120 InstallKF6Component(qca ${KDE_VERSION} "${Qt6CommonOptions}" "") 0121 InstallKF6Component(kwallet ${KDE_VERSION} "${Qt6CommonOptions}" "") 0122 InstallKF6Component(kpackage ${KDE_VERSION} "${Qt6CommonOptions}" "") 0123 InstallKF6Component(attica ${KDE_VERSION} "${Qt6CommonOptions}" "") 0124 InstallKF6Component(knewstuff ${KDE_VERSION} "${Qt6CommonOptions}" "") 0125 InstallKF6Component(kitemmodels ${KDE_VERSION} "${Qt6CommonOptions}" "kitemmodels-drop-qml.patch") 0126 InstallKF6Component(kparts ${KDE_VERSION} "${Qt6CommonOptions}" "") 0127 InstallKF6Component(krunner ${KDE_VERSION} "${Qt6CommonOptions}" "") 0128 InstallKF6Component(breeze ${KDE_VERSION} "${Qt6CommonOptions};${BreezeOptions}" "breeze-common-rules.patch")