CMakeLists.txt 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. find_package(wxWidgets COMPONENTS core base REQUIRED)
  2. include("${wxWidgets_USE_FILE}")
  3. function(wx_required_version)
  4. include(CheckCXXSourceCompiles)
  5. set(WX_CHECK_DEFINITIONS "")
  6. foreach(wxw_def ${wxWidgets_DEFINITIONS})
  7. set(WX_CHECK_DEFINITIONS "${WX_CHECK_DEFINITIONS} -D${wxw_def}")
  8. endforeach()
  9. set(CMAKE_REQUIRED_DEFINITIONS ${WX_CHECK_DEFINITIONS})
  10. set(CMAKE_REQUIRED_INCLUDES ${wxWidgets_INCLUDE_DIRS})
  11. set(CMAKE_REQUIRED_FLAGS ${wxWidgets_CXX_FLAGS})
  12. check_cxx_source_compiles("
  13. #include <wx/sysopt.h>
  14. #if (wxMINOR_VERSION < 9 && wxMAJOR_VERSION <= 2) || wxMAJOR_VERSION < 3
  15. #error
  16. #endif
  17. int main() {}"
  18. WX_REQUIRED_VERSION)
  19. if(NOT WX_REQUIRED_VERSION)
  20. message(SEND_ERROR "wxWidgets version 2.9 or later is required")
  21. endif()
  22. endfunction()
  23. wx_required_version()
  24. include_directories(SYSTEM ${obs_SOURCE_DIR}/libobs)
  25. link_libraries(${wxWidgets_LIBRARIES} libobs)
  26. if(WIN32)
  27. set(obs_platform_src
  28. platform-windows.cpp)
  29. elseif(APPLE)
  30. set(obs_platform_src
  31. platform-osx.cpp)
  32. elseif(UNIX)
  33. set(obs_platform_src
  34. platform-nix.cpp)
  35. endif()
  36. add_executable(obs
  37. window-main-basic.cpp
  38. window-settings-basic.cpp
  39. settings-basic-general.cpp
  40. wx-subclass.cpp
  41. wx-wrappers.cpp
  42. obs-app.cpp
  43. forms/OBSWindows.cpp
  44. ${obs_platform_src})
  45. if(APPLE)
  46. set_target_properties(obs PROPERTIES
  47. MACOSX_BUNDLE ${BUILD_APP_BUNDLE})
  48. endif()