e6782121b69b3bb9b4c87f034101fdd5112d2930
[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         ../editors/include
33         ../editors/io
34         ../gpu
35         ../imbuf
36         ../makesdna
37         ../makesrna
38         ../nodes
39         ../compositor
40         ../render/extern/include
41         ../../gameengine/BlenderRoutines
42         ../../../intern/elbeem/extern
43         ../../../intern/ghost
44         ../../../intern/guardedalloc
45         ../../../intern/memutil
46         ../../../intern/opennl/extern
47 )
48
49 set(INC_SYS
50         ${ZLIB_INCLUDE_DIRS}
51         ${OPENGL_INCLUDE_DIR}
52         ${GLEW_INCLUDE_PATH}
53 )
54
55 set(SRC
56         intern/wm.c
57         intern/wm_playanim.c
58         intern/wm_cursors.c
59         intern/wm_dragdrop.c
60         intern/wm_draw.c
61         intern/wm_event_system.c
62         intern/wm_files.c
63         intern/wm_gesture.c
64         intern/wm_init_exit.c
65         intern/wm_jobs.c
66         intern/wm_keymap.c
67         intern/wm_operators.c
68         intern/wm_subwindow.c
69         intern/wm_window.c
70
71         WM_api.h
72         WM_keymap.h
73         WM_types.h
74         wm.h
75         wm_cursors.h
76         wm_draw.h
77         wm_event_system.h
78         wm_event_types.h
79         wm_files.h
80         wm_subwindow.h
81         wm_window.h
82 )
83
84 add_definitions(-DGLEW_STATIC)
85
86 if(WITH_INTERNATIONAL)
87         add_definitions(-DWITH_INTERNATIONAL)
88 endif()
89
90 if(WITH_OPENCOLLADA)
91         add_definitions(-DWITH_COLLADA)
92 endif()
93
94 if(WITH_CODEC_QUICKTIME)
95         list(APPEND INC
96                 ../quicktime
97         )
98         list(APPEND INC_SYS
99                 ${QUICKTIME_INCLUDE_DIRS}
100         )
101         add_definitions(-DWITH_QUICKTIME)
102 endif()
103
104 if(WITH_CODEC_FFMPEG)
105         list(APPEND INC_SYS
106                 ${FFMPEG_INCLUDE_DIRS}
107         )
108         add_definitions(-DWITH_FFMPEG)
109 endif()
110
111 if(WITH_HEADLESS)
112         add_definitions(-DWITH_HEADLESS)
113 endif()
114
115 if(WITH_PYTHON)
116         list(APPEND INC
117                 ../python
118         )
119         add_definitions(-DWITH_PYTHON)
120
121         if(WITH_PYTHON_SECURITY)
122                 add_definitions(-DWITH_PYTHON_SECURITY)
123         endif()
124 endif()
125
126 if(WITH_GAMEENGINE)
127         add_definitions(-DWITH_GAMEENGINE)
128 endif()
129
130 if(APPLE)
131         if(NOT WITH_COCOA)
132                 list(APPEND SRC
133                         intern/wm_apple.c
134                 )
135         endif()
136 endif()
137
138 if(WITH_BUILDINFO)
139         add_definitions(-DWITH_BUILDINFO)
140 endif()
141
142 if(WIN322)
143         list(APPEND INC
144                 ../../../intern/utfconv
145         )
146 endif()
147
148 if(WITH_COMPOSITOR)
149         add_definitions(-DWITH_COMPOSITOR)
150 endif()
151
152 blender_add_lib_nolist(bf_windowmanager "${SRC}" "${INC}" "${INC_SYS}")