Warning, /maui/buho/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # Copyright 2018-2020 Camilo Higuita <milo.h@aol.com>
0002 # Copyright 2018-2020 Nitrux Latinoamericana S.C.
0003 #
0004 # SPDX-License-Identifier: GPL-3.0-or-later
0005
0006 cmake_minimum_required(VERSION 3.16)
0007
0008 set(BUHO_VERSION 3.1.0)
0009 add_compile_definitions(APP_COPYRIGHT_NOTICE="© 2019-2024 Maui Development Team")
0010
0011 project(buho VERSION ${BUHO_VERSION})
0012
0013 set(CMAKE_CXX_STANDARD 17)
0014 set(CMAKE_CXX_STANDARD_REQUIRED ON)
0015
0016 set(CMAKE_INCLUDE_CURRENT_DIR ON)
0017 set(CMAKE_AUTOUIC ON)
0018 set(CMAKE_AUTOMOC ON)
0019 set(CMAKE_AUTORCC ON)
0020
0021 #set(TESSDATA_PREFIX /usr/share/tessdata)
0022
0023 set(REQUIRED_QT_VERSION 5.15.0)
0024 set(REQUIRED_KF5_VERSION 5.60)
0025
0026 if(ANDROID)
0027 set(ANDROID_PACKAGE_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/android_files)
0028 set(ANDROID_ABIS "armeabi-v7a")
0029 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/android_files/version.gradle.in ${CMAKE_BINARY_DIR}/version.gradle)
0030 endif()
0031
0032 option(QUICK_COMPILER "Use QtQuick compiler to improve performance" TRUE)
0033
0034 find_package(ECM 1.7.0 REQUIRED NO_MODULE)
0035 set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake" ${ECM_MODULE_PATH})
0036
0037 find_package(Qt5 ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE COMPONENTS Qml Quick Sql Network)
0038 find_package(KF5 ${REQUIRED_KF5_VERSION} REQUIRED COMPONENTS I18n CoreAddons)
0039
0040 find_package(MauiKit3 REQUIRED)
0041 find_package(MauiKit3 REQUIRED COMPONENTS FileBrowsing Accounts TextEditor)
0042
0043 #find_package(Tesseract REQUIRED)
0044 #find_package(Leptonica REQUIRED)
0045
0046 if(ANDROID)
0047 find_package(Qt5 ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE COMPONENTS AndroidExtras QuickControls2)
0048 elseif(UNIX)
0049 find_package(Qt5 ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE COMPONENTS Widgets DBus)
0050 endif()
0051
0052 if(QUICK_COMPILER)
0053 find_package(Qt5QuickCompiler)
0054 set_package_properties(Qt5QuickCompiler PROPERTIES
0055 DESCRIPTION "Compile QML at build time"
0056 TYPE OPTIONAL)
0057 endif()
0058
0059 if(UNIX AND NOT APPLE AND NOT ANDROID)
0060 include(KDEInstallDirs)
0061 include(KDECMakeSettings)
0062 include(ECMInstallIcons)
0063 include(ECMAddAppIcon)
0064 endif()
0065
0066 include(KDECompilerSettings NO_POLICY_SCOPE)
0067 include(KDEClangFormat)
0068 include(ECMSetupVersion)
0069 include(ECMSourceVersionControl)
0070 include(FeatureSummary)
0071
0072 if(${ECM_SOURCE_UNDER_VERSION_CONTROL})
0073 execute_process(
0074 COMMAND git rev-parse --abbrev-ref HEAD
0075 WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
0076 OUTPUT_VARIABLE GIT_BRANCH
0077 OUTPUT_STRIP_TRAILING_WHITESPACE)
0078
0079 # Get the latest abbreviated commit hash of the working branch
0080 execute_process(
0081 COMMAND git log -1 --format=%h
0082 WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
0083 OUTPUT_VARIABLE GIT_COMMIT_HASH
0084 OUTPUT_STRIP_TRAILING_WHITESPACE)
0085
0086 add_definitions(-DGIT_COMMIT_HASH="${GIT_COMMIT_HASH}")
0087 add_definitions(-DGIT_BRANCH="${GIT_BRANCH}")
0088
0089 else()
0090 add_definitions(-DGIT_COMMIT_HASH="${BUHO_VERSION}")
0091 add_definitions(-DGIT_BRANCH="Stable")
0092 endif()
0093
0094 ecm_setup_version(${BUHO_VERSION}
0095 VARIABLE_PREFIX BUHO
0096 VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/buho_version.h")
0097
0098 add_subdirectory(src)
0099
0100 ki18n_install(po)
0101
0102 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
0103
0104 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h)
0105 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES})