legacy.cmake 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. project(text-freetype2)
  2. option(ENABLE_FREETYPE "Enable FreeType text plugin" ON)
  3. if(NOT ENABLE_FREETYPE)
  4. obs_status(DISABLED "text-freetype2")
  5. return()
  6. endif()
  7. find_package(Freetype REQUIRED)
  8. add_library(text-freetype2 MODULE)
  9. add_library(OBS::text-freetype2 ALIAS text-freetype2)
  10. target_sources(text-freetype2 PRIVATE find-font.h obs-convenience.c text-functionality.c text-freetype2.c
  11. obs-convenience.h text-freetype2.h)
  12. target_link_libraries(text-freetype2 PRIVATE OBS::libobs Freetype::Freetype)
  13. set_target_properties(text-freetype2 PROPERTIES FOLDER "plugins" PREFIX "")
  14. if(OS_WINDOWS)
  15. set(MODULE_DESCRIPTION "OBS FreeType text module")
  16. configure_file(${CMAKE_SOURCE_DIR}/cmake/bundle/windows/obs-module.rc.in text-freetype2.rc)
  17. target_sources(text-freetype2 PRIVATE find-font.c find-font-windows.c text-freetype2.rc)
  18. target_link_options(text-freetype2 PRIVATE "LINKER:/IGNORE:4098" "LINKER:/IGNORE:4099")
  19. elseif(OS_MACOS)
  20. find_package(Iconv REQUIRED)
  21. find_library(COCOA Cocoa)
  22. mark_as_advanced(COCOA)
  23. target_sources(text-freetype2 PRIVATE find-font.c find-font-cocoa.m find-font-iconv.c)
  24. target_link_libraries(text-freetype2 PRIVATE Iconv::Iconv ${COCOA})
  25. elseif(OS_POSIX)
  26. find_package(Fontconfig REQUIRED)
  27. target_sources(text-freetype2 PRIVATE find-font-unix.c)
  28. target_link_libraries(text-freetype2 PRIVATE Fontconfig::Fontconfig)
  29. endif()
  30. setup_plugin_target(text-freetype2)