3f5c86857b7bf77759c59a8ec830900b48209d03
[blender.git] / source / blender / windowmanager / 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) 2006, Blender Foundation
18 # All rights reserved.
19 #
20 # The Original Code is: all of this file.
21 #
22 # Contributor(s): Jacques Beaurain.
23 #
24 # ***** END GPL LICENSE BLOCK *****
25
26 set(INC
27         .
28         ../blenfont
29         ../blenkernel
30         ../blenlib
31         ../blenloader
32         ../compositor
33         ../editors/include
34         ../gpu
35         ../imbuf
36         ../makesdna
37         ../makesrna
38         ../nodes
39         ../render/extern/include
40         ../../gameengine/BlenderRoutines
41         ../../../intern/ghost
42         ../../../intern/guardedalloc
43         ../../../intern/glew-mx
44         ../../../intern/memutil
45 )
46
47 set(INC_SYS
48         ${ZLIB_INCLUDE_DIRS}
49         ${GLEW_INCLUDE_PATH}
50 )
51
52 set(SRC
53         intern/wm.c
54         intern/wm_playanim.c
55         intern/wm_cursors.c
56         intern/wm_dragdrop.c
57         intern/wm_draw.c
58         intern/wm_event_system.c
59         intern/wm_files.c
60         intern/wm_gesture.c
61         intern/wm_init_exit.c
62         intern/wm_jobs.c
63         intern/wm_keymap.c
64         intern/wm_operators.c
65         intern/wm_subwindow.c
66         intern/wm_window.c
67         intern/wm_stereo.c
68
69         WM_api.h
70         WM_keymap.h
71         WM_types.h
72         wm.h
73         wm_cursors.h
74         wm_draw.h
75         wm_event_system.h
76         wm_event_types.h
77         wm_files.h
78         wm_subwindow.h
79         wm_window.h
80 )
81
82 if(WITH_AUDASPACE)
83         list(APPEND INC
84                 ../../../intern/audaspace/intern
85         )
86         add_definitions(-DWITH_AUDASPACE)
87 endif()
88
89 add_definitions(${GL_DEFINITIONS})
90
91 if(WITH_INTERNATIONAL)
92         add_definitions(-DWITH_INTERNATIONAL)
93 endif()
94
95 if(WITH_OPENCOLLADA)
96         add_definitions(-DWITH_COLLADA)
97 endif()
98
99 if(WITH_CODEC_QUICKTIME)
100         list(APPEND INC
101                 ../quicktime
102         )
103         list(APPEND INC_SYS
104                 ${QUICKTIME_INCLUDE_DIRS}
105         )
106         add_definitions(-DWITH_QUICKTIME)
107 endif()
108
109 if(WITH_CODEC_FFMPEG)
110         list(APPEND INC_SYS
111                 ${FFMPEG_INCLUDE_DIRS}
112         )
113         add_definitions(-DWITH_FFMPEG)
114 endif()
115
116 if(WITH_HEADLESS)
117         add_definitions(-DWITH_HEADLESS)
118 elseif(WITH_X11)
119         add_definitions(-DWITH_X11)
120 endif()
121
122 if(WITH_PYTHON)
123         list(APPEND INC
124                 ../python
125         )
126         add_definitions(-DWITH_PYTHON)
127
128         if(WITH_PYTHON_SECURITY)
129                 add_definitions(-DWITH_PYTHON_SECURITY)
130         endif()
131 endif()
132
133 if(WITH_GAMEENGINE)
134         add_definitions(-DWITH_GAMEENGINE)
135 endif()
136
137 if(WITH_BUILDINFO)
138         add_definitions(-DWITH_BUILDINFO)
139 endif()
140
141 if(WIN32)
142         if(WITH_INPUT_IME)
143                 add_definitions(-DWITH_INPUT_IME)
144         endif()
145 endif()
146
147 if(WITH_COMPOSITOR)
148         add_definitions(-DWITH_COMPOSITOR)
149 endif()
150
151 blender_add_lib_nolist(bf_windowmanager "${SRC}" "${INC}" "${INC_SYS}")