CMakeLists.txt 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  1. add_library(video_core STATIC
  2. buffer_cache/buffer_block.h
  3. buffer_cache/buffer_cache.h
  4. buffer_cache/map_interval.h
  5. dma_pusher.cpp
  6. dma_pusher.h
  7. engines/const_buffer_engine_interface.h
  8. engines/const_buffer_info.h
  9. engines/engine_upload.cpp
  10. engines/engine_upload.h
  11. engines/fermi_2d.cpp
  12. engines/fermi_2d.h
  13. engines/kepler_compute.cpp
  14. engines/kepler_compute.h
  15. engines/kepler_memory.cpp
  16. engines/kepler_memory.h
  17. engines/maxwell_3d.cpp
  18. engines/maxwell_3d.h
  19. engines/maxwell_dma.cpp
  20. engines/maxwell_dma.h
  21. engines/shader_bytecode.h
  22. engines/shader_header.h
  23. engines/shader_type.h
  24. gpu.cpp
  25. gpu.h
  26. gpu_asynch.cpp
  27. gpu_asynch.h
  28. gpu_synch.cpp
  29. gpu_synch.h
  30. gpu_thread.cpp
  31. gpu_thread.h
  32. macro_interpreter.cpp
  33. macro_interpreter.h
  34. memory_manager.cpp
  35. memory_manager.h
  36. morton.cpp
  37. morton.h
  38. rasterizer_accelerated.cpp
  39. rasterizer_accelerated.h
  40. rasterizer_cache.cpp
  41. rasterizer_cache.h
  42. rasterizer_interface.h
  43. renderer_base.cpp
  44. renderer_base.h
  45. renderer_opengl/gl_buffer_cache.cpp
  46. renderer_opengl/gl_buffer_cache.h
  47. renderer_opengl/gl_device.cpp
  48. renderer_opengl/gl_device.h
  49. renderer_opengl/gl_framebuffer_cache.cpp
  50. renderer_opengl/gl_framebuffer_cache.h
  51. renderer_opengl/gl_rasterizer.cpp
  52. renderer_opengl/gl_rasterizer.h
  53. renderer_opengl/gl_resource_manager.cpp
  54. renderer_opengl/gl_resource_manager.h
  55. renderer_opengl/gl_sampler_cache.cpp
  56. renderer_opengl/gl_sampler_cache.h
  57. renderer_opengl/gl_shader_cache.cpp
  58. renderer_opengl/gl_shader_cache.h
  59. renderer_opengl/gl_shader_decompiler.cpp
  60. renderer_opengl/gl_shader_decompiler.h
  61. renderer_opengl/gl_shader_disk_cache.cpp
  62. renderer_opengl/gl_shader_disk_cache.h
  63. renderer_opengl/gl_shader_gen.cpp
  64. renderer_opengl/gl_shader_gen.h
  65. renderer_opengl/gl_shader_manager.cpp
  66. renderer_opengl/gl_shader_manager.h
  67. renderer_opengl/gl_shader_util.cpp
  68. renderer_opengl/gl_shader_util.h
  69. renderer_opengl/gl_state.cpp
  70. renderer_opengl/gl_state.h
  71. renderer_opengl/gl_stream_buffer.cpp
  72. renderer_opengl/gl_stream_buffer.h
  73. renderer_opengl/gl_texture_cache.cpp
  74. renderer_opengl/gl_texture_cache.h
  75. renderer_opengl/maxwell_to_gl.h
  76. renderer_opengl/renderer_opengl.cpp
  77. renderer_opengl/renderer_opengl.h
  78. renderer_opengl/utils.cpp
  79. renderer_opengl/utils.h
  80. sampler_cache.cpp
  81. sampler_cache.h
  82. shader/decode/arithmetic.cpp
  83. shader/decode/arithmetic_immediate.cpp
  84. shader/decode/bfe.cpp
  85. shader/decode/bfi.cpp
  86. shader/decode/shift.cpp
  87. shader/decode/arithmetic_integer.cpp
  88. shader/decode/arithmetic_integer_immediate.cpp
  89. shader/decode/arithmetic_half.cpp
  90. shader/decode/arithmetic_half_immediate.cpp
  91. shader/decode/ffma.cpp
  92. shader/decode/hfma2.cpp
  93. shader/decode/conversion.cpp
  94. shader/decode/memory.cpp
  95. shader/decode/texture.cpp
  96. shader/decode/image.cpp
  97. shader/decode/float_set_predicate.cpp
  98. shader/decode/integer_set_predicate.cpp
  99. shader/decode/half_set_predicate.cpp
  100. shader/decode/predicate_set_register.cpp
  101. shader/decode/predicate_set_predicate.cpp
  102. shader/decode/register_set_predicate.cpp
  103. shader/decode/float_set.cpp
  104. shader/decode/integer_set.cpp
  105. shader/decode/half_set.cpp
  106. shader/decode/video.cpp
  107. shader/decode/warp.cpp
  108. shader/decode/xmad.cpp
  109. shader/decode/other.cpp
  110. shader/ast.cpp
  111. shader/ast.h
  112. shader/compiler_settings.cpp
  113. shader/compiler_settings.h
  114. shader/const_buffer_locker.cpp
  115. shader/const_buffer_locker.h
  116. shader/control_flow.cpp
  117. shader/control_flow.h
  118. shader/decode.cpp
  119. shader/expr.cpp
  120. shader/expr.h
  121. shader/node_helper.cpp
  122. shader/node_helper.h
  123. shader/node.h
  124. shader/shader_ir.cpp
  125. shader/shader_ir.h
  126. shader/track.cpp
  127. surface.cpp
  128. surface.h
  129. texture_cache/format_lookup_table.cpp
  130. texture_cache/format_lookup_table.h
  131. texture_cache/surface_base.cpp
  132. texture_cache/surface_base.h
  133. texture_cache/surface_params.cpp
  134. texture_cache/surface_params.h
  135. texture_cache/surface_view.cpp
  136. texture_cache/surface_view.h
  137. texture_cache/texture_cache.h
  138. textures/astc.cpp
  139. textures/astc.h
  140. textures/convert.cpp
  141. textures/convert.h
  142. textures/decoders.cpp
  143. textures/decoders.h
  144. textures/texture.h
  145. video_core.cpp
  146. video_core.h
  147. )
  148. if (ENABLE_VULKAN)
  149. target_sources(video_core PRIVATE
  150. renderer_vulkan/declarations.h
  151. renderer_vulkan/fixed_pipeline_state.cpp
  152. renderer_vulkan/fixed_pipeline_state.h
  153. renderer_vulkan/maxwell_to_vk.cpp
  154. renderer_vulkan/maxwell_to_vk.h
  155. renderer_vulkan/vk_buffer_cache.cpp
  156. renderer_vulkan/vk_buffer_cache.h
  157. renderer_vulkan/vk_compute_pipeline.cpp
  158. renderer_vulkan/vk_compute_pipeline.h
  159. renderer_vulkan/vk_descriptor_pool.cpp
  160. renderer_vulkan/vk_descriptor_pool.h
  161. renderer_vulkan/vk_device.cpp
  162. renderer_vulkan/vk_device.h
  163. renderer_vulkan/vk_image.cpp
  164. renderer_vulkan/vk_image.h
  165. renderer_vulkan/vk_memory_manager.cpp
  166. renderer_vulkan/vk_memory_manager.h
  167. renderer_vulkan/vk_pipeline_cache.cpp
  168. renderer_vulkan/vk_pipeline_cache.h
  169. renderer_vulkan/vk_rasterizer.h
  170. renderer_vulkan/vk_renderpass_cache.cpp
  171. renderer_vulkan/vk_renderpass_cache.h
  172. renderer_vulkan/vk_resource_manager.cpp
  173. renderer_vulkan/vk_resource_manager.h
  174. renderer_vulkan/vk_sampler_cache.cpp
  175. renderer_vulkan/vk_sampler_cache.h
  176. renderer_vulkan/vk_scheduler.cpp
  177. renderer_vulkan/vk_scheduler.h
  178. renderer_vulkan/vk_shader_decompiler.cpp
  179. renderer_vulkan/vk_shader_decompiler.h
  180. renderer_vulkan/vk_staging_buffer_pool.cpp
  181. renderer_vulkan/vk_staging_buffer_pool.h
  182. renderer_vulkan/vk_stream_buffer.cpp
  183. renderer_vulkan/vk_stream_buffer.h
  184. renderer_vulkan/vk_swapchain.cpp
  185. renderer_vulkan/vk_swapchain.h
  186. renderer_vulkan/vk_update_descriptor.cpp
  187. renderer_vulkan/vk_update_descriptor.h)
  188. target_include_directories(video_core PRIVATE sirit ../../externals/Vulkan-Headers/include)
  189. target_compile_definitions(video_core PRIVATE HAS_VULKAN)
  190. endif()
  191. create_target_directory_groups(video_core)
  192. target_link_libraries(video_core PUBLIC common core)
  193. target_link_libraries(video_core PRIVATE glad)
  194. if (ENABLE_VULKAN)
  195. target_link_libraries(video_core PRIVATE sirit)
  196. endif()
  197. if (MSVC)
  198. target_compile_options(video_core PRIVATE /we4267)
  199. else()
  200. target_compile_options(video_core PRIVATE -Werror=conversion -Wno-error=sign-conversion)
  201. endif()