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)