CMakeLists.txt 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332
  1. # Ask CMake to perform builds in a temporary directory for all of these.
  2. # We also use EXCLUDE_FROM_ALL to ensure we only build and install what we want
  3. #ZLIB
  4. get_filename_component(ZLIB_ROOT "zlib" REALPATH BASE_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
  5. set(ZLIB_ROOT "${ZLIB_ROOT}" CACHE STRING "ZLib root location" FORCE)
  6. mark_as_advanced(ZLIB_ROOT)
  7. # Png depends on zlib
  8. add_subdirectory(zlib ${TORQUE_LIB_TARG_DIRECTORY}/zlib EXCLUDE_FROM_ALL)
  9. if(APPLE)
  10. enable_language(OBJC)
  11. advanced_option(AL_ALEXT_PROTOTYPES "Use Extended OpenAL options" OFF)
  12. else()
  13. advanced_option(AL_ALEXT_PROTOTYPES "Use Extended OpenAL options" ON)
  14. endif()
  15. if(AL_ALEXT_PROTOTYPES)
  16. addDef( "AL_ALEXT_PROTOTYPES" )
  17. endif()
  18. #SDL
  19. set(SDL_SHARED ON CACHE BOOL "Build a shared version of the library" FORCE)
  20. set(SDL_STATIC OFF CACHE BOOL "Build a static version of the library" FORCE)
  21. mark_as_advanced(SDL2MAIN_LIBRARY)
  22. mark_as_advanced(SDL2_CORE_LIBRARY)
  23. mark_as_advanced(SDL2_INCLUDE_DIR)
  24. mark_as_advanced(SDL2_DISABLE_INSTALL)
  25. mark_as_advanced(SDL2_DISABLE_SDL2MAIN)
  26. mark_as_advanced(SDL2_DISABLE_UNINSTALL)
  27. mark_as_advanced(SDL_3DNOW)
  28. mark_as_advanced(SDL_ALSA)
  29. mark_as_advanced(SDL_ALTIVEC)
  30. mark_as_advanced(SDL_ARMNEON)
  31. mark_as_advanced(SDL_ARMSIMD)
  32. mark_as_advanced(SDL_ARTS)
  33. mark_as_advanced(SDL_ASAN)
  34. mark_as_advanced(SDL_ASSEMBLY)
  35. mark_as_advanced(SDL_ASSERTIONS)
  36. mark_as_advanced(SDL_ATOMIC)
  37. mark_as_advanced(SDL_AUDIO)
  38. mark_as_advanced(SDL_BACKGROUNDING_SIGNAL)
  39. mark_as_advanced(SDL_CCACHE)
  40. mark_as_advanced(SDL_CLOCK_GETTIME)
  41. mark_as_advanced(SDL_COCOA)
  42. mark_as_advanced(SDL_CPUINFO)
  43. mark_as_advanced(SDL_DIRECTFB)
  44. mark_as_advanced(SDL_DIRECTX)
  45. mark_as_advanced(SDL_DISKAUDIO)
  46. mark_as_advanced(SDL_DUMMYAUDIO)
  47. mark_as_advanced(SDL_DUMMYVIDEO)
  48. mark_as_advanced(SDL_ESD)
  49. mark_as_advanced(SDL_EVENTS)
  50. mark_as_advanced(SDL_FILE)
  51. mark_as_advanced(SDL_FILESYSTEM)
  52. mark_as_advanced(SDL_FORCE_STATIC_VCRT)
  53. mark_as_advanced(SDL_FOREGROUNDING_SIGNAL)
  54. mark_as_advanced(SDL_FUSIONSOUND)
  55. mark_as_advanced(SDL_GCC_ATOMICS)
  56. mark_as_advanced(SDL_HAPTIC)
  57. mark_as_advanced(SDL_HIDAPI)
  58. mark_as_advanced(SDL_HIDAPI_JOYSTICK)
  59. mark_as_advanced(SDL_HIDAPI_LIBUSB)
  60. mark_as_advanced(SDL_INSTALL_TESTS)
  61. mark_as_advanced(SDL_JACK)
  62. mark_as_advanced(SDL_JOYSTICK)
  63. mark_as_advanced(SDL_KMSDRM)
  64. mark_as_advanced(SDL_LIBC)
  65. mark_as_advanced(SDL_LIBSAMPLERATE)
  66. mark_as_advanced(SDL_LIBUDEV)
  67. mark_as_advanced(SDL_LOADSO)
  68. mark_as_advanced(SDL_LOCALE)
  69. mark_as_advanced(SDL_METAL)
  70. mark_as_advanced(SDL_MISC)
  71. mark_as_advanced(SDL_MMX)
  72. mark_as_advanced(SDL_NAS)
  73. mark_as_advanced(SDL_OFFSCREEN)
  74. mark_as_advanced(SDL_OPENGL)
  75. mark_as_advanced(SDL_OPENGLES)
  76. mark_as_advanced(SDL_PIPEWIRE)
  77. mark_as_advanced(SDL_POWER)
  78. mark_as_advanced(SDL_PTHREADS)
  79. mark_as_advanced(SDL_PULSEAUDIO)
  80. mark_as_advanced(SDL_RENDER)
  81. mark_as_advanced(SDL_RENDER_D3D)
  82. mark_as_advanced(SDL_RENDER_METAL)
  83. mark_as_advanced(SDL_RPATH)
  84. mark_as_advanced(SDL_RPI)
  85. mark_as_advanced(SDL_SENSOR)
  86. mark_as_advanced(SDL_SHARED)
  87. mark_as_advanced(SDL_SNDIO)
  88. mark_as_advanced(SDL_SSE)
  89. mark_as_advanced(SDL_SSE2)
  90. mark_as_advanced(SDL_SSE3)
  91. mark_as_advanced(SDL_SSEMATH)
  92. mark_as_advanced(SDL_STATIC)
  93. mark_as_advanced(SDL_SYSTEM_ICONV)
  94. mark_as_advanced(SDL_TEST)
  95. mark_as_advanced(SDL_TESTS)
  96. mark_as_advanced(SDL_THREADS)
  97. mark_as_advanced(SDL_TIMERS)
  98. mark_as_advanced(SDL_VENDOR_INFO)
  99. mark_as_advanced(SDL_VIDEO)
  100. mark_as_advanced(SDL_VIRTUAL_JOYSTICK)
  101. mark_as_advanced(SDL_VIVANTE)
  102. mark_as_advanced(SDL_VULKAN)
  103. mark_as_advanced(SDL_WASAPI)
  104. mark_as_advanced(SDL_WAYLAND)
  105. mark_as_advanced(SDL_WERROR)
  106. mark_as_advanced(SDL_X11)
  107. mark_as_advanced(SDL_XINPUT)
  108. mark_as_advanced(SDL2_DIR)
  109. add_subdirectory(sdl ${TORQUE_LIB_TARG_DIRECTORY}/sdl2 EXCLUDE_FROM_ALL)
  110. add_subdirectory(nativeFileDialogs ${TORQUE_LIB_TARG_DIRECTORY}/nfd EXCLUDE_FROM_ALL)
  111. add_subdirectory(convexMath ${TORQUE_LIB_TARG_DIRECTORY}/convexMath EXCLUDE_FROM_ALL)
  112. # Assimp
  113. advanced_option(ASSIMP_HUNTER_ENABLED "Enable Hunter package manager support" OFF)
  114. advanced_option(ASSIMP_BUILD_NO_OWN_ZLIB "" ON)
  115. advanced_option(BUILD_SHARED_LIBS "Build package with shared libraries." OFF )
  116. advanced_option(ASSIMP_BUILD_FRAMEWORK "Build package as Mac OS X Framework bundle." OFF )
  117. advanced_option(ASSIMP_DOUBLE_PRECISION "Set to ON to enable double precision processing" OFF )
  118. advanced_option(ASSIMP_OPT_BUILD_PACKAGES "Set to ON to generate CPack configuration files and packaging targets" OFF )
  119. advanced_option(ASSIMP_ANDROID_JNIIOSYSTEM "Android JNI IOSystem support is active" OFF )
  120. advanced_option(ASSIMP_NO_EXPORT "Disable Assimp's export functionality." OFF )
  121. advanced_option(ASSIMP_BUILD_ASSIMP_TOOLS "If the supplementary tools for Assimp are built in addition to the library." OFF )
  122. advanced_option(ASSIMP_BUILD_SAMPLES "If the official samples are built as well (needs Glut)." OFF )
  123. advanced_option(ASSIMP_BUILD_TESTS "If the test suite for Assimp is built in addition to the library." OFF )
  124. advanced_option(ASSIMP_COVERALLS "Enable this to measure test coverage." OFF )
  125. advanced_option(ASSIMP_INSTALL "Disable this if you want to use assimp as a submodule." OFF )
  126. advanced_option(ASSIMP_WARNINGS_AS_ERRORS "Treat all warnings as errors." OFF )
  127. advanced_option(ASSIMP_ASAN "Enable AddressSanitizer." OFF )
  128. advanced_option(ASSIMP_UBSAN "Enable Undefined Behavior sanitizer." OFF )
  129. advanced_option(ASSIMP_BUILD_DOCS "Build documentation using Doxygen." OFF )
  130. advanced_option(ASSIMP_INJECT_DEBUG_POSTFIX "Inject debug postfix in .a/.so/.dll lib names" ON )
  131. advanced_option(ASSIMP_IGNORE_GIT_HASH "Don't call git to get the hash." ON )
  132. advanced_option(ASSIMP_BUILD_ZLIB "Build your own zlib" OFF )
  133. advanced_option(ASSIMP_ANDROID_JNIIOSYSTEM "Android JNI IOSystem support is active" ON)
  134. advanced_option(ASSIMP_BUILD_DRACO "If the Draco libraries are to be built. Primarily for glTF" OFF )
  135. advanced_option(ASSIMP_BUILD_NONFREE_C4D_IMPORTER "Build the C4D importer, which relies on the non-free Cineware SDK." OFF)
  136. IF(MSVC)
  137. advanced_option( ASSIMP_INSTALL_PDB "Install MSVC debug files." ON )
  138. endif()
  139. advanced_option(ASSIMP_RAPIDJSON_NO_MEMBER_ITERATOR "Suppress rapidjson warning on MSVC (NOTE: breaks android build)" ON )
  140. advanced_option(ASSIMP_BUILD_ALL_IMPORTERS_BY_DEFAULT "default value of all ASSIMP_BUILD_XXX_IMPORTER values" ON)
  141. advanced_option(ASSIMP_BUILD_ALL_EXPORTERS_BY_DEFAULT "default value of all ASSIMP_BUILD_XXX_EXPORTER values" ON)
  142. mark_as_advanced(ASSIMP_ARCHIVE_OUTPUT_DIRECTORY)
  143. mark_as_advanced(ASSIMP_BIN_INSTALL_DIR)
  144. mark_as_advanced(ASSIMP_LIB_INSTALL_DIR)
  145. mark_as_advanced(ASSIMP_INCLUDE_INSTALL_DIR)
  146. mark_as_advanced(ASSIMP_LIBRARY_OUTPUT_DIRECTORY)
  147. mark_as_advanced(ASSIMP_LIBRARY_SUFFIX)
  148. mark_as_advanced(ASSIMP_PACKAGE_VERSION)
  149. mark_as_advanced(ASSIMP_RUNTIME_OUTPUT_DIRECTORY)
  150. add_subdirectory(assimp ${TORQUE_LIB_TARG_DIRECTORY}/assimp EXCLUDE_FROM_ALL)
  151. target_compile_definitions(assimp PUBLIC ASSIMP_BUILD_NO_OWN_ZLIB)
  152. if (TORQUE_CPU_ARM32 OR TORQUE_CPU_ARM64)
  153. if(NOT APPLE)
  154. set(PNG_ARM_NEON on CACHE BOOL "" FORCE)
  155. endif(NOT APPLE)
  156. endif (TORQUE_CPU_ARM32 OR TORQUE_CPU_ARM64)
  157. if(APPLE)
  158. set(PNG_ARM_NEON off CACHE BOOL "" FORCE)
  159. endif()
  160. #PNG STB Update: Not sure if these are still needed.
  161. set(PNG_STATIC on CACHE BOOL "" FORCE)
  162. mark_as_advanced(PNG_STATIC)
  163. set(PNG_SHARED off CACHE BOOL "" FORCE)
  164. mark_as_advanced(PNG_SHARED)
  165. set(PNG_BUILD_ZLIB on CACHE BOOL "" FORCE)
  166. mark_as_advanced(PNG_BUILD_ZLIB)
  167. set(PNG_TESTS off CACHE BOOL "" FORCE)
  168. mark_as_advanced(PNG_TESTS)
  169. set(PNG_HARDWARE_OPTIMIZATIONS on CACHE BOOL "" FORCE)
  170. mark_as_advanced(PNG_HARDWARE_OPTIMIZATIONS)
  171. if(APPLE)
  172. set(PNG_FRAMEWORK on CACHE BOOL "" FORCE)
  173. addDef(PNG_DEBUG Debug)
  174. endif()
  175. mark_as_advanced(PNG_DEBUG)
  176. mark_as_advanced(PNG_FRAMEWORK)
  177. mark_as_advanced(PNG_PREFIX)
  178. add_subdirectory(tinyxml2 ${TORQUE_LIB_TARG_DIRECTORY}/tinyxml2 EXCLUDE_FROM_ALL)
  179. add_subdirectory(opcode ${TORQUE_LIB_TARG_DIRECTORY}/opcode EXCLUDE_FROM_ALL)
  180. add_subdirectory(pcre ${TORQUE_LIB_TARG_DIRECTORY}/pcre EXCLUDE_FROM_ALL)
  181. add_subdirectory(squish ${TORQUE_LIB_TARG_DIRECTORY}/squish EXCLUDE_FROM_ALL)
  182. add_subdirectory(collada ${TORQUE_LIB_TARG_DIRECTORY}/collada EXCLUDE_FROM_ALL)
  183. add_subdirectory(glad ${TORQUE_LIB_TARG_DIRECTORY}/glad EXCLUDE_FROM_ALL)
  184. #hidden options
  185. if(TORQUE_SFX_OPENAL)
  186. advanced_option(TORQUE_OGGVORBIS "Enable OGG Vorbis" ON)
  187. advanced_option(ALSOFT_EAX "Enable legacy EAX extensions" ${WIN32})
  188. advanced_option(ALSOFT_UPDATE_BUILD_VERSION "Update git build version info" ON)
  189. mark_as_advanced(ALSOFT_BACKEND_COREAUDIO)
  190. advanced_option(ALSOFT_BACKEND_DSOUND "Enable DirectSound backend" OFF)
  191. advanced_option(ALSOFT_BACKEND_JACK "Enable Jack backend" OFF)
  192. advanced_option(ALSOFT_BACKEND_OBOE "Enable OBOE backend" OFF)
  193. advanced_option(ALSOFT_BACKEND_OPENSL "Enable OpenSL backend" OFF)
  194. advanced_option(ALSOFT_BACKEND_PIPEWIRE "Enable PipeWire backend" OFF)
  195. advanced_option(ALSOFT_BACKEND_PORTAUDIO "Enable PortAudio backend" OFF)
  196. advanced_option(ALSOFT_BACKEND_PULSEAUDIO "Enable PulseAudio backend" OFF)
  197. advanced_option(ALSOFT_BACKEND_SDL2 "Use SDL2 Backend" ON)
  198. advanced_option(ALSOFT_BACKEND_WASAPI "Enable WASAPI backend" OFF)
  199. advanced_option(ALSOFT_BACKEND_WAVE "Enable Wave backend" OFF)
  200. advanced_option(ALSOFT_BACKEND_WINMM "Enable WinMM backend" OFF)
  201. mark_as_advanced(ALSOFT_BUILD_ROUTER)
  202. mark_as_advanced(ALSOFT_CPUEXT_NEON)
  203. mark_as_advanced(ALSOFT_CPUEXT_SSE)
  204. mark_as_advanced(ALSOFT_CPUEXT_SSE2)
  205. mark_as_advanced(ALSOFT_CPUEXT_SSE3)
  206. mark_as_advanced(ALSOFT_CPUEXT_SSE4_1)
  207. mark_as_advanced(ALSOFT_DLOPEN)
  208. mark_as_advanced(ALSOFT_EAX)
  209. advanced_option(ALSOFT_EMBED_HRTF_DATA "Embed the HRTF data files (increases library footprint)" OFF)
  210. advanced_option(ALSOFT_EXAMPLES "Build example programs" OFF)
  211. advanced_option(ALSOFT_INSTALL "Install OpenAL" OFF) # we move it ourselves
  212. advanced_option(ALSOFT_INSTALL_CONFIG "Install alsoft.conf sample configuration file" OFF)
  213. advanced_option(ALSOFT_INSTALL_HRTF_DATA "Install HRTF data files" OFF)
  214. advanced_option(ALSOFT_INSTALL_AMBDEC_PRESETS "Install AmbDec preset files" OFF)
  215. advanced_option(ALSOFT_INSTALL_EXAMPLES "Install example programs (alplay, alstream, ...)" OFF)
  216. advanced_option(ALSOFT_INSTALL_UTILS "Install utility programs (openal-info, alsoft-config, ...)" OFF)
  217. mark_as_advanced(ALSOFT_UPDATE_BUILD_VERSION)
  218. mark_as_advanced(ALSOFT_NO_CONFIG_UTIL)
  219. mark_as_advanced(ALSOFT_REQUIRE_COREAUDIO)
  220. mark_as_advanced(ALSOFT_REQUIRE_DSOUND)
  221. mark_as_advanced(ALSOFT_REQUIRE_JACK)
  222. mark_as_advanced(ALSOFT_REQUIRE_NEON)
  223. mark_as_advanced(ALSOFT_REQUIRE_OBOE)
  224. mark_as_advanced(ALSOFT_REQUIRE_OPENSL)
  225. mark_as_advanced(ALSOFT_REQUIRE_PIPEWIRE)
  226. mark_as_advanced(ALSOFT_REQUIRE_PORTAUDIO)
  227. mark_as_advanced(ALSOFT_REQUIRE_PULSEAUDIO)
  228. mark_as_advanced(ALSOFT_REQUIRE_SDL2)
  229. mark_as_advanced(ALSOFT_REQUIRE_SSE)
  230. mark_as_advanced(ALSOFT_REQUIRE_SSE2)
  231. mark_as_advanced(ALSOFT_REQUIRE_SSE3)
  232. mark_as_advanced(ALSOFT_REQUIRE_SSE4_1)
  233. mark_as_advanced(ALSOFT_REQUIRE_WASAPI)
  234. mark_as_advanced(ALSOFT_REQUIRE_WINMM)
  235. mark_as_advanced(ALSOFT_SEARCH_INSTALL_DATADIR)
  236. mark_as_advanced(ALSOFT_TESTS)
  237. mark_as_advanced(ALSOFT_UTILS)
  238. mark_as_advanced(ALSOFT_WERROR)
  239. endif()
  240. advanced_option(INSTALL_DOCS "" OFF)
  241. advanced_option(INSTALL_PKG_CONFIG_MODULE "" OFF)
  242. advanced_option(INSTALL_CMAKE_PACKAGE_MODULE "" OFF)
  243. advanced_option(BUILD_TESTING "" OFF)
  244. add_subdirectory(libogg ${TORQUE_LIB_TARG_DIRECTORY}/libogg )
  245. add_subdirectory(libvorbis ${TORQUE_LIB_TARG_DIRECTORY}/libvorbis EXCLUDE_FROM_ALL)
  246. advanced_option(INSTALL_PKGCONFIG_MODULES "" OFF)
  247. advanced_option(INSTALL_CMAKE_CONFIG_MODULE "" OFF)
  248. add_subdirectory(flac ${TORQUE_LIB_TARG_DIRECTORY}/flac EXCLUDE_FROM_ALL)
  249. advanced_option(INSTALL_DOCS "" OFF)
  250. advanced_option(OPUS_INSTALL_PKG_CONFIG_MODULE "" OFF)
  251. advanced_option(OPUS_INSTALL_CMAKE_CONFIG_MODULE "" OFF)
  252. mark_as_advanced(OPUS_ASSERTIONS)
  253. mark_as_advanced(OPUS_BUILD_PROGRAMS)
  254. mark_as_advanced(OPUS_BUILD_SHARED_LIBRARY)
  255. mark_as_advanced(OPUS_BUILD_TESTING)
  256. mark_as_advanced(OPUS_CHECK_ASM)
  257. mark_as_advanced(OPUS_CUSTOM_MODES)
  258. mark_as_advanced(OPUS_DISABLE_INTRINSICS)
  259. mark_as_advanced(OPUS_ENABLE_FLOAT_API)
  260. mark_as_advanced(OPUS_FIXED_POINT)
  261. mark_as_advanced(OPUS_FLOAT_APPROX)
  262. mark_as_advanced(OPUS_FUZZING)
  263. mark_as_advanced(OPUS_HARDENING)
  264. mark_as_advanced(OPUS_STACK_PROTECTOR)
  265. mark_as_advanced(OPUS_USE_ALLOCA)
  266. mark_as_advanced(OPUS_X86_MAY_HAVE_AVX)
  267. mark_as_advanced(OPUS_X86_MAY_HAVE_SSE)
  268. mark_as_advanced(OPUS_X86_MAY_HAVE_SSE2)
  269. mark_as_advanced(OPUS_X86_MAY_HAVE_SSE4_1)
  270. mark_as_advanced(OPUS_X86_PRESUME_AVX)
  271. mark_as_advanced(OPUS_X86_PRESUME_SSE)
  272. mark_as_advanced(OPUS_X86_PRESUME_SSE2)
  273. mark_as_advanced(OPUS_X86_PRESUME_SSE4_1)
  274. add_subdirectory(opus ${TORQUE_LIB_TARG_DIRECTORY}/opus EXCLUDE_FROM_ALL)
  275. add_subdirectory(libtheora ${TORQUE_LIB_TARG_DIRECTORY}/libtheora EXCLUDE_FROM_ALL)
  276. mark_as_advanced(PULSEAUDIO_INCLUDE_DIR)
  277. mark_as_advanced(PULSEAUDIO_LIBRARY)
  278. advanced_option(BUILD_PROGRAMS "" OFF)
  279. advanced_option(BUILD_EXAMPLES "" OFF)
  280. advanced_option(ENABLE_CPACK "" OFF)
  281. advanced_option(ENABLE_PACKAGE_CONFIG "" OFF)
  282. advanced_option(INSTALL_PKGCONFIG_MODULE "" OFF)
  283. advanced_option(ENABLE_MPEG "" OFF)
  284. advanced_option(ENABLE_EXPERIMENTAL "" OFF)
  285. add_subdirectory(libsndfile ${TORQUE_LIB_TARG_DIRECTORY}/libsndfile EXCLUDE_FROM_ALL)
  286. if(TORQUE_TESTING)
  287. add_subdirectory(gtest ${TORQUE_LIB_TARG_DIRECTORY}/gtest EXCLUDE_FROM_ALL)
  288. endif()
  289. #endif()
  290. #misc randoms
  291. mark_as_advanced(WINDRES)
  292. mark_as_advanced(AUDIOUNIT_INCLUDE_DIR)
  293. mark_as_advanced(CCACHE_BINARY)
  294. mark_as_advanced(COREAUDIO_FRAMEWORK)
  295. mark_as_advanced(FORCE_STATIC_VCRT)
  296. mark_as_advanced(HAVE_GIT)
  297. mark_as_advanced(LIBRARY_SUFFIX)
  298. mark_as_advanced(USE_STATIC_CRT)
  299. mark_as_advanced(BUILD_CXXLIBS)
  300. mark_as_advanced(BUILD_DOCS)
  301. mark_as_advanced(BUILD_REGTEST)
  302. mark_as_advanced(BUILD_UTILS)
  303. mark_as_advanced(ENABLE_64_BIT_WORDS)
  304. mark_as_advanced(ENABLE_BOW_DOCS)
  305. mark_as_advanced(ENABLE_EXTERNAL_LIBS)
  306. mark_as_advanced(WITH_ASM)
  307. mark_as_advanced(WITH_AVX)
  308. mark_as_advanced(WITH_FORTIFY_SOURCE)
  309. mark_as_advanced(WITH_OGG)
  310. mark_as_advanced(WITH_STACK_PROTECTOR)