Warning, /frameworks/kimageformats/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 cmake_minimum_required(VERSION 3.16) 0002 0003 project(KImageFormats) 0004 0005 include(FeatureSummary) 0006 find_package(ECM 5.115.0 NO_MODULE) 0007 set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://commits.kde.org/extra-cmake-modules") 0008 feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES) 0009 0010 0011 set(CMAKE_MODULE_PATH ${KImageFormats_SOURCE_DIR}/cmake/find-modules ${ECM_MODULE_PATH}) 0012 0013 include(KDEInstallDirs) 0014 include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE) 0015 include(KDECMakeSettings) 0016 0017 include(KDEGitCommitHooks) 0018 include(ECMDeprecationSettings) 0019 include(CheckIncludeFiles) 0020 include(FindPkgConfig) 0021 0022 set(REQUIRED_QT_VERSION 5.15.2) 0023 find_package(Qt${QT_MAJOR_VERSION}Gui ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE) 0024 0025 find_package(KF5Archive) 0026 set_package_properties(KF5Archive PROPERTIES 0027 TYPE OPTIONAL 0028 PURPOSE "Required for the QImage plugin for Krita and OpenRaster images" 0029 ) 0030 0031 # EPS support depends on the gs utility; non-UNIX systems are unlikely to have 0032 # this available in PATH 0033 set(BUILD_EPS_PLUGIN FALSE) 0034 if (UNIX) 0035 find_package(Qt${QT_MAJOR_VERSION}PrintSupport ${REQUIRED_QT_VERSION} NO_MODULE) 0036 set_package_properties(Qt${QT_MAJOR_VERSION}PrintSupport PROPERTIES 0037 PURPOSE "Required for the QImage plugin for EPS images" 0038 TYPE OPTIONAL 0039 ) 0040 if (TARGET Qt${QT_MAJOR_VERSION}::PrintSupport) 0041 set(BUILD_EPS_PLUGIN TRUE) 0042 endif() 0043 endif() 0044 0045 find_package(OpenEXR 3.0 CONFIG QUIET) 0046 if(NOT OpenEXR_FOUND) 0047 find_package(OpenEXR) 0048 endif() 0049 set_package_properties(OpenEXR PROPERTIES 0050 TYPE OPTIONAL 0051 PURPOSE "Required for the QImage plugin for OpenEXR images" 0052 ) 0053 0054 find_package(libavif 0.8.2 CONFIG QUIET) 0055 if(NOT libavif_FOUND) 0056 find_package(libavif 1 CONFIG) 0057 endif() 0058 set_package_properties(libavif PROPERTIES 0059 TYPE OPTIONAL 0060 PURPOSE "Required for the QImage plugin for AVIF images" 0061 ) 0062 0063 option(KIMAGEFORMATS_HEIF "Enable plugin for HEIF format" OFF) 0064 if(KIMAGEFORMATS_HEIF) 0065 pkg_check_modules(LibHeif IMPORTED_TARGET libheif>=1.10.0) 0066 endif() 0067 add_feature_info(LibHeif LibHeif_FOUND "required for the QImage plugin for HEIF/HEIC images") 0068 0069 option(KIMAGEFORMATS_JXL "Enable plugin for JPEG XL format" ON) 0070 if(KIMAGEFORMATS_JXL) 0071 pkg_check_modules(LibJXL IMPORTED_TARGET libjxl>=0.7.0) 0072 pkg_check_modules(LibJXLThreads IMPORTED_TARGET libjxl_threads>=0.7.0) 0073 endif() 0074 add_feature_info(LibJXL LibJXL_FOUND "required for the QImage plugin for JPEG XL images") 0075 0076 # note: module FindLibRaw missing from https://invent.kde.org/frameworks/extra-cmake-modules 0077 find_package(LibRaw 0.20.2) 0078 set_package_properties(LibRaw PROPERTIES 0079 TYPE OPTIONAL 0080 PURPOSE "Required for the QImage plugin for RAW images" 0081 ) 0082 0083 ecm_set_disabled_deprecation_versions( 0084 QT 5.15.2 0085 KF 5.95 0086 ) 0087 0088 add_subdirectory(src) 0089 if (BUILD_TESTING) 0090 add_subdirectory(autotests) 0091 add_subdirectory(tests) 0092 endif() 0093 0094 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) 0095 0096 kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT)