add_library(video_core STATIC command_processor.cpp command_processor.h debug_utils/debug_utils.cpp debug_utils/debug_utils.h geometry_pipeline.cpp geometry_pipeline.h gpu_debugger.h pica.cpp pica.h pica_state.h pica_types.h primitive_assembly.cpp primitive_assembly.h rasterizer_interface.h regs.cpp regs.h regs_framebuffer.h regs_lighting.h regs_pipeline.h regs_rasterizer.h regs_shader.h regs_texturing.h renderer_base.cpp renderer_base.h rasterizer_cache/morton_swizzle.h rasterizer_cache/pixel_format.h rasterizer_cache/rasterizer_cache.cpp rasterizer_cache/rasterizer_cache.h rasterizer_cache/rasterizer_cache_types.h rasterizer_cache/rasterizer_cache_utils.cpp rasterizer_cache/rasterizer_cache_utils.h rasterizer_cache/surface_params.cpp rasterizer_cache/surface_params.h renderer_opengl/frame_dumper_opengl.cpp renderer_opengl/frame_dumper_opengl.h renderer_opengl/gl_rasterizer.cpp renderer_opengl/gl_rasterizer.h renderer_opengl/gl_resource_manager.cpp renderer_opengl/gl_resource_manager.h renderer_opengl/gl_shader_decompiler.cpp renderer_opengl/gl_shader_decompiler.h renderer_opengl/gl_shader_disk_cache.cpp renderer_opengl/gl_shader_disk_cache.h renderer_opengl/gl_shader_gen.cpp renderer_opengl/gl_shader_gen.h renderer_opengl/gl_shader_manager.cpp renderer_opengl/gl_shader_manager.h renderer_opengl/gl_shader_util.cpp renderer_opengl/gl_shader_util.h renderer_opengl/gl_state.cpp renderer_opengl/gl_state.h renderer_opengl/gl_stream_buffer.cpp renderer_opengl/gl_stream_buffer.h renderer_opengl/gl_vars.cpp renderer_opengl/gl_vars.h renderer_opengl/pica_to_gl.h renderer_opengl/post_processing_opengl.cpp renderer_opengl/post_processing_opengl.h renderer_opengl/renderer_opengl.cpp renderer_opengl/renderer_opengl.h renderer_opengl/texture_downloader_es.cpp renderer_opengl/texture_downloader_es.h renderer_opengl/texture_filters/anime4k/anime4k_ultrafast.cpp renderer_opengl/texture_filters/anime4k/anime4k_ultrafast.h renderer_opengl/texture_filters/bicubic/bicubic.cpp renderer_opengl/texture_filters/bicubic/bicubic.h renderer_opengl/texture_filters/scale_force/scale_force.cpp renderer_opengl/texture_filters/scale_force/scale_force.h renderer_opengl/texture_filters/texture_filter_base.h renderer_opengl/texture_filters/texture_filterer.cpp renderer_opengl/texture_filters/texture_filterer.h renderer_opengl/texture_filters/xbrz/xbrz_freescale.cpp renderer_opengl/texture_filters/xbrz/xbrz_freescale.h #temporary, move these back in alphabetical order before merging renderer_opengl/gl_format_reinterpreter.cpp renderer_opengl/gl_format_reinterpreter.h shader/debug_data.h shader/shader.cpp shader/shader.h shader/shader_interpreter.cpp shader/shader_interpreter.h swrasterizer/clipper.cpp swrasterizer/clipper.h swrasterizer/framebuffer.cpp swrasterizer/framebuffer.h swrasterizer/lighting.cpp swrasterizer/lighting.h swrasterizer/proctex.cpp swrasterizer/proctex.h swrasterizer/rasterizer.cpp swrasterizer/rasterizer.h swrasterizer/swrasterizer.cpp swrasterizer/swrasterizer.h swrasterizer/texturing.cpp swrasterizer/texturing.h texture/etc1.cpp texture/etc1.h texture/texture_decode.cpp texture/texture_decode.h utils.h vertex_loader.cpp vertex_loader.h video_core.cpp video_core.h ) set(SHADER_FILES renderer_opengl/depth_to_color.frag renderer_opengl/depth_to_color.vert renderer_opengl/ds_to_color.frag renderer_opengl/texture_filters/anime4k/refine.frag renderer_opengl/texture_filters/anime4k/x_gradient.frag renderer_opengl/texture_filters/anime4k/y_gradient.frag renderer_opengl/texture_filters/bicubic/bicubic.frag renderer_opengl/texture_filters/scale_force/scale_force.frag renderer_opengl/texture_filters/tex_coord.vert renderer_opengl/texture_filters/xbrz/xbrz_freescale.frag renderer_opengl/texture_filters/xbrz/xbrz_freescale.vert ) include(${CMAKE_CURRENT_SOURCE_DIR}/generate_shaders.cmake) foreach(shader_file ${SHADER_FILES}) get_filename_component(shader_file_name ${shader_file} NAME) GetShaderHeaderFile(${shader_file_name}) list(APPEND SHADER_HEADERS ${shader_header_file}) endforeach() add_custom_target(shaders BYPRODUCTS ${SHADER_HEADERS} COMMAND "${CMAKE_COMMAND}" -P ${CMAKE_CURRENT_SOURCE_DIR}/generate_shaders.cmake SOURCES ${SHADER_FILES} ) add_dependencies(video_core shaders) target_include_directories(video_core PRIVATE ${CMAKE_CURRENT_BINARY_DIR}) if(ARCHITECTURE_x86_64) target_sources(video_core PRIVATE shader/shader_jit_x64.cpp shader/shader_jit_x64_compiler.cpp shader/shader_jit_x64.h shader/shader_jit_x64_compiler.h ) endif() create_target_directory_groups(video_core) target_link_libraries(video_core PUBLIC common core) target_link_libraries(video_core PRIVATE glad nihstro-headers Boost::serialization) if (ARCHITECTURE_x86_64) target_link_libraries(video_core PUBLIC xbyak) endif()