summaryrefslogtreecommitdiffstats
path: root/src/video_core/CMakeLists.txt
blob: 82f47d8a9043866d019bed2fafac17363de2f12f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
set(SRCS
            command_processor.cpp
            debug_utils/debug_utils.cpp
            geometry_pipeline.cpp
            pica.cpp
            primitive_assembly.cpp
            regs.cpp
            renderer_base.cpp
            renderer_opengl/gl_rasterizer.cpp
            renderer_opengl/gl_rasterizer_cache.cpp
            renderer_opengl/gl_shader_gen.cpp
            renderer_opengl/gl_shader_util.cpp
            renderer_opengl/gl_state.cpp
            renderer_opengl/renderer_opengl.cpp
            shader/shader.cpp
            shader/shader_interpreter.cpp
            swrasterizer/clipper.cpp
            swrasterizer/framebuffer.cpp
            swrasterizer/lighting.cpp
            swrasterizer/proctex.cpp
            swrasterizer/rasterizer.cpp
            swrasterizer/swrasterizer.cpp
            swrasterizer/texturing.cpp
            texture/etc1.cpp
            texture/texture_decode.cpp
            vertex_loader.cpp
            video_core.cpp
            )

set(HEADERS
            command_processor.h
            debug_utils/debug_utils.h
            geometry_pipeline.h
            gpu_debugger.h
            pica.h
            pica_state.h
            pica_types.h
            primitive_assembly.h
            rasterizer_interface.h
            regs.h
            regs_framebuffer.h
            regs_lighting.h
            regs_pipeline.h
            regs_rasterizer.h
            regs_shader.h
            regs_texturing.h
            renderer_base.h
            renderer_opengl/gl_rasterizer.h
            renderer_opengl/gl_rasterizer_cache.h
            renderer_opengl/gl_resource_manager.h
            renderer_opengl/gl_shader_gen.h
            renderer_opengl/gl_shader_util.h
            renderer_opengl/gl_state.h
            renderer_opengl/pica_to_gl.h
            renderer_opengl/renderer_opengl.h
            shader/debug_data.h
            shader/shader.h
            shader/shader_interpreter.h
            swrasterizer/clipper.h
            swrasterizer/framebuffer.h
            swrasterizer/lighting.h
            swrasterizer/proctex.h
            swrasterizer/rasterizer.h
            swrasterizer/swrasterizer.h
            swrasterizer/texturing.h
            texture/etc1.h
            texture/texture_decode.h
            utils.h
            vertex_loader.h
            video_core.h
            )

if(ARCHITECTURE_x86_64)
    set(SRCS ${SRCS}
            shader/shader_jit_x64.cpp
            shader/shader_jit_x64_compiler.cpp)

    set(HEADERS ${HEADERS}
            shader/shader_jit_x64.h
            shader/shader_jit_x64_compiler.h)
endif()

create_directory_groups(${SRCS} ${HEADERS})

add_library(video_core STATIC ${SRCS} ${HEADERS})
target_link_libraries(video_core PUBLIC common core)
target_link_libraries(video_core PRIVATE glad nihstro-headers)

if (ARCHITECTURE_x86_64)
    target_link_libraries(video_core PRIVATE xbyak)
endif()

if (PNG_FOUND)
    target_link_libraries(video_core PRIVATE PNG::PNG)
    target_compile_definitions(video_core PRIVATE HAVE_PNG)
endif()