os-windows.cmake 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. if(NOT TARGET OBS::blake2)
  2. add_subdirectory("${CMAKE_SOURCE_DIR}/deps/blake2" "${CMAKE_BINARY_DIR}/deps/blake2")
  3. endif()
  4. if(NOT TARGET OBS::w32-pthreads)
  5. add_subdirectory("${CMAKE_SOURCE_DIR}/deps/w32-pthreads" "${CMAKE_BINARY_DIR}/deps/w32-pthreads")
  6. endif()
  7. find_package(MbedTLS)
  8. find_package(Detours REQUIRED)
  9. configure_file(cmake/windows/obs.rc.in obs.rc)
  10. target_sources(
  11. obs-studio
  12. PRIVATE obs.rc
  13. platform-windows.cpp
  14. win-dll-blocklist.c
  15. cmake/windows/obs.manifest
  16. update/crypto-helpers-mbedtls.cpp
  17. update/crypto-helpers.hpp
  18. update/shared-update.cpp
  19. update/shared-update.hpp
  20. update/update-helpers.cpp
  21. update/update-helpers.hpp
  22. update/update-window.cpp
  23. update/update-window.hpp
  24. update/win-update.cpp
  25. update/win-update.hpp)
  26. target_link_libraries(obs-studio PRIVATE crypt32 OBS::blake2 OBS::w32-pthreads MbedTLS::MbedTLS Detours::Detours)
  27. target_compile_options(obs-studio PRIVATE PSAPI_VERSION=2)
  28. target_link_options(obs-studio PRIVATE /IGNORE:4098 /IGNORE:4099)
  29. add_library(obs-update-helpers INTERFACE)
  30. add_library(OBS::update-helpers ALIAS obs-update-helpers)
  31. target_sources(obs-update-helpers INTERFACE win-update/win-update-helpers.cpp win-update/win-update-helpers.hpp)
  32. target_include_directories(obs-update-helpers INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/win-update")
  33. add_subdirectory(win-update/updater)
  34. set_property(
  35. TARGET obs-studio
  36. APPEND
  37. PROPERTY AUTORCC_OPTIONS --format-version 1)
  38. set_property(DIRECTORY ${CMAKE_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT obs-studio)
  39. set_target_properties(
  40. obs-studio
  41. PROPERTIES
  42. WIN32_EXECUTABLE TRUE
  43. VS_DEBUGGER_COMMAND
  44. "${CMAKE_BINARY_DIR}/rundir/$<CONFIG>/$<$<BOOL:${OBS_WINDOWS_LEGACY_DIRS}>:bin/>$<TARGET_FILE_NAME:obs-studio>"
  45. VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/rundir/$<CONFIG>$<$<BOOL:${OBS_WINDOWS_LEGACY_DIRS}>:/bin>")