Warning, /utilities/alpaka/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 # SPDX-FileCopyrightText: 2023 Loren Burkholder <computersemiexpert@outlook.com>
0002 #
0003 # SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0004 
0005 cmake_minimum_required(VERSION 3.16)
0006 project(alpaka VERSION 0.1.1 LANGUAGES CXX)
0007 
0008 set(KF_MIN_VERSION "5.246.0")
0009 set(QT_MIN_VERSION "6.6")
0010 
0011 set(CMAKE_CXX_STANDARD 20)
0012 set(CMAKE_CXX_STANDARD_REQUIRED ON)
0013 
0014 find_package(ECM ${KF_MIN_VERSION} REQUIRED NO_MODULE)
0015 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
0016 
0017 include(FeatureSummary)
0018 include(KDEInstallDirs)
0019 include(KDECMakeSettings)
0020 include(KDECompilerSettings NO_POLICY_SCOPE)
0021 include(ECMQtDeclareLoggingCategory)
0022 include(ECMDeprecationSettings)
0023 include(ECMAddTests)
0024 include(KDEGitCommitHooks)
0025 include(KDEClangFormat)
0026 include(GenerateExportHeader)
0027 include(ECMGenerateHeaders)
0028 include(ECMSetupVersion)
0029 include(ECMAddQch)
0030 
0031 option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF)
0032 add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)")
0033 
0034 find_package(Qt6 ${QT_MIN_VERSION} REQUIRED COMPONENTS
0035     Core
0036     Quick
0037     Gui
0038     QuickControls2
0039     Network
0040     Widgets
0041 )
0042 
0043 find_package(KF6 ${KF_MIN_VERSION} REQUIRED COMPONENTS
0044     CoreAddons
0045     Config
0046     Kirigami
0047     I18n
0048     StatusNotifierItem
0049     WindowSystem
0050     XmlGui
0051     Crash
0052 )
0053 
0054 # Remove it on android etc.
0055 if (NOT ANDROID)
0056     set(HAVE_WINDOWSYSTEM TRUE)
0057 endif()
0058 if (NOT ANDROID AND NOT WIN32 AND NOT APPLE)
0059     set(HAVE_X11 TRUE)
0060 endif()
0061 ecm_set_disabled_deprecation_versions(QT ${QT_MIN_VERSION} KF ${KF_MIN_VERSION})
0062 
0063 ecm_setup_version(${PROJECT_VERSION}
0064         VARIABLE_PREFIX ALPAKA
0065         VERSION_HEADER ${CMAKE_CURRENT_BINARY_DIR}/alpaka-version.h
0066 )
0067 
0068 if(BUILD_TESTING)
0069     add_definitions(-DBUILD_TESTING)
0070     find_package(Qt6 ${QT_MIN_VERSION} REQUIRED COMPONENTS Test)
0071 endif()
0072 
0073 add_subdirectory(src)
0074 
0075 install(PROGRAMS org.kde.alpaka.desktop DESTINATION ${KDE_INSTALL_APPDIR})
0076 
0077 ecm_qt_install_logging_categories(EXPORT KLLMCORE FILE kllm.categories DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR})
0078 
0079 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES src/*.cpp src/*.h)
0080 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES})
0081 
0082 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT)
0083 ki18n_install(po)
0084 
0085 feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)