CMakePresets.json 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  1. {
  2. "version": 8,
  3. "cmakeMinimumRequired": {
  4. "major": 3,
  5. "minor": 28,
  6. "patch": 0
  7. },
  8. "configurePresets": [
  9. {
  10. "name": "environmentVars",
  11. "hidden": true,
  12. "cacheVariables": {
  13. "RESTREAM_CLIENTID": {"type": "STRING", "value": "$penv{RESTREAM_CLIENTID}"},
  14. "RESTREAM_HASH": {"type": "STRING", "value": "$penv{RESTREAM_HASH}"},
  15. "TWITCH_CLIENTID": {"type": "STRING", "value": "$penv{TWITCH_CLIENTID}"},
  16. "TWITCH_HASH": {"type": "STRING", "value": "$penv{TWITCH_HASH}"},
  17. "YOUTUBE_CLIENTID": {"type": "STRING", "value": "$penv{YOUTUBE_CLIENTID}"},
  18. "YOUTUBE_CLIENTID_HASH": {"type": "STRING", "value": "$penv{YOUTUBE_CLIENTID_HASH}"},
  19. "YOUTUBE_SECRET": {"type": "STRING", "value": "$penv{YOUTUBE_SECRET}"},
  20. "YOUTUBE_SECRET_HASH": {"type": "STRING", "value": "$penv{YOUTUBE_SECRET_HASH}"}
  21. }
  22. },
  23. {
  24. "name": "macos",
  25. "displayName": "macOS",
  26. "description": "Default macOS build (single architecture only)",
  27. "inherits": ["environmentVars"],
  28. "condition": {
  29. "type": "equals",
  30. "lhs": "${hostSystemName}",
  31. "rhs": "Darwin"
  32. },
  33. "generator": "Xcode",
  34. "binaryDir": "${sourceDir}/build_macos",
  35. "cacheVariables": {
  36. "CMAKE_OSX_DEPLOYMENT_TARGET": {"type": "STRING", "value": "12.0"},
  37. "OBS_CODESIGN_IDENTITY": {"type": "STRING", "value": "$penv{CODESIGN_IDENT}"},
  38. "OBS_CODESIGN_TEAM": {"type": "STRING", "value": "$penv{CODESIGN_TEAM}"},
  39. "OBS_PROVISIONING_PROFILE": {"type": "STRING", "value": "$penv{PROVISIONING_PROFILE}"},
  40. "VIRTUALCAM_DEVICE_UUID": {"type": "STRING", "value": "7626645E-4425-469E-9D8B-97E0FA59AC75"},
  41. "VIRTUALCAM_SINK_UUID": {"type": "STRING", "value": "A3F16177-7044-4DD8-B900-72E2419F7A9A"},
  42. "VIRTUALCAM_SOURCE_UUID": {"type": "STRING", "value": "A8D7B8AA-65AD-4D21-9C42-66480DBFA8E1"},
  43. "SPARKLE_APPCAST_URL": {"type": "STRING", "value": "https://obsproject.com/osx_update/updates_$(ARCHS)_v2.xml"},
  44. "SPARKLE_PUBLIC_KEY": {"type": "STRING", "value": "HQ5/Ba9VHOuEWaM0jtVjZzgHKFJX9YTl+HNVpgNF0iM="},
  45. "ENABLE_BROWSER": true
  46. }
  47. },
  48. {
  49. "name": "macos-ci",
  50. "displayName": "macOS (CI)",
  51. "description": "CI macOS build (single architecture only)",
  52. "inherits": ["macos"],
  53. "warnings": {"dev": true, "deprecated": true},
  54. "cacheVariables": {
  55. "CMAKE_COMPILE_WARNING_AS_ERROR": true,
  56. "ENABLE_CCACHE": true
  57. }
  58. },
  59. {
  60. "name": "ubuntu",
  61. "displayName": "Ubuntu",
  62. "description": "obs-studio for Ubuntu",
  63. "inherits": ["environmentVars"],
  64. "condition": {
  65. "type": "equals",
  66. "lhs": "${hostSystemName}",
  67. "rhs": "Linux"
  68. },
  69. "binaryDir": "${sourceDir}/build_ubuntu",
  70. "generator": "Ninja",
  71. "warnings": {"dev": true, "deprecated": true},
  72. "cacheVariables": {
  73. "CMAKE_BUILD_TYPE": "Debug",
  74. "CMAKE_INSTALL_LIBDIR": "lib/CMAKE_SYSTEM_PROCESSOR-linux-gnu",
  75. "ENABLE_AJA": false,
  76. "ENABLE_VLC": true,
  77. "ENABLE_WAYLAND": true,
  78. "ENABLE_WEBRTC": false
  79. }
  80. },
  81. {
  82. "name": "ubuntu-ci",
  83. "inherits": ["ubuntu"],
  84. "cacheVariables": {
  85. "CMAKE_BUILD_TYPE": "RelWithDebInfo",
  86. "CMAKE_COMPILE_WARNING_AS_ERROR": true,
  87. "CMAKE_COLOR_DIAGNOSTICS": true,
  88. "ENABLE_CCACHE": true
  89. }
  90. },
  91. {
  92. "name": "windows-x64",
  93. "displayName": "Windows x64",
  94. "description": "Default Windows build (x64)",
  95. "inherits": ["environmentVars"],
  96. "condition": {
  97. "type": "equals",
  98. "lhs": "${hostSystemName}",
  99. "rhs": "Windows"
  100. },
  101. "architecture": "x64,version=10.0.22621.0",
  102. "binaryDir": "${sourceDir}/build_x64",
  103. "generator": "Visual Studio 17 2022",
  104. "cacheVariables": {
  105. "GPU_PRIORITY_VAL": {"type": "STRING", "value": "$penv{GPU_PRIORITY_VAL}"},
  106. "VIRTUALCAM_GUID": {"type": "STRING", "value": "A3FCE0F5-3493-419F-958A-ABA1250EC20B"},
  107. "ENABLE_BROWSER": true
  108. }
  109. },
  110. {
  111. "name": "windows-ci-x64",
  112. "displayName": "Windows x64 (CI)",
  113. "description": "CI Windows build (x64)",
  114. "inherits": ["windows-x64"],
  115. "warnings": {"dev": true, "deprecated": true},
  116. "cacheVariables": {
  117. "CMAKE_COMPILE_WARNING_AS_ERROR": true
  118. }
  119. },
  120. {
  121. "name": "windows-arm64",
  122. "displayName": "Windows ARM64",
  123. "description": "Default Windows build (ARM64)",
  124. "inherits": ["environmentVars"],
  125. "condition": {
  126. "type": "equals",
  127. "lhs": "${hostSystemName}",
  128. "rhs": "Windows"
  129. },
  130. "architecture": "ARM64,version=10.0.22621.0",
  131. "binaryDir": "${sourceDir}/build_arm64",
  132. "generator": "Visual Studio 17 2022",
  133. "cacheVariables": {
  134. "GPU_PRIORITY_VAL": {"type": "STRING", "value": "$penv{GPU_PRIORITY_VAL}"},
  135. "VIRTUALCAM_GUID": {"type": "STRING", "value": "A3FCE0F5-3493-419F-958A-ABA1250EC20B"},
  136. "ENABLE_AJA": false,
  137. "ENABLE_BROWSER": true,
  138. "ENABLE_SCRIPTING": false,
  139. "ENABLE_VST": false
  140. }
  141. },
  142. {
  143. "name": "windows-ci-arm64",
  144. "displayName": "Windows ARM64 (CI)",
  145. "description": "CI Windows build (ARM64)",
  146. "inherits": ["windows-arm64"],
  147. "warnings": {"dev": true, "deprecated": true},
  148. "cacheVariables": {
  149. "CMAKE_COMPILE_WARNING_AS_ERROR": true
  150. }
  151. }
  152. ],
  153. "buildPresets": [
  154. {
  155. "name": "windows-x64",
  156. "configurePreset": "windows-x64",
  157. "displayName": "Windows 64-bit",
  158. "description": "Windows build for 64-bit (aka x64)",
  159. "configuration": "RelWithDebInfo"
  160. },
  161. {
  162. "name": "windows-arm64",
  163. "configurePreset": "windows-arm64",
  164. "displayName": "Windows on ARM 64-bit",
  165. "description": "Windows build for ARM 64-bit (aka ARM64)",
  166. "configuration": "RelWithDebInfo"
  167. }
  168. ]
  169. }