Warning, /education/kalgebra/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 cmake_minimum_required(VERSION 3.16) 0002 0003 # KDE Application Version, managed by release script 0004 set(RELEASE_SERVICE_VERSION_MAJOR "23") 0005 set(RELEASE_SERVICE_VERSION_MINOR "03") 0006 set(RELEASE_SERVICE_VERSION_MICRO "80") 0007 set(RELEASE_SERVICE_VERSION "${RELEASE_SERVICE_VERSION_MAJOR}.${RELEASE_SERVICE_VERSION_MINOR}.${RELEASE_SERVICE_VERSION_MICRO}") 0008 0009 project(kalgebra VERSION ${RELEASE_SERVICE_VERSION}) 0010 set(KF5_MIN_VERSION "5.92.0") 0011 set(KDE_COMPILERSETTINGS_LEVEL "5.82") 0012 find_package(ECM ${KF5_MIN_VERSION} REQUIRED NO_MODULE) 0013 set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake" ${ECM_MODULE_PATH}) 0014 0015 include(KDEInstallDirs) 0016 include(KDECompilerSettings NO_POLICY_SCOPE) 0017 include(KDECMakeSettings) 0018 include(ECMInstallIcons) 0019 include(ECMSetupVersion) 0020 include(FeatureSummary) 0021 include(ECMAddAppIcon) 0022 include(ECMDeprecationSettings) 0023 if (QT_MAJOR_VERSION STREQUAL "6") 0024 set(QT_REQUIRED_VERSION "6.4.0") 0025 set(KF_MIN_VERSION "5.240.0") 0026 set(KF_MAJOR_VERSION "6") 0027 else() 0028 set(KF_MAJOR_VERSION "5") 0029 endif() 0030 0031 find_package(Qt${QT_MAJOR_VERSION} 5.15 REQUIRED NO_MODULE COMPONENTS Qml Quick Xml Svg PrintSupport Test) 0032 if (QT_MAJOR_VERSION STREQUAL "6") 0033 find_package(Qt6Core5Compat) 0034 endif() 0035 find_package(Analitza5 REQUIRED) 0036 0037 ecm_set_disabled_deprecation_versions(QT 6.4 0038 KF 5.101 0039 ) 0040 0041 0042 set(MOBILE_BACKEND "kde" CACHE STRING "Backend to install, currently. Check /mobile/plugins/widgets/*") 0043 0044 include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR}) 0045 0046 set(CURSES_NEED_NCURSES TRUE) 0047 find_package(Curses) 0048 find_package(Readline) 0049 0050 ecm_setup_version(${RELEASE_SERVICE_VERSION} VARIABLE_PREFIX KALGEBRA VERSION_HEADER kalgebra_version.h) 0051 0052 set_package_properties(Readline PROPERTIES TYPE OPTIONAL 0053 PURPOSE "Allows KAlgebra to provide a console interface." 0054 URL "https://tiswww.case.edu/php/chet/readline/rltop.html") 0055 set_package_properties(Curses PROPERTIES TYPE OPTIONAL 0056 PURPOSE "Allows KAlgebra to provide a console interface." 0057 URL "https://www.gnu.org/software/ncurses/") 0058 0059 add_definitions(-DQT_USE_FAST_CONCATENATION -DQT_USE_FAST_OPERATOR_PLUS) 0060 add_definitions(-DQT_NO_URL_CAST_FROM_STRING) 0061 add_definitions(-DQT_NO_CAST_TO_ASCII) 0062 0063 find_package(KF${KF_MAJOR_VERSION} ${KF5_MIN_VERSION} REQUIRED COMPONENTS I18n CoreAddons) 0064 find_package(KF${KF_MAJOR_VERSION} ${KF5_MIN_VERSION} OPTIONAL_COMPONENTS ConfigWidgets WidgetsAddons KIO DocTools) 0065 find_package(Qt${QT_MAJOR_VERSION}WebEngineWidgets) 0066 if (QT_MAJOR_VERSION STREQUAL "6") 0067 find_package(Qt6 REQUIRED NO_MODULE COMPONENTS OpenGLWidgets) 0068 endif() 0069 0070 0071 if(KF${KF_MAJOR_VERSION}DocTools_FOUND AND Qt${QT_MAJOR_VERSION}WebEngineWidgets_FOUND AND KF${KF_MAJOR_VERSION}ConfigWidgets_FOUND AND KF${KF_MAJOR_VERSION}WidgetsAddons_FOUND AND KF${KF_MAJOR_VERSION}KIO_FOUND AND NOT CMAKE_SYSTEM MATCHES Android*) 0072 add_subdirectory(src) 0073 add_subdirectory(plasmoids) 0074 endif() 0075 0076 add_subdirectory(icons) 0077 add_subdirectory(mobile) 0078 0079 if(READLINE_FOUND AND CURSES_FOUND) 0080 add_subdirectory(calgebra) 0081 endif() 0082 0083 if(KF${KF_MAJOR_VERSION}DocTools_FOUND) 0084 add_subdirectory(utils) 0085 0086 add_custom_target(commandsdoc 0087 ${CMAKE_CURRENT_BINARY_DIR}/utils/docbook_analitzacommands commands.docbook 0088 DEPENDS docbook_analitzacommands 0089 WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/doc/ 0090 COMMENT "Generating commands docbook information" 0091 ) 0092 0093 add_subdirectory(doc) 0094 endif() 0095 0096 ki18n_install(po) 0097 if (KF${KF_MAJOR_VERSION}DocTools_FOUND) 0098 kdoctools_install(po) 0099 endif() 0100 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)