Warning, /games/ktuberling/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 cmake_minimum_required (VERSION 3.16 FATAL_ERROR)
0002
0003 # KDE Application Version, managed by release script
0004 set(RELEASE_SERVICE_VERSION_MAJOR "24")
0005 set(RELEASE_SERVICE_VERSION_MINOR "04")
0006 set(RELEASE_SERVICE_VERSION_MICRO "70")
0007 set(RELEASE_SERVICE_VERSION "${RELEASE_SERVICE_VERSION_MAJOR}.${RELEASE_SERVICE_VERSION_MINOR}.${RELEASE_SERVICE_VERSION_MICRO}")
0008
0009 project(ktuberling VERSION ${RELEASE_SERVICE_VERSION})
0010
0011 set(QT_MIN_VERSION "6.5.0")
0012 set(KF_MIN_VERSION "5.240.0")
0013
0014 find_package(ECM ${KF_MIN_VERSION} REQUIRED CONFIG)
0015 set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH} )
0016
0017 include(KDEInstallDirs)
0018 include(KDECMakeSettings)
0019 include(KDECompilerSettings NO_POLICY_SCOPE)
0020
0021 include(FeatureSummary)
0022 include(ECMAddAppIcon)
0023 include(ECMInstallIcons)
0024 include(ECMSetupVersion)
0025 include(ECMQtDeclareLoggingCategory)
0026 include(ECMDeprecationSettings)
0027
0028 find_package(Qt6 ${QT_MIN_VERSION} REQUIRED COMPONENTS
0029 Multimedia
0030 PrintSupport
0031 Svg
0032 SvgWidgets
0033 Widgets
0034 Xml
0035 )
0036
0037 find_package(KF6 ${KF_MIN_VERSION} REQUIRED COMPONENTS
0038 Config
0039 I18n
0040 )
0041
0042 if(NOT ANDROID)
0043 find_package(KF6 ${KF_MIN_VERSION} REQUIRED COMPONENTS
0044 Completion
0045 ConfigWidgets
0046 CoreAddons
0047 Crash
0048 DBusAddons
0049 KIO
0050 DocTools
0051 WidgetsAddons
0052 XmlGui
0053 )
0054
0055 find_package(KDEGames6 6.0.0 REQUIRED)
0056 endif()
0057
0058 ecm_setup_version(${RELEASE_SERVICE_VERSION} VARIABLE_PREFIX KTUBERLING VERSION_HEADER ktuberling_version.h)
0059
0060 ecm_set_disabled_deprecation_versions(
0061 QT 6.5
0062 KF 5.239
0063 )
0064 if (NOT ANDROID)
0065 ecm_set_disabled_deprecation_versions(
0066 KDEGAMES 6.0
0067 )
0068 endif()
0069
0070 if(KF6DocTools_FOUND)
0071 add_subdirectory(doc)
0072 endif()
0073
0074 ########### next target ###############
0075
0076 set(ktuberling_common_SRCS
0077 action.cpp
0078 playground.cpp
0079 todraw.cpp
0080 soundfactory.cpp
0081 filefactory.cpp
0082 )
0083 ecm_qt_declare_logging_category(ktuberling_common_SRCS HEADER ktuberling_debug.h IDENTIFIER KTUBERLING_LOG CATEGORY_NAME org.kde.kdegames.ktuberling DESCRIPTION "ktuberling (kdegames)" EXPORT KTUBERLING)
0084
0085 if(ANDROID)
0086 set(ktuberling_mobile_SRCS
0087 ${ktuberling_common_SRCS}
0088 main_mobile.cpp
0089 android_data/resources.qrc
0090 )
0091
0092 add_executable(ktuberling_mobile ${ktuberling_mobile_SRCS})
0093
0094 target_link_libraries(ktuberling_mobile
0095 KF6::ConfigCore
0096 Qt6::Gui
0097 Qt6::Svg
0098 Qt6::Multimedia
0099 Qt6::Xml
0100 Qt6::Widgets
0101 Qt6::SvgWidgets
0102 )
0103
0104 install(TARGETS ktuberling_mobile RUNTIME DESTINATION bin)
0105
0106 else()
0107
0108 set(ktuberling_SRCS
0109 ${ktuberling_common_SRCS}
0110 main.cpp
0111 toplevel.cpp
0112 playgrounddelegate.cpp
0113
0114 ktuberling.qrc
0115 )
0116
0117 file(GLOB ICONS_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/*-apps-ktuberling.png")
0118 ecm_add_app_icon(ktuberling_SRCS ICONS ${ICONS_SRCS})
0119
0120 add_executable(ktuberling ${ktuberling_SRCS})
0121
0122 target_link_libraries(ktuberling
0123 KDEGames6
0124 KF6::ConfigWidgets
0125 KF6::Completion
0126 KF6::Crash
0127 KF6::DBusAddons
0128 KF6::I18n
0129 KF6::KIOCore
0130 KF6::XmlGui
0131 Qt6::PrintSupport
0132 Qt6::Svg
0133 Qt6::Multimedia
0134 Qt6::SvgWidgets
0135 )
0136
0137 install(TARGETS ktuberling ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
0138
0139 install(PROGRAMS org.kde.ktuberling.desktop DESTINATION ${KDE_INSTALL_APPDIR})
0140
0141 ecm_install_icons(ICONS
0142 128-apps-ktuberling.png
0143 16-apps-ktuberling.png
0144 22-apps-ktuberling.png
0145 32-apps-ktuberling.png
0146 48-apps-ktuberling.png
0147 64-apps-ktuberling.png
0148 128-mimetypes-application-x-tuberling.png
0149 16-mimetypes-application-x-tuberling.png
0150 22-mimetypes-application-x-tuberling.png
0151 32-mimetypes-application-x-tuberling.png
0152 48-mimetypes-application-x-tuberling.png
0153 64-mimetypes-application-x-tuberling.png
0154 DESTINATION ${KDE_INSTALL_ICONDIR} THEME hicolor
0155 )
0156
0157 add_subdirectory(sounds)
0158 add_subdirectory(pics)
0159 endif()
0160
0161 install(FILES org.kde.ktuberling.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR})
0162 ecm_qt_install_logging_categories(EXPORT KTUBERLING FILE ktuberling.categories DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR})
0163
0164 ki18n_install(po)
0165 if(KF6DocTools_FOUND)
0166 kdoctools_install(po)
0167 endif()
0168
0169 feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)