Advertisement
Guest User

cmake-custom

a guest
Nov 22nd, 2017
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
CMake 30.72 KB | None | 0 0
  1. # CMake entry point
  2. cmake_minimum_required (VERSION 3.0)
  3. project (Tutorials)
  4.  
  5. find_package(OpenGL REQUIRED)
  6.  
  7.  
  8. if( CMAKE_BINARY_DIR STREQUAL CMAKE_SOURCE_DIR )
  9.     message( FATAL_ERROR "Please select another Build Directory ! (and give it a clever name, like bin_Visual2012_64bits/)" )
  10. endif()
  11. if( CMAKE_SOURCE_DIR MATCHES " " )
  12.     message( "Your Source Directory contains spaces. If you experience problems when compiling, this can be the cause." )
  13. endif()
  14. if( CMAKE_BINARY_DIR MATCHES " " )
  15.     message( "Your Build Directory contains spaces. If you experience problems when compiling, this can be the cause." )
  16. endif()
  17.  
  18.  
  19.  
  20. # Compile external dependencies
  21. add_subdirectory (external)
  22.  
  23. # On Visual 2005 and above, this module can set the debug working directory
  24. cmake_policy(SET CMP0026 OLD)
  25. list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/external/rpavlik-cmake-modules-fe2273")
  26. include(CreateLaunchers)
  27. include(MSVCMultipleProcessCompile) # /MP
  28.  
  29. if(INCLUDE_DISTRIB)
  30.     add_subdirectory(distrib)
  31. endif(INCLUDE_DISTRIB)
  32.  
  33.  
  34.  
  35. include_directories(
  36.     external/AntTweakBar-1.16/include/
  37.     external/glfw-3.1.2/include/GLFW/
  38.     external/glm-0.9.7.1/
  39.     external/glew-1.13.0/include/
  40.     external/assimp-3.0.1270/include/
  41.     external/bullet-2.81-rev2613/src/
  42.     .
  43. )
  44.  
  45. set(ALL_LIBS
  46.     ${OPENGL_LIBRARY}
  47.     glfw
  48.     GLEW_1130
  49. )
  50.  
  51. add_definitions(
  52.     -DTW_STATIC
  53.     -DTW_NO_LIB_PRAGMA
  54.     -DTW_NO_DIRECT3D
  55.     -DGLEW_STATIC
  56.     -D_CRT_SECURE_NO_WARNINGS
  57. )
  58.  
  59. # Tutorial 1
  60. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial01_first_window/")
  61. add_executable(tutorial01_first_window
  62.     tutorial01_first_window/tutorial01.cpp
  63. )
  64. target_link_libraries(tutorial01_first_window
  65.     ${ALL_LIBS}
  66. )
  67. # Xcode and Visual working directories
  68. #set_target_properties(tutorial01_first_window PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial01_first_window/")
  69. #create_target_launcher(tutorial01_first_window WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial01_first_window/")
  70.  
  71. # Tutorial 2
  72. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial02_red_triangle/")
  73. add_executable(tutorial02_red_triangle
  74.     tutorial02_red_triangle/tutorial02.cpp
  75.     common/shader.cpp
  76.     common/shader.hpp
  77.    
  78.     tutorial02_red_triangle/SimpleFragmentShader.fragmentshader
  79.     tutorial02_red_triangle/SimpleVertexShader.vertexshader
  80. )
  81. target_link_libraries(tutorial02_red_triangle
  82.     ${ALL_LIBS}
  83. )
  84. # Xcode and Visual working directories
  85. #set_target_properties(tutorial02_red_triangle PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial02_red_triangle/")
  86. #create_target_launcher(tutorial02_red_triangle WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial02_red_triangle/")
  87. #create_default_target_launcher(tutorial02_red_triangle WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial02_red_triangle/") # tut 1 is not the default or people would complain that tut 2 doesn't work
  88.  
  89. # Tutorial 3
  90. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial03_matrices/")
  91. add_executable(tutorial03_matrices
  92.     tutorial03_matrices/tutorial03.cpp
  93.     common/shader.cpp
  94.     common/shader.hpp
  95.  
  96.     tutorial03_matrices/SimpleTransform.vertexshader
  97.     tutorial03_matrices/SingleColor.fragmentshader
  98. )
  99. target_link_libraries(tutorial03_matrices
  100.     ${ALL_LIBS}
  101. )
  102. # Xcode and Visual working directories
  103. #set_target_properties(tutorial03_matrices PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial03_matrices/")
  104. #create_target_launcher(tutorial03_matrices WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial03_matrices/") # Visual
  105.  
  106. # Tutorial 4
  107. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial04_colored_cube/")
  108. add_executable(tutorial04_colored_cube
  109.     tutorial04_colored_cube/tutorial04.cpp
  110.     common/shader.cpp
  111.     common/shader.hpp
  112.    
  113.     tutorial04_colored_cube/TransformVertexShader.vertexshader
  114.     tutorial04_colored_cube/ColorFragmentShader.fragmentshader
  115. )
  116. target_link_libraries(tutorial04_colored_cube
  117.     ${ALL_LIBS}
  118. )
  119. # Xcode and Visual working directories
  120. #set_target_properties(tutorial04_colored_cube PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial04_colored_cube/")
  121. #create_target_launcher(tutorial04_colored_cube WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial04_colored_cube/")
  122.  
  123. # Tutorial 5
  124. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial05_textured_cube/")
  125. add_executable(tutorial05_textured_cube
  126.     tutorial05_textured_cube/tutorial05.cpp
  127.     common/shader.cpp
  128.     common/shader.hpp
  129.     common/texture.cpp
  130.     common/texture.hpp
  131.    
  132.     tutorial05_textured_cube/TransformVertexShader.vertexshader
  133.     tutorial05_textured_cube/TextureFragmentShader.fragmentshader
  134. )
  135. target_link_libraries(tutorial05_textured_cube
  136.     ${ALL_LIBS}
  137. )
  138. # Xcode and Visual working directories
  139. #set_target_properties(tutorial05_textured_cube PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial05_textured_cube/")
  140. #create_target_launcher(tutorial05_textured_cube WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial05_textured_cube/")
  141.  
  142. # Tutorial 6
  143. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial06_keyboard_and_mouse/")
  144. add_executable(tutorial06_keyboard_and_mouse
  145.     tutorial06_keyboard_and_mouse/tutorial06.cpp
  146.     common/shader.cpp
  147.     common/shader.hpp
  148.     common/controls.cpp
  149.     common/controls.hpp
  150.     common/texture.cpp
  151.     common/texture.hpp
  152.    
  153.     tutorial06_keyboard_and_mouse/TransformVertexShader.vertexshader
  154.     tutorial06_keyboard_and_mouse/TextureFragmentShader.fragmentshader
  155. )
  156. target_link_libraries(tutorial06_keyboard_and_mouse
  157.     ${ALL_LIBS}
  158. )
  159. # Xcode and Visual working directories
  160. #set_target_properties(tutorial06_keyboard_and_mouse PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial06_keyboard_and_mouse/")
  161. #create_target_launcher(tutorial06_keyboard_and_mouse WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial06_keyboard_and_mouse/")
  162.  
  163. # Tutorial 7
  164. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial07_model_loading/")
  165. add_executable(tutorial07_model_loading
  166.     tutorial07_model_loading/tutorial07.cpp
  167.     common/shader.cpp
  168.     common/shader.hpp
  169.     common/controls.cpp
  170.     common/controls.hpp
  171.     common/texture.cpp
  172.     common/texture.hpp
  173.     common/objloader.cpp
  174.     common/objloader.hpp
  175.  
  176.     tutorial07_model_loading/TransformVertexShader.vertexshader
  177.     tutorial07_model_loading/TextureFragmentShader.fragmentshader
  178. )
  179. target_link_libraries(tutorial07_model_loading
  180.     ${ALL_LIBS}
  181. )
  182. # Xcode and Visual working directories
  183. #set_target_properties(tutorial07_model_loading PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial07_model_loading/")
  184. #create_target_launcher(tutorial07_model_loading WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial07_model_loading/")
  185.  
  186. # Tutorial 8
  187. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial08_basic_shading/")
  188. add_executable(tutorial08_basic_shading
  189.     tutorial08_basic_shading/tutorial08.cpp
  190.     common/shader.cpp
  191.     common/shader.hpp
  192.     common/controls.cpp
  193.     common/controls.hpp
  194.     common/texture.cpp
  195.     common/texture.hpp
  196.     common/objloader.cpp
  197.     common/objloader.hpp
  198.    
  199.     tutorial08_basic_shading/StandardShading.vertexshader
  200.     tutorial08_basic_shading/StandardShading.fragmentshader
  201. )
  202. target_link_libraries(tutorial08_basic_shading
  203.     ${ALL_LIBS}
  204. )
  205. # Xcode and Visual working directories
  206. #set_target_properties(tutorial08_basic_shading PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial08_basic_shading/")
  207. #create_target_launcher(tutorial08_basic_shading WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial08_basic_shading/")
  208.  
  209. # Tutorial 9
  210. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial09_vbo_indexing/")
  211. add_executable(tutorial09_vbo_indexing
  212.     tutorial09_vbo_indexing/tutorial09.cpp
  213.     common/shader.cpp
  214.     common/shader.hpp
  215.     common/controls.cpp
  216.     common/controls.hpp
  217.     common/texture.cpp
  218.     common/texture.hpp
  219.     common/objloader.cpp
  220.     common/objloader.hpp
  221.     common/vboindexer.cpp
  222.     common/vboindexer.hpp
  223.    
  224.     tutorial09_vbo_indexing/StandardShading.vertexshader
  225.     tutorial09_vbo_indexing/StandardShading.fragmentshader
  226. )
  227. target_link_libraries(tutorial09_vbo_indexing
  228.     ${ALL_LIBS}
  229. )
  230. # Xcode and Visual working directories
  231. #set_target_properties(tutorial09_vbo_indexing PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial09_vbo_indexing/")
  232. #create_target_launcher(tutorial09_vbo_indexing WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial09_vbo_indexing/")
  233.  
  234. # Tutorial 9 - AssImp model loading
  235. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial09_vbo_indexing/")
  236. add_executable(tutorial09_AssImp
  237.     tutorial09_vbo_indexing/tutorial09_AssImp.cpp
  238.     common/shader.cpp
  239.     common/shader.hpp
  240.     common/controls.cpp
  241.     common/controls.hpp
  242.     common/texture.cpp
  243.     common/texture.hpp
  244.     common/objloader.cpp
  245.     common/objloader.hpp
  246.    
  247.     tutorial09_vbo_indexing/StandardShading.vertexshader
  248.     tutorial09_vbo_indexing/StandardShading.fragmentshader
  249. )
  250. target_link_libraries(tutorial09_AssImp
  251.     ${ALL_LIBS}
  252.     assimp
  253. )
  254. set_target_properties(tutorial09_AssImp PROPERTIES COMPILE_DEFINITIONS "USE_ASSIMP")
  255. # Xcode and Visual working directories
  256. #set_target_properties(tutorial09_AssImp PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial09_vbo_indexing/")
  257. #create_target_launcher(tutorial09_AssImp WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial09_vbo_indexing/")
  258.  
  259. # Tutorial 9 - several objects
  260. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial09_vbo_indexing/")
  261. add_executable(tutorial09_several_objects
  262.     tutorial09_vbo_indexing/tutorial09_several_objects.cpp
  263.     common/shader.cpp
  264.     common/shader.hpp
  265.     common/controls.cpp
  266.     common/controls.hpp
  267.     common/texture.cpp
  268.     common/texture.hpp
  269.     common/objloader.cpp
  270.     common/objloader.hpp
  271.     common/vboindexer.cpp
  272.     common/vboindexer.hpp
  273.    
  274.     tutorial09_vbo_indexing/StandardShading.vertexshader
  275.     tutorial09_vbo_indexing/StandardShading.fragmentshader
  276. )
  277. target_link_libraries(tutorial09_several_objects
  278.     ${ALL_LIBS}
  279. )
  280. # Xcode and Visual working directories
  281. #set_target_properties(tutorial09_several_objects PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial09_vbo_indexing/")
  282. #create_target_launcher(tutorial09_several_objects WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial09_vbo_indexing/")
  283.  
  284. # Tutorial 10
  285. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial10_transparency/")
  286. add_executable(tutorial10_transparency
  287.     tutorial10_transparency/tutorial10.cpp
  288.     common/shader.cpp
  289.     common/shader.hpp
  290.     common/controls.cpp
  291.     common/controls.hpp
  292.     common/texture.cpp
  293.     common/texture.hpp
  294.     common/objloader.cpp
  295.     common/objloader.hpp
  296.     common/vboindexer.cpp
  297.     common/vboindexer.hpp
  298.    
  299.     tutorial10_transparency/StandardShading.vertexshader
  300.     tutorial10_transparency/StandardTransparentShading.fragmentshader
  301. )
  302. target_link_libraries(tutorial10_transparency
  303.     ${ALL_LIBS}
  304. )
  305. # Xcode and Visual working directories
  306. #set_target_properties(tutorial10_transparency PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial10_transparency/")
  307. #create_target_launcher(tutorial10_transparency WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial10_transparency/")
  308.  
  309. # Tutorial 11
  310. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial11_2d_fonts/")
  311. add_executable(tutorial11_2d_fonts
  312.     tutorial11_2d_fonts/tutorial11.cpp
  313.     common/shader.cpp
  314.     common/shader.hpp
  315.     common/controls.cpp
  316.     common/controls.hpp
  317.     common/texture.cpp
  318.     common/texture.hpp
  319.     common/objloader.cpp
  320.     common/objloader.hpp
  321.     common/vboindexer.cpp
  322.     common/vboindexer.hpp
  323.     common/text2D.hpp
  324.     common/text2D.cpp
  325.  
  326.     tutorial11_2d_fonts/StandardShading.vertexshader
  327.     tutorial11_2d_fonts/StandardShading.fragmentshader
  328.     tutorial11_2d_fonts/TextVertexShader.vertexshader
  329.     tutorial11_2d_fonts/TextVertexShader.fragmentshader
  330.  
  331. )
  332. target_link_libraries(tutorial11_2d_fonts
  333.     ${ALL_LIBS}
  334. )
  335. # Xcode and Visual working directories
  336. #set_target_properties(tutorial11_2d_fonts PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial11_2d_fonts/")
  337. #create_target_launcher(tutorial11_2d_fonts WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial11_2d_fonts/")
  338.  
  339. # Tutorial 12
  340. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial12_extensions/")
  341. add_executable(tutorial12_extensions
  342.     tutorial12_extensions/tutorial12.cpp
  343.     common/shader.cpp
  344.     common/shader.hpp
  345.     common/controls.cpp
  346.     common/controls.hpp
  347.     common/texture.cpp
  348.     common/texture.hpp
  349.     common/objloader.cpp
  350.     common/objloader.hpp
  351.     common/vboindexer.cpp
  352.     common/vboindexer.hpp
  353.  
  354.     tutorial12_extensions/StandardShading.vertexshader
  355.     tutorial12_extensions/StandardShading_WithSyntaxErrors.fragmentshader
  356. )
  357. target_link_libraries(tutorial12_extensions
  358.     ${ALL_LIBS}
  359. )
  360. # Xcode and Visual working directories
  361. #set_target_properties(tutorial12_extensions PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial12_extensions/")
  362. #create_target_launcher(tutorial12_extensions WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial12_extensions/")
  363.  
  364. # Tutorial 13
  365. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial13_normal_mapping/")
  366. add_executable(tutorial13_normal_mapping
  367.     tutorial13_normal_mapping/tutorial13.cpp
  368.     common/shader.cpp
  369.     common/shader.hpp
  370.     common/controls.cpp
  371.     common/controls.hpp
  372.     common/texture.cpp
  373.     common/texture.hpp
  374.     common/objloader.cpp
  375.     common/objloader.hpp
  376.     common/vboindexer.cpp
  377.     common/vboindexer.hpp
  378.     common/text2D.hpp
  379.     common/text2D.cpp
  380.     common/tangentspace.hpp
  381.     common/tangentspace.cpp
  382.    
  383.     tutorial13_normal_mapping/NormalMapping.vertexshader
  384.     tutorial13_normal_mapping/NormalMapping.fragmentshader
  385. )
  386. target_link_libraries(tutorial13_normal_mapping
  387.     ${ALL_LIBS}
  388. )
  389. # Xcode and Visual working directories
  390. #set_target_properties(tutorial13_normal_mapping PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial13_normal_mapping/")
  391. #create_target_launcher(tutorial13_normal_mapping WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial13_normal_mapping/")
  392.  
  393.  
  394. # Tutorial 14
  395. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial14_render_to_texture/")
  396. add_executable(tutorial14_render_to_texture
  397.     tutorial14_render_to_texture/tutorial14.cpp
  398.     common/shader.cpp
  399.     common/shader.hpp
  400.     common/controls.cpp
  401.     common/controls.hpp
  402.     common/texture.cpp
  403.     common/texture.hpp
  404.     common/objloader.cpp
  405.     common/objloader.hpp
  406.     common/vboindexer.cpp
  407.     common/vboindexer.hpp
  408.     common/text2D.hpp
  409.     common/text2D.cpp
  410.    
  411.     tutorial14_render_to_texture/StandardShadingRTT.vertexshader
  412.     tutorial14_render_to_texture/StandardShadingRTT.fragmentshader
  413.     tutorial14_render_to_texture/Passthrough.vertexshader
  414.     tutorial14_render_to_texture/WobblyTexture.fragmentshader
  415. )
  416. target_link_libraries(tutorial14_render_to_texture
  417.     ${ALL_LIBS}
  418. )
  419. # Xcode and Visual working directories
  420. #set_target_properties(tutorial14_render_to_texture PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial14_render_to_texture/")
  421. #create_target_launcher(tutorial14_render_to_texture WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial14_render_to_texture/")
  422.  
  423.  
  424. # Tutorial 15
  425. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial15_lightmaps/")
  426. add_executable(tutorial15_lightmaps
  427.     tutorial15_lightmaps/tutorial15.cpp
  428.     common/shader.cpp
  429.     common/shader.hpp
  430.     common/controls.cpp
  431.     common/controls.hpp
  432.     common/texture.cpp
  433.     common/texture.hpp
  434.     common/objloader.cpp
  435.     common/objloader.hpp
  436.     common/vboindexer.cpp
  437.     common/vboindexer.hpp
  438.    
  439.     tutorial15_lightmaps/TransformVertexShader.vertexshader
  440.     tutorial15_lightmaps/TextureFragmentShaderLOD.fragmentshader
  441. )
  442. target_link_libraries(tutorial15_lightmaps
  443.     ${ALL_LIBS}
  444. )
  445. # Xcode and Visual working directories
  446. #set_target_properties(tutorial15_lightmaps PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial15_lightmaps/")
  447. #create_target_launcher(tutorial15_lightmaps WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial15_lightmaps/")
  448.  
  449. # Tutorial 16, simple version
  450. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial16_shadowmaps/")
  451. add_executable(tutorial16_shadowmaps_simple
  452.     tutorial16_shadowmaps/tutorial16_SimpleVersion.cpp
  453.     common/shader.cpp
  454.     common/shader.hpp
  455.     common/controls.cpp
  456.     common/controls.hpp
  457.     common/texture.cpp
  458.     common/texture.hpp
  459.     common/objloader.cpp
  460.     common/objloader.hpp
  461.     common/vboindexer.cpp
  462.     common/vboindexer.hpp
  463.    
  464.     tutorial16_shadowmaps/ShadowMapping_SimpleVersion.vertexshader
  465.     tutorial16_shadowmaps/ShadowMapping_SimpleVersion.fragmentshader
  466.     tutorial16_shadowmaps/DepthRTT.vertexshader
  467.     tutorial16_shadowmaps/DepthRTT.fragmentshader
  468. )
  469. target_link_libraries(tutorial16_shadowmaps_simple
  470.     ${ALL_LIBS}
  471. )
  472. # Xcode and Visual working directories
  473. #set_target_properties(tutorial16_shadowmaps_simple PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial16_shadowmaps/")
  474. #create_target_launcher(tutorial16_shadowmaps_simple WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial16_shadowmaps/")
  475.  
  476.  
  477. # Tutorial 16
  478. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial16_shadowmaps/")
  479. add_executable(tutorial16_shadowmaps
  480.     tutorial16_shadowmaps/tutorial16.cpp
  481.     common/shader.cpp
  482.     common/shader.hpp
  483.     common/controls.cpp
  484.     common/controls.hpp
  485.     common/texture.cpp
  486.     common/texture.hpp
  487.     common/objloader.cpp
  488.     common/objloader.hpp
  489.     common/vboindexer.cpp
  490.     common/vboindexer.hpp
  491.  
  492.     tutorial16_shadowmaps/ShadowMapping.vertexshader
  493.     tutorial16_shadowmaps/ShadowMapping.fragmentshader
  494.     tutorial16_shadowmaps/DepthRTT.vertexshader
  495.     tutorial16_shadowmaps/DepthRTT.fragmentshader
  496.     tutorial16_shadowmaps/Passthrough.vertexshader
  497.     tutorial16_shadowmaps/SimpleTexture.fragmentshader
  498. )
  499. target_link_libraries(tutorial16_shadowmaps
  500.     ${ALL_LIBS}
  501. )
  502. # Xcode and Visual working directories
  503. #set_target_properties(tutorial16_shadowmaps PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial16_shadowmaps/")
  504. #create_target_launcher(tutorial16_shadowmaps WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial16_shadowmaps/")
  505.  
  506. # Tutorial 17
  507. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial17_rotations/")
  508. add_executable(tutorial17_rotations
  509.     tutorial17_rotations/tutorial17.cpp
  510.     common/shader.cpp
  511.     common/shader.hpp
  512.     common/controls.cpp
  513.     common/controls.hpp
  514.     common/texture.cpp
  515.     common/texture.hpp
  516.     common/objloader.cpp
  517.     common/objloader.hpp
  518.     common/vboindexer.cpp
  519.     common/vboindexer.hpp
  520.     common/quaternion_utils.cpp
  521.     common/quaternion_utils.hpp
  522.    
  523.     tutorial17_rotations/StandardShading.vertexshader
  524.     tutorial17_rotations/StandardShading.fragmentshader
  525. )
  526. target_link_libraries(tutorial17_rotations
  527.     ${ALL_LIBS}
  528.     ANTTWEAKBAR_116_OGLCORE_GLFW
  529. )
  530. # Xcode and Visual working directories
  531. #set_target_properties(tutorial17_rotations PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial17_rotations/")
  532. #create_target_launcher(tutorial17_rotations WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial17_rotations/")
  533.  
  534. # User playground
  535. add_executable(playground
  536.     playground/playground.cpp
  537.     common/shader.cpp
  538.     common/shader.hpp
  539. )
  540. target_link_libraries(playground
  541.     ${ALL_LIBS}
  542. )
  543. # Xcode and Visual working directories
  544. #set_target_properties(playground PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/playground/")
  545. #create_target_launcher(playground WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/playground/")
  546.  
  547.  
  548.  
  549. # Misc 5, with glReadPixels
  550. add_executable(misc05_picking_slow_easy
  551.     misc05_picking/misc05_picking_slow_easy.cpp
  552.     common/shader.cpp
  553.     common/shader.hpp
  554.     common/controls.cpp
  555.     common/controls.hpp
  556.     common/texture.cpp
  557.     common/texture.hpp
  558.     common/objloader.cpp
  559.     common/objloader.hpp
  560.     common/vboindexer.cpp
  561.     common/vboindexer.hpp
  562.    
  563.     misc05_picking/StandardShading.vertexshader
  564.     misc05_picking/StandardShading.fragmentshader
  565.     misc05_picking/Picking.vertexshader
  566.     misc05_picking/Picking.fragmentshader
  567. )
  568. target_link_libraries(misc05_picking_slow_easy
  569.     ${ALL_LIBS}
  570.     ANTTWEAKBAR_116_OGLCORE_GLFW
  571. )
  572. # Xcode and Visual working directories
  573. #set_target_properties(misc05_picking_slow_easy PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/misc05_picking/")
  574. #create_target_launcher(misc05_picking_slow_easy WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/misc05_picking/")
  575.  
  576. # Misc 5, with custom ray-box intersection
  577. add_executable(misc05_picking_custom
  578.     misc05_picking/misc05_picking_custom.cpp
  579.     common/shader.cpp
  580.     common/shader.hpp
  581.     common/controls.cpp
  582.     common/controls.hpp
  583.     common/texture.cpp
  584.     common/texture.hpp
  585.     common/objloader.cpp
  586.     common/objloader.hpp
  587.     common/vboindexer.cpp
  588.     common/vboindexer.hpp
  589.    
  590.     misc05_picking/StandardShading.vertexshader
  591.     misc05_picking/StandardShading.fragmentshader
  592. )
  593. target_link_libraries(misc05_picking_custom
  594.     ${ALL_LIBS}
  595.     ANTTWEAKBAR_116_OGLCORE_GLFW
  596. )
  597. # Xcode and Visual working directories
  598. #set_target_properties(misc05_picking_custom PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/misc05_picking/")
  599. #create_target_launcher(misc05_picking_custom WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/misc05_picking/")
  600.  
  601. # Misc 5, with Bullet Physics
  602. add_executable(misc05_picking_BulletPhysics
  603.     misc05_picking/misc05_picking_BulletPhysics.cpp
  604.     common/shader.cpp
  605.     common/shader.hpp
  606.     common/controls.cpp
  607.     common/controls.hpp
  608.     common/texture.cpp
  609.     common/texture.hpp
  610.     common/objloader.cpp
  611.     common/objloader.hpp
  612.     common/vboindexer.cpp
  613.     common/vboindexer.hpp
  614.    
  615.     misc05_picking/StandardShading.vertexshader
  616.     misc05_picking/StandardShading.fragmentshader
  617. )
  618. target_link_libraries(misc05_picking_BulletPhysics
  619.     ${ALL_LIBS}
  620.     ANTTWEAKBAR_116_OGLCORE_GLFW
  621.         BulletDynamics
  622.         BulletCollision
  623.         LinearMath
  624. )
  625. # Xcode and Visual working directories
  626. #set_target_properties(misc05_picking_BulletPhysics PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/misc05_picking/")
  627. #create_target_launcher(misc05_picking_BulletPhysics WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/misc05_picking/")
  628.  
  629.  
  630.  
  631. add_executable(tutorial18_billboards
  632.     tutorial18_billboards_and_particles/tutorial18_billboards.cpp
  633.     common/shader.cpp
  634.     common/shader.hpp
  635.     common/texture.cpp
  636.     common/texture.hpp
  637.     common/controls.cpp
  638.     common/controls.hpp
  639.     tutorial18_billboards_and_particles/Billboard.fragmentshader
  640.     tutorial18_billboards_and_particles/Billboard.vertexshader
  641. )
  642.  
  643. target_link_libraries(tutorial18_billboards
  644.     ${ALL_LIBS}
  645. )
  646.  
  647. # Xcode and Visual working directories
  648. #set_target_properties(tutorial18_billboards PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial18_billboards_and_particles/")
  649. #create_target_launcher(tutorial18_billboards WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial18_billboards_and_particles/")
  650.  
  651. add_executable(tutorial18_particles
  652.     tutorial18_billboards_and_particles/tutorial18_particles.cpp
  653.     common/shader.cpp
  654.     common/shader.hpp
  655.     common/texture.cpp
  656.     common/texture.hpp
  657.     common/controls.cpp
  658.     common/controls.hpp
  659.     tutorial18_billboards_and_particles/Particle.fragmentshader
  660.     tutorial18_billboards_and_particles/Particle.vertexshader
  661. )
  662.  
  663. target_link_libraries(tutorial18_particles
  664.     ${ALL_LIBS}
  665. )
  666.  
  667. # Xcode and Visual working directories
  668. #set_target_properties(tutorial18_particles PROPERTIES XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/tutorial18_billboards_and_particles/")
  669. #create_target_launcher(tutorial18_particles WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorial18_billboards_and_particles/")
  670.  
  671.  
  672.  
  673. SOURCE_GROUP(common REGULAR_EXPRESSION ".*/common/.*" )
  674. SOURCE_GROUP(shaders REGULAR_EXPRESSION ".*/.*shader$" )
  675.  
  676.  
  677. #if (NOT ${CMAKE_GENERATOR} MATCHES "Xcode" )
  678. #add_custom_command(
  679. #   TARGET tutorial01_first_window POST_BUILD
  680. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial01_first_window${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial01_first_window/"
  681. #)
  682. #add_custom_command(
  683. #   TARGET tutorial02_red_triangle POST_BUILD
  684. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial02_red_triangle${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial02_red_triangle/"
  685. #)
  686. #add_custom_command(
  687. #   TARGET tutorial03_matrices POST_BUILD
  688. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial03_matrices${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial03_matrices/"
  689. #)
  690. #add_custom_command(
  691. #   TARGET tutorial04_colored_cube POST_BUILD
  692. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial04_colored_cube${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial04_colored_cube/"
  693. #)
  694. #add_custom_command(
  695. #   TARGET tutorial05_textured_cube POST_BUILD
  696. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial05_textured_cube${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial05_textured_cube/"
  697. #)
  698. #add_custom_command(
  699. #   TARGET tutorial06_keyboard_and_mouse POST_BUILD
  700. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial06_keyboard_and_mouse${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial06_keyboard_and_mouse/"
  701. #)
  702. #add_custom_command(
  703. #   TARGET tutorial07_model_loading POST_BUILD
  704. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial07_model_loading${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial07_model_loading/"
  705. #)
  706. #add_custom_command(
  707. #   TARGET tutorial08_basic_shading POST_BUILD
  708. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial08_basic_shading${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial08_basic_shading/"
  709. #)
  710. #add_custom_command(
  711. #   TARGET tutorial09_vbo_indexing POST_BUILD
  712. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial09_vbo_indexing${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial09_vbo_indexing/"
  713. #)
  714. #add_custom_command(
  715. #   TARGET tutorial09_AssImp POST_BUILD
  716. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial09_AssImp${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial09_vbo_indexing/"
  717. #)
  718. #add_custom_command(
  719. #   TARGET tutorial09_several_objects POST_BUILD
  720. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial09_several_objects${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial09_vbo_indexing/"
  721. #)
  722. #add_custom_command(
  723. #   TARGET tutorial10_transparency POST_BUILD
  724. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial10_transparency${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial10_transparency/"
  725. #)
  726. #add_custom_command(
  727. #   TARGET tutorial11_2d_fonts POST_BUILD
  728. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial11_2d_fonts${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial11_2d_fonts/"
  729. #)
  730. #add_custom_command(
  731. #   TARGET tutorial12_extensions POST_BUILD
  732. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial12_extensions${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial12_extensions/"
  733. #)
  734. #add_custom_command(
  735. #   TARGET tutorial13_normal_mapping POST_BUILD
  736. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial13_normal_mapping${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial13_normal_mapping/"
  737. #)
  738. #add_custom_command(
  739. #   TARGET tutorial14_render_to_texture POST_BUILD
  740. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial14_render_to_texture${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial14_render_to_texture/"
  741. #)
  742. # add_custom_command(
  743. #   TARGET tutorial15_lightmaps POST_BUILD
  744. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial15_lightmaps${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial15_lightmaps/"
  745. #)
  746. #add_custom_command(
  747. #   TARGET tutorial16_shadowmaps_simple POST_BUILD
  748. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial16_shadowmaps_simple${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial16_shadowmaps/"
  749. #)
  750. #add_custom_command(
  751. #   TARGET tutorial16_shadowmaps POST_BUILD
  752. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial16_shadowmaps${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial16_shadowmaps/"
  753. #)
  754. #add_custom_command(
  755. #   TARGET tutorial17_rotations POST_BUILD
  756. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial17_rotations${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial17_rotations/"
  757. #)
  758. #add_custom_command(
  759. #   TARGET tutorial18_billboards POST_BUILD
  760. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial18_billboards${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial18_billboards_and_particles/"
  761. #)
  762. #add_custom_command(
  763. #   TARGET tutorial18_particles POST_BUILD
  764. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/tutorial18_particles${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/tutorial18_billboards_and_particles/"
  765. #)
  766. #add_custom_command(
  767. #   TARGET playground POST_BUILD
  768. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/playground${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/playground/"
  769. #)
  770. #add_custom_command(
  771. #   TARGET misc05_picking_slow_easy POST_BUILD
  772. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/misc05_picking_slow_easy${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/misc05_picking/"
  773. #)
  774. #add_custom_command(
  775. #   TARGET misc05_picking_custom POST_BUILD
  776. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/misc05_picking_custom${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/misc05_picking/"
  777. #)
  778. #add_custom_command(
  779. #   TARGET misc05_picking_BulletPhysics POST_BUILD
  780. #   COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/misc05_picking_BulletPhysics${CMAKE_EXECUTABLE_SUFFIX}" "${CMAKE_CURRENT_SOURCE_DIR}/misc05_picking/"
  781. #)
  782.  
  783. #elseif (${CMAKE_GENERATOR} MATCHES "Xcode" )
  784. #
  785. #endif (NOT ${CMAKE_GENERATOR} MATCHES "Xcode" )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement