CMakeLists.txt 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. cmake_minimum_required(VERSION 2.8)
  2. project(obslua)
  3. find_package(SWIG 2 REQUIRED)
  4. include(${SWIG_USE_FILE})
  5. add_definitions(-DSWIG_TYPE_TABLE=obslua -DSWIG_LUA_INTERPRETER_NO_DEBUG)
  6. if(MSVC)
  7. add_compile_options("/wd4054")
  8. add_compile_options("/wd4197")
  9. add_compile_options("/wd4244")
  10. add_compile_options("/wd4267")
  11. endif()
  12. include_directories(SYSTEM "${CMAKE_SOURCE_DIR}/libobs")
  13. include_directories(${CMAKE_CURRENT_SOURCE_DIR})
  14. SWIG_ADD_MODULE(obslua lua obslua.i ../cstrcache.cpp ../cstrcache.h)
  15. SWIG_LINK_LIBRARIES(obslua obs-scripting libobs ${LUA_LIBRARIES} ${EXTRA_LIBS})
  16. function(install_plugin_bin_swig target additional_target)
  17. if(APPLE)
  18. set(_bit_suffix "")
  19. elseif(CMAKE_SIZEOF_VOID_P EQUAL 8)
  20. set(_bit_suffix "64bit/")
  21. else()
  22. set(_bit_suffix "32bit/")
  23. endif()
  24. set_target_properties(${additional_target} PROPERTIES
  25. PREFIX "")
  26. install(TARGETS "${additional_target}"
  27. LIBRARY DESTINATION "${OBS_SCRIPT_PLUGIN_DESTINATION}")
  28. add_custom_command(TARGET ${additional_target} POST_BUILD
  29. COMMAND "${CMAKE_COMMAND}" -E copy
  30. "$<TARGET_FILE:${additional_target}>"
  31. "${OBS_OUTPUT_DIR}/$<CONFIGURATION>/data/obs-scripting/${_bit_suffix}$<TARGET_FILE_NAME:${additional_target}>"
  32. VERBATIM)
  33. endfunction()
  34. install_plugin_bin_swig(obs-scripting obslua)