CMakeLists.txt 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  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. settings-basic-video.cpp
  41. wx-subclass.cpp
  42. wx-wrappers.cpp
  43. obs-app.cpp
  44. forms/OBSWindows.cpp
  45. ${obs_platform_src})
  46. if(APPLE)
  47. set_target_properties(obs PROPERTIES
  48. MACOSX_BUNDLE ${BUILD_APP_BUNDLE})
  49. endif()