add_library(mltplus MODULE subtitles/subtitles.cpp consumer_blipflash.c factory.c filter_affine.c filter_charcoal.c filter_chroma_hold.c filter_chroma.c filter_dynamictext.c filter_dynamic_loudness.c filter_gradientmap.cpp filter_hslprimaries.c filter_hslrange.c filter_invert.c filter_lift_gamma_gain.c filter_loudness.c filter_loudness_meter.c filter_lumakey.c filter_rgblut.c filter_sepia.c filter_shape.c filter_spot_remover.c filter_strobe.c filter_subtitle_feed.cpp filter_subtitle.cpp filter_text.c filter_threshold.c filter_timer.c interp.h producer_blipflash.c producer_count.c producer_pgm.c producer_subtitle.c transition_affine.c ) file(GLOB YML "*.yml") add_custom_target(Other_plus_Files SOURCES ${YML} ) include(GenerateExportHeader) generate_export_header(mltplus) target_compile_options(mltplus PRIVATE ${MLT_COMPILE_OPTIONS}) target_include_directories(mltplus PRIVATE ${CMAKE_CURRENT_BINARY_DIR}) target_link_libraries(mltplus PRIVATE mlt Threads::Threads) if(MSVC) target_link_libraries(mltplus PRIVATE msvccompat) else() target_link_libraries(mltplus PRIVATE m) endif() if(FFTW3_FOUND) target_sources(mltplus PRIVATE filter_dance.c filter_fft.c) target_link_libraries(mltplus PRIVATE FFTW3::fftw3) target_compile_definitions(mltplus PRIVATE USE_FFTW) install(FILES filter_dance.yml filter_fft.yml DESTINATION ${MLT_INSTALL_DATA_DIR}/plus) endif() if(TARGET PkgConfig::libebur128) target_link_libraries(mltplus PRIVATE PkgConfig::libebur128) else() target_sources(mltplus PRIVATE ebur128/ebur128.c) target_include_directories(mltplus PRIVATE ebur128 ebur128/queue) target_compile_definitions(mltplus PRIVATE USE_INTERNAL_LIBEBUR128) endif() set_target_properties(mltplus PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${MLT_MODULE_OUTPUT_DIRECTORY}") install(TARGETS mltplus LIBRARY DESTINATION ${MLT_INSTALL_MODULE_DIR}) install(FILES consumer_blipflash.yml filter_affine.yml filter_charcoal.yml filter_chroma_hold.yml filter_chroma.yml filter_dynamic_loudness.yml filter_dynamictext.yml filter_gradientmap.yml filter_hslprimaries.yml filter_hslrange.yml filter_invert.yml filter_lift_gamma_gain.yml filter_loudness_meter.yml filter_loudness.yml filter_lumakey.yml filter_rgblut.yml filter_sepia.yml filter_shape.yml filter_spot_remover.yml filter_strobe.yml filter_subtitle_feed.yml filter_subtitle.yml filter_text.yml filter_threshold.yml filter_timer.yml producer_blipflash.yml producer_count.yml producer_pgm.yml transition_affine.yml DESTINATION ${MLT_INSTALL_DATA_DIR}/plus )