Warning, /multimedia/ffmpegthumbs/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 cmake_minimum_required(VERSION 3.16)
0002 
0003 # Release Service version, managed by release script
0004 set(RELEASE_SERVICE_VERSION_MAJOR "24")
0005 set(RELEASE_SERVICE_VERSION_MINOR "04")
0006 set(RELEASE_SERVICE_VERSION_MICRO "70")
0007 
0008 set(RELEASE_SERVICE_VERSION "${RELEASE_SERVICE_VERSION_MAJOR}.${RELEASE_SERVICE_VERSION_MINOR}.${RELEASE_SERVICE_VERSION_MICRO}")
0009 
0010 project(ffmpegthumbs VERSION ${RELEASE_SERVICE_VERSION})
0011 
0012 set(QT_MIN_VERSION "5.15.0")
0013 set(KF_MIN_VERSION "5.92.0")
0014 
0015 if (QT_MAJOR_VERSION STREQUAL "6")
0016     set(QT_REQUIRED_VERSION "6.5.0")
0017     set(KF_MIN_VERSION "5.240.0")
0018 endif()
0019 
0020 
0021 find_package(ECM ${KF_MIN_VERSION} REQUIRED NO_MODULE)
0022 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}  ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
0023 
0024 include(KDEInstallDirs)
0025 include(KDECMakeSettings)
0026 include(KDECompilerSettings NO_POLICY_SCOPE)
0027 
0028 include(ECMQtDeclareLoggingCategory)
0029 include(FeatureSummary)
0030 include(ECMDeprecationSettings)
0031 
0032 find_package(Qt${QT_MAJOR_VERSION} ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS Core Gui)
0033 find_package(KF${QT_MAJOR_VERSION} ${KF_MIN_VERSION} REQUIRED COMPONENTS KIO Config)
0034 find_package(FFmpeg COMPONENTS AVCODEC AVFORMAT SWSCALE)
0035 
0036 include_directories(
0037     ${FFMPEG_INCLUDE_DIRS}
0038     )
0039 
0040 # Certain versions of FFMPEG need this to be defined
0041 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D __STDC_CONSTANT_MACROS")
0042 
0043 add_definitions(-DTRANSLATION_DOMAIN=\"ffmpegthumbs\")
0044 set(KDE_COMPILERSETTINGS_LEVEL "5.82.0")
0045 ecm_set_disabled_deprecation_versions(QT 5.15.2
0046     KF 5.81
0047 )
0048 
0049 kcoreaddons_add_plugin(ffmpegthumbs INSTALL_NAMESPACE "kf${QT_MAJOR_VERSION}/thumbcreator")
0050 
0051 target_sources(ffmpegthumbs PRIVATE
0052   ffmpegthumbnailer.cpp
0053   ffmpegthumbnailer/filmstripfilter.cpp
0054   ffmpegthumbnailer/moviedecoder.cpp
0055   ffmpegthumbnailer/imagewriter.cpp
0056   ffmpegthumbnailer/videothumbnailer.cpp
0057   ffmpegthumbnailer.h
0058   ffmpegthumbnailer/filmstripfilter.h
0059   ffmpegthumbnailer/moviedecoder.h
0060   ffmpegthumbnailer/imagewriter.h
0061   ffmpegthumbnailer/videothumbnailer.h
0062 )
0063 
0064 ecm_qt_declare_logging_category(ffmpegthumbs
0065   HEADER ffmpegthumbs_debug.h
0066   IDENTIFIER ffmpegthumbs_LOG
0067   CATEGORY_NAME org.kde.kdemultimedia.ffmpegthumbs
0068   DEFAULT_SEVERITY Critical
0069   EXPORT ffmpegthumbs
0070   DESCRIPTION "FFmpeg video thumbnailer"
0071 )
0072 
0073 kconfig_add_kcfg_files(ffmpegthumbs ffmpegthumbnailersettings5.kcfgc)
0074 
0075 target_link_libraries(ffmpegthumbs
0076     Qt::Core
0077     Qt::Gui
0078     KF${QT_MAJOR_VERSION}::KIOWidgets
0079     KF${QT_MAJOR_VERSION}::KIOCore
0080     KF${QT_MAJOR_VERSION}::ConfigCore
0081     KF${QT_MAJOR_VERSION}::ConfigGui
0082     ${AVUTIL_LIBRARIES}
0083     ${AVFILTER_LIBRARIES}
0084     ${AVFORMAT_LIBRARIES}
0085     ${AVCODEC_LIBRARIES}
0086     ${SWSCALE_LIBRARIES}
0087 )
0088 
0089 install(FILES ffmpegthumbnailersettings5.kcfg DESTINATION ${KDE_INSTALL_KCFGDIR})
0090 
0091 ecm_qt_install_logging_categories(
0092   EXPORT ffmpegthumbs
0093   DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}
0094 )
0095 
0096 ########### install files ###############
0097 
0098 install(FILES org.kde.ffmpegthumbs.metainfo.xml
0099         DESTINATION ${KDE_INSTALL_METAINFODIR})
0100 
0101 if(BUILD_TESTING)
0102     add_subdirectory(tests)
0103 endif()
0104 
0105 feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)