0b7060fc55e111d21548ea5fc87296869f27101d
[blender.git] / source / blender / draw / CMakeLists.txt
1 # ***** BEGIN GPL LICENSE BLOCK *****
2 #
3 # This program is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU General Public License
5 # as published by the Free Software Foundation; either version 2
6 # of the License, or (at your option) any later version.
7 #
8 # This program is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11 # GNU General Public License for more details.
12 #
13 # You should have received a copy of the GNU General Public License
14 # along with this program; if not, write to the Free Software Foundation,
15 # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
16 #
17 # The Original Code is Copyright (C) 2016, Blender Foundation
18 # All rights reserved.
19 #
20 # The Original Code is: all of this file.
21 #
22 # Contributor(s): Blender Institute
23 #
24 # ***** END GPL LICENSE BLOCK *****
25
26 set(INC
27         .
28         intern
29         engines/clay
30         modes
31
32         ../blenkernel
33         ../blenlib
34         ../blentranslation
35         ../imbuf
36         ../depsgraph
37         ../makesdna
38         ../makesrna
39         ../gpu
40         ../editors/include
41         ../editors/space_view3d
42         ../render/extern/include
43         ../render/intern/include
44
45         ../../../intern/glew-mx
46         ../../../intern/guardedalloc
47 )
48
49 set(INC_SYS
50         ${GLEW_INCLUDE_PATH}
51 )
52
53 set(SRC
54         intern/draw_manager.c
55         intern/draw_common.c
56         intern/draw_cache.c
57         intern/draw_view.c
58         intern/draw_armature.c
59         engines/clay/clay.c
60         modes/edit_armature_mode.c
61         modes/edit_mesh_mode.c
62         modes/object_mode.c
63
64         intern/DRW_render.h
65         intern/draw_common.h
66         intern/draw_cache.h
67         intern/draw_view.h
68         engines/clay/clay.h
69         modes/draw_mode_engines.h
70
71         ./DRW_engine.h
72 )
73
74 if(WITH_CLAY_ENGINE)
75         add_definitions(-DWITH_CLAY_ENGINE)
76 endif()
77
78 data_to_c_simple(engines/clay/shaders/clay_frag.glsl SRC)
79 data_to_c_simple(engines/clay/shaders/clay_vert.glsl SRC)
80 data_to_c_simple(engines/clay/shaders/ssao_alchemy.glsl SRC)
81 data_to_c_simple(engines/clay/shaders/ssao_groundtruth.glsl SRC)
82
83 data_to_c_simple(modes/shaders/edit_overlay_frag.glsl SRC)
84 data_to_c_simple(modes/shaders/edit_overlay_vert.glsl SRC)
85 data_to_c_simple(modes/shaders/edit_overlay_geom_tri.glsl SRC)
86 data_to_c_simple(modes/shaders/edit_overlay_geom_edge.glsl SRC)
87 data_to_c_simple(modes/shaders/edit_overlay_loosevert_vert.glsl SRC)
88 data_to_c_simple(modes/shaders/edit_overlay_facedot_frag.glsl SRC)
89 data_to_c_simple(modes/shaders/edit_overlay_facedot_vert.glsl SRC)
90 data_to_c_simple(modes/shaders/edit_overlay_mix_frag.glsl SRC)
91 data_to_c_simple(modes/shaders/edit_overlay_mix_vert.glsl SRC)
92 data_to_c_simple(modes/shaders/edit_overlay_facefill_vert.glsl SRC)
93 data_to_c_simple(modes/shaders/edit_overlay_facefill_frag.glsl SRC)
94 data_to_c_simple(modes/shaders/edit_normals_vert.glsl SRC)
95 data_to_c_simple(modes/shaders/edit_normals_geom.glsl SRC)
96
97 list(APPEND INC
98 )
99
100 blender_add_lib(bf_draw "${SRC}" "${INC}" "${INC_SYS}")