BGE: This patch adds a character wrapper (similar to the already implemented vehicle...
[blender.git] / source / gameengine / Ketsji / 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         KXNetwork
29         ../BlenderRoutines
30         ../Converter
31         ../Expressions
32         ../GameLogic
33         ../Network
34         ../Network/LoopBackNetwork
35         ../Physics/common
36         ../Rasterizer
37         ../Rasterizer/RAS_OpenGLRasterizer
38         ../SceneGraph
39         ../../blender
40         ../../blender/blenfont
41         ../../blender/blenkernel
42         ../../blender/blenlib
43         ../../blender/blenloader
44         ../../blender/gpu
45         ../../blender/imbuf
46         ../../blender/makesdna
47         ../../blender/makesrna
48         ../../blender/python
49         ../../blender/python/generic
50         ../../blender/python/mathutils
51         ../../../intern/container
52         ../../../intern/guardedalloc
53         ../../../intern/moto/include
54         ../../../intern/string
55 )
56
57 set(INC_SYS
58         ${PTHREADS_INCLUDE_DIRS}
59         ${GLEW_INCLUDE_PATH}
60         ../../../extern/recastnavigation/Recast/Include
61         ../../../extern/recastnavigation/Detour/Include
62 )
63
64 set(SRC
65         BL_Action.cpp
66         BL_ActionManager.cpp
67         BL_BlenderShader.cpp
68         BL_Material.cpp
69         BL_Shader.cpp
70         BL_Texture.cpp
71         KX_ArmatureSensor.cpp
72         KX_BlenderMaterial.cpp
73         KX_BulletPhysicsController.cpp
74         KX_Camera.cpp
75         KX_CameraActuator.cpp
76         KX_CameraIpoSGController.cpp
77         KX_CharacterWrapper.cpp
78         KX_ConstraintActuator.cpp
79         KX_ConstraintWrapper.cpp
80         KX_ConvertPhysicsObjects.cpp
81         KX_Dome.cpp
82         KX_EmptyObject.cpp
83         KX_FontObject.cpp
84         KX_GameActuator.cpp
85         KX_GameObject.cpp
86         KX_IPO_SGController.cpp
87         KX_IPhysicsController.cpp
88         KX_IpoActuator.cpp
89         KX_KetsjiEngine.cpp
90         KX_Light.cpp
91         KX_LightIpoSGController.cpp
92         KX_MaterialIpoController.cpp
93         KX_MeshProxy.cpp
94         KX_MotionState.cpp
95         KX_MouseFocusSensor.cpp
96         KX_NavMeshObject.cpp
97         KX_NearSensor.cpp
98         KX_ObColorIpoSGController.cpp
99         KX_ObjectActuator.cpp
100         KX_ObstacleSimulation.cpp
101         KX_OrientationInterpolator.cpp
102         KX_ParentActuator.cpp
103         KX_PhysicsObjectWrapper.cpp
104         KX_PolyProxy.cpp
105         KX_PolygonMaterial.cpp
106         KX_PositionInterpolator.cpp
107         KX_PyConstraintBinding.cpp
108         KX_PyMath.cpp
109         KX_PythonInit.cpp
110         KX_PythonInitTypes.cpp
111         KX_PythonMain.cpp
112         KX_PythonSeq.cpp
113         KX_RadarSensor.cpp
114         KX_RayCast.cpp
115         KX_RayEventManager.cpp
116         KX_RaySensor.cpp
117         KX_SCA_AddObjectActuator.cpp
118         KX_SCA_DynamicActuator.cpp
119         KX_SCA_EndObjectActuator.cpp
120         KX_SCA_ReplaceMeshActuator.cpp
121         KX_SG_BoneParentNodeRelationship.cpp
122         KX_SG_NodeRelationships.cpp
123         KX_ScalarInterpolator.cpp
124         KX_ScalingInterpolator.cpp
125         KX_Scene.cpp
126         KX_SceneActuator.cpp
127         KX_SoundActuator.cpp
128         KX_StateActuator.cpp
129         KX_SteeringActuator.cpp
130         KX_TimeCategoryLogger.cpp
131         KX_TimeLogger.cpp
132         KX_TouchEventManager.cpp
133         KX_TouchSensor.cpp
134         KX_TrackToActuator.cpp
135         KX_VehicleWrapper.cpp
136         KX_VertexProxy.cpp
137         KX_VisibilityActuator.cpp
138         KX_WorldInfo.cpp
139         KX_WorldIpoController.cpp
140
141         BL_Action.h
142         BL_ActionManager.h
143         BL_BlenderShader.h
144         BL_Material.h
145         BL_Shader.h
146         BL_Texture.h
147         KX_ArmatureSensor.h
148         KX_BlenderMaterial.h
149         KX_BulletPhysicsController.h
150         KX_Camera.h
151         KX_CameraActuator.h
152         KX_CameraIpoSGController.h
153         KX_CharacterWrapper.h
154         KX_ClientObjectInfo.h
155         KX_ConstraintActuator.h
156         KX_ConstraintWrapper.h
157         KX_ConvertPhysicsObject.h
158         KX_Dome.h
159         KX_EmptyObject.h
160         KX_FontObject.h
161         KX_GameActuator.h
162         KX_GameObject.h
163         KX_IInterpolator.h
164         KX_IPOTransform.h
165         KX_IPO_SGController.h
166         KX_IPhysicsController.h
167         KX_IScalarInterpolator.h
168         KX_ISceneConverter.h
169         KX_ISystem.h
170         KX_IpoActuator.h
171         KX_KetsjiEngine.h
172         KX_Light.h
173         KX_LightIpoSGController.h
174         KX_MaterialIpoController.h
175         KX_MeshProxy.h
176         KX_MotionState.h
177         KX_MouseFocusSensor.h
178         KX_NavMeshObject.h
179         KX_NearSensor.h
180         KX_ObColorIpoSGController.h
181         KX_ObjectActuator.h
182         KX_ObstacleSimulation.h
183         KX_OrientationInterpolator.h
184         KX_ParentActuator.h
185         KX_PhysicsEngineEnums.h
186         KX_PhysicsObjectWrapper.h
187         KX_PhysicsPropertiesobsolete.h
188         KX_PolyProxy.h
189         KX_PolygonMaterial.h
190         KX_PositionInterpolator.h
191         KX_PyConstraintBinding.h
192         KX_PyMath.h
193         KX_PythonInit.h
194         KX_PythonInitTypes.h
195         KX_PythonMain.h
196         KX_PythonSeq.h
197         KX_RadarSensor.h
198         KX_RayCast.h
199         KX_RayEventManager.h
200         KX_RaySensor.h
201         KX_SCA_AddObjectActuator.h
202         KX_SCA_DynamicActuator.h
203         KX_SCA_EndObjectActuator.h
204         KX_SCA_ReplaceMeshActuator.h
205         KX_SG_BoneParentNodeRelationship.h
206         KX_SG_NodeRelationships.h
207         KX_ScalarInterpolator.h
208         KX_ScalingInterpolator.h
209         KX_Scene.h
210         KX_SceneActuator.h
211         KX_SoundActuator.h
212         KX_StateActuator.h
213         KX_SteeringActuator.h
214         KX_TimeCategoryLogger.h
215         KX_TimeLogger.h
216         KX_TouchEventManager.h
217         KX_TouchSensor.h
218         KX_TrackToActuator.h
219         KX_VehicleWrapper.h
220         KX_VertexProxy.h
221         KX_VisibilityActuator.h
222         KX_WorldInfo.h
223         KX_WorldIpoController.h
224 )
225
226 add_definitions(-DGLEW_STATIC)
227
228 if(WITH_IMAGE_DDS)
229         add_definitions(-DWITH_DDS)
230 endif()
231
232 if(WITH_SDL)
233         list(APPEND INC_SYS
234                 ${SDL_INCLUDE_DIR}
235         )
236         add_definitions(-DWITH_SDL)
237 endif()
238
239 if(WITH_CODEC_FFMPEG)
240         add_definitions(-DWITH_FFMPEG)
241 endif()
242
243 if(WITH_AUDASPACE)
244         list(APPEND INC
245                 ../../../intern/audaspace/intern
246                 ../../../intern/audaspace/FX
247         )
248         add_definitions(-DWITH_AUDASPACE)
249 endif()
250
251 if(WITH_BULLET)
252         list(APPEND INC
253                 ../Physics/Bullet
254         )
255         list(APPEND INC
256                 ../../../extern/bullet2/src
257         )
258         add_definitions(-DUSE_BULLET)
259 endif()
260
261 blender_add_lib(ge_logic_ketsji "${SRC}" "${INC}" "${INC_SYS}")