Warning, /frameworks/kimageformats/src/imageformats/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 # NB: the desktop files are installed for the benefit of KImageIO in KDELibs4Support.
0002 
0003 ##################################
0004 
0005 function(kimageformats_add_plugin plugin)
0006     set(options)
0007     set(oneValueArgs)
0008     set(multiValueArgs SOURCES)
0009     cmake_parse_arguments(KIF_ADD_PLUGIN "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
0010     if(NOT KIF_ADD_PLUGIN_SOURCES)
0011         message(FATAL_ERROR "kimageformats_add_plugin called without SOURCES parameter")
0012     endif()
0013 
0014     add_library(${plugin} MODULE ${KIF_ADD_PLUGIN_SOURCES})
0015     set_target_properties(${plugin} PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/imageformats")
0016     target_link_libraries(${plugin} Qt${QT_MAJOR_VERSION}::Gui)
0017     install(TARGETS ${plugin} DESTINATION ${KDE_INSTALL_QTPLUGINDIR}/imageformats)
0018 endfunction()
0019 
0020 ##################################
0021 
0022 kimageformats_add_plugin(kimg_ani SOURCES ani.cpp)
0023 
0024 if (QT_MAJOR_VERSION STREQUAL "5")
0025     install(FILES ani.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0026 endif()
0027 
0028 ##################################
0029 
0030 if (TARGET avif)
0031     kimageformats_add_plugin(kimg_avif SOURCES "avif.cpp")
0032     target_link_libraries(kimg_avif "avif")
0033     if (QT_MAJOR_VERSION STREQUAL "5")
0034         install(FILES avif.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0035     endif()
0036 endif()
0037 
0038 ##################################
0039 
0040 if (QT_MAJOR_VERSION STREQUAL "5")
0041     install(FILES dds-qt.desktop RENAME dds.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0042 endif()
0043 
0044 ##################################
0045 
0046 if (BUILD_EPS_PLUGIN)
0047     if (TARGET Qt${QT_MAJOR_VERSION}::PrintSupport)
0048         kimageformats_add_plugin(kimg_eps SOURCES eps.cpp)
0049         target_link_libraries(kimg_eps Qt${QT_MAJOR_VERSION}::PrintSupport)
0050         if (QT_MAJOR_VERSION STREQUAL "5")
0051             install(FILES eps.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0052         endif()
0053     endif()
0054 endif()
0055 
0056 ##################################
0057 
0058 if (QT_MAJOR_VERSION STREQUAL "5")
0059     # need this for Qt's version of the plugin
0060     install(FILES jp2.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0061 endif()
0062 
0063 ##################################
0064 
0065 if(OpenEXR_FOUND)
0066     kimageformats_add_plugin(kimg_exr SOURCES exr.cpp)
0067     if(TARGET OpenEXR::OpenEXR)
0068         target_link_libraries(kimg_exr OpenEXR::OpenEXR)
0069     else()
0070         if(OpenEXR_VERSION_STRING VERSION_LESS 2.3.0)
0071             # Older OpenEXR versions use dynamic exception specifications, so
0072             # cannot use C++17 with them
0073             set_target_properties(kimg_exr PROPERTIES CXX_STANDARD 14)
0074         endif()
0075         target_link_libraries(kimg_exr OpenEXR::IlmImf)
0076     endif()
0077     kde_target_enable_exceptions(kimg_exr PRIVATE)
0078 
0079     if (QT_MAJOR_VERSION STREQUAL "5")
0080         install(FILES exr.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0081     endif()
0082 endif()
0083 
0084 ##################################
0085 
0086 kimageformats_add_plugin(kimg_hdr SOURCES hdr.cpp)
0087 if (QT_MAJOR_VERSION STREQUAL "5")
0088     install(FILES hdr.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0089 endif()
0090 
0091 ##################################
0092 
0093 if (LibHeif_FOUND)
0094     kimageformats_add_plugin(kimg_heif SOURCES heif.cpp)
0095     target_link_libraries(kimg_heif PkgConfig::LibHeif)
0096 
0097     if (QT_MAJOR_VERSION STREQUAL "5")
0098         install(FILES heif.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0099     endif()
0100 endif()
0101 
0102 ##################################
0103 
0104 if (LibJXL_FOUND AND LibJXLThreads_FOUND)
0105     kimageformats_add_plugin(kimg_jxl SOURCES jxl.cpp)
0106     target_link_libraries(kimg_jxl PkgConfig::LibJXL PkgConfig::LibJXLThreads)
0107 
0108     if (QT_MAJOR_VERSION STREQUAL "5")
0109         install(FILES jxl.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0110     endif()
0111 endif()
0112 
0113 ##################################
0114 
0115 kimageformats_add_plugin(kimg_pcx SOURCES pcx.cpp)
0116 if (QT_MAJOR_VERSION STREQUAL "5")
0117     install(FILES pcx.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0118 endif()
0119 
0120 ##################################
0121 
0122 kimageformats_add_plugin(kimg_pic SOURCES pic.cpp)
0123 if (QT_MAJOR_VERSION STREQUAL "5")
0124     install(FILES pic.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0125 endif()
0126 
0127 ##################################
0128 
0129 kimageformats_add_plugin(kimg_psd SOURCES psd.cpp)
0130 if (QT_MAJOR_VERSION STREQUAL "5")
0131     install(FILES psd.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0132 endif()
0133 
0134 ##################################
0135 
0136 kimageformats_add_plugin(kimg_qoi SOURCES qoi.cpp scanlineconverter.cpp)
0137 if (QT_MAJOR_VERSION STREQUAL "5")
0138     install(FILES qoi.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0139 endif()
0140 
0141 ##################################
0142 
0143 kimageformats_add_plugin(kimg_ras SOURCES ras.cpp)
0144 if (QT_MAJOR_VERSION STREQUAL "5")
0145     install(FILES ras.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0146 endif()
0147 
0148 ##################################
0149 
0150 kimageformats_add_plugin(kimg_rgb SOURCES rgb.cpp)
0151 if (QT_MAJOR_VERSION STREQUAL "5")
0152     install(FILES rgb.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0153 endif()
0154 
0155 ##################################
0156 
0157 kimageformats_add_plugin(kimg_tga SOURCES tga.cpp)
0158 if (QT_MAJOR_VERSION STREQUAL "5")
0159     install(FILES tga.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0160 endif()
0161 
0162 ##################################
0163 
0164 kimageformats_add_plugin(kimg_xcf SOURCES xcf.cpp)
0165 if (QT_MAJOR_VERSION STREQUAL "5")
0166     install(FILES xcf.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0167 endif()
0168 
0169 ##################################
0170 
0171 if (LibRaw_FOUND)
0172     kimageformats_add_plugin(kimg_raw SOURCES raw.cpp)
0173     kde_enable_exceptions()
0174     target_link_libraries(kimg_raw LibRaw::LibRaw)
0175     if (QT_MAJOR_VERSION STREQUAL "5")
0176         install(FILES raw.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0177     endif()
0178 endif()
0179 
0180 ##################################
0181 
0182 if (KF5Archive_FOUND)
0183 
0184     kimageformats_add_plugin(kimg_kra SOURCES kra.cpp)
0185     target_link_libraries(kimg_kra KF5::Archive)
0186     if (QT_MAJOR_VERSION STREQUAL "5")
0187         install(FILES kra.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0188     endif()
0189 
0190     kimageformats_add_plugin(kimg_ora SOURCES ora.cpp)
0191     target_link_libraries(kimg_ora KF5::Archive)
0192     if (QT_MAJOR_VERSION STREQUAL "5")
0193         install(FILES ora.desktop DESTINATION ${KDE_INSTALL_KSERVICESDIR}/qimageioplugins/)
0194     endif()
0195 
0196 endif()