[dali_2.3.21] Merge branch 'devel/master'
[platform/core/uifw/dali-toolkit.git] / dali-physics / third-party / bullet3 / src / BulletDynamics / CMakeLists.txt
1 INCLUDE_DIRECTORIES( ${BULLET_PHYSICS_SOURCE_DIR}/src  )
2
3
4
5 SET(BulletDynamics_SRCS
6         Character/btKinematicCharacterController.cpp
7         ConstraintSolver/btConeTwistConstraint.cpp
8         ConstraintSolver/btContactConstraint.cpp
9         ConstraintSolver/btFixedConstraint.cpp
10         ConstraintSolver/btGearConstraint.cpp
11         ConstraintSolver/btGeneric6DofConstraint.cpp
12         ConstraintSolver/btGeneric6DofSpringConstraint.cpp
13         ConstraintSolver/btGeneric6DofSpring2Constraint.cpp
14         ConstraintSolver/btHinge2Constraint.cpp
15         ConstraintSolver/btHingeConstraint.cpp
16         ConstraintSolver/btPoint2PointConstraint.cpp
17         ConstraintSolver/btSequentialImpulseConstraintSolver.cpp
18         ConstraintSolver/btSequentialImpulseConstraintSolverMt.cpp
19         ConstraintSolver/btBatchedConstraints.cpp
20         ConstraintSolver/btNNCGConstraintSolver.cpp
21         ConstraintSolver/btSliderConstraint.cpp
22         ConstraintSolver/btSolve2LinearConstraint.cpp
23         ConstraintSolver/btTypedConstraint.cpp
24         ConstraintSolver/btUniversalConstraint.cpp
25         Dynamics/btDiscreteDynamicsWorld.cpp
26         Dynamics/btDiscreteDynamicsWorldMt.cpp
27         Dynamics/btSimulationIslandManagerMt.cpp
28         Dynamics/btRigidBody.cpp
29         Dynamics/btSimpleDynamicsWorld.cpp
30 #       Dynamics/Bullet-C-API.cpp
31         Vehicle/btRaycastVehicle.cpp
32         Vehicle/btWheelInfo.cpp
33         Featherstone/btMultiBody.cpp
34         Featherstone/btMultiBodyConstraint.cpp
35         Featherstone/btMultiBodyConstraintSolver.cpp
36         Featherstone/btMultiBodyDynamicsWorld.cpp
37         Featherstone/btMultiBodyFixedConstraint.cpp
38         Featherstone/btMultiBodyGearConstraint.cpp
39         Featherstone/btMultiBodyJointLimitConstraint.cpp
40         Featherstone/btMultiBodyJointMotor.cpp
41         Featherstone/btMultiBodyMLCPConstraintSolver.cpp
42         Featherstone/btMultiBodyPoint2Point.cpp
43         Featherstone/btMultiBodySliderConstraint.cpp
44         Featherstone/btMultiBodySphericalJointMotor.cpp
45         Featherstone/btMultiBodySphericalJointLimit.cpp
46         MLCPSolvers/btDantzigLCP.cpp
47         MLCPSolvers/btMLCPSolver.cpp
48         MLCPSolvers/btLemkeAlgorithm.cpp
49 )
50
51 SET(Root_HDRS
52         ../btBulletDynamicsCommon.h
53         ../btBulletCollisionCommon.h
54 )
55 SET(ConstraintSolver_HDRS
56         ConstraintSolver/btConeTwistConstraint.h
57         ConstraintSolver/btConstraintSolver.h
58         ConstraintSolver/btContactConstraint.h
59         ConstraintSolver/btContactSolverInfo.h
60         ConstraintSolver/btFixedConstraint.h
61         ConstraintSolver/btGearConstraint.h
62         ConstraintSolver/btGeneric6DofConstraint.h
63         ConstraintSolver/btGeneric6DofSpringConstraint.h
64         ConstraintSolver/btGeneric6DofSpring2Constraint.h
65         ConstraintSolver/btHinge2Constraint.h
66         ConstraintSolver/btHingeConstraint.h
67         ConstraintSolver/btJacobianEntry.h
68         ConstraintSolver/btPoint2PointConstraint.h
69         ConstraintSolver/btSequentialImpulseConstraintSolver.h
70         ConstraintSolver/btSequentialImpulseConstraintSolverMt.h
71         ConstraintSolver/btNNCGConstraintSolver.h
72         ConstraintSolver/btSliderConstraint.h
73         ConstraintSolver/btSolve2LinearConstraint.h
74         ConstraintSolver/btSolverBody.h
75         ConstraintSolver/btSolverConstraint.h
76         ConstraintSolver/btTypedConstraint.h
77         ConstraintSolver/btUniversalConstraint.h
78 )
79 SET(Dynamics_HDRS
80         Dynamics/btActionInterface.h
81         Dynamics/btDiscreteDynamicsWorld.h
82         Dynamics/btDiscreteDynamicsWorldMt.h
83         Dynamics/btSimulationIslandManagerMt.h
84         Dynamics/btDynamicsWorld.h
85         Dynamics/btSimpleDynamicsWorld.h
86         Dynamics/btRigidBody.h
87 )
88 SET(Vehicle_HDRS
89         Vehicle/btRaycastVehicle.h
90         Vehicle/btVehicleRaycaster.h
91         Vehicle/btWheelInfo.h
92 )
93
94 SET(Featherstone_HDRS
95         Featherstone/btMultiBody.h
96         Featherstone/btMultiBodyConstraint.h
97         Featherstone/btMultiBodyConstraintSolver.h
98         Featherstone/btMultiBodyDynamicsWorld.h
99         Featherstone/btMultiBodyFixedConstraint.h
100         Featherstone/btMultiBodyGearConstraint.h
101         Featherstone/btMultiBodyJointLimitConstraint.h
102         Featherstone/btMultiBodyJointMotor.h
103         Featherstone/btMultiBodyLink.h
104         Featherstone/btMultiBodyLinkCollider.h
105         Featherstone/btMultiBodyMLCPConstraintSolver.h
106         Featherstone/btMultiBodyPoint2Point.h
107         Featherstone/btMultiBodySliderConstraint.h
108         Featherstone/btMultiBodySolverConstraint.h
109   Featherstone/btMultiBodySphericalJointMotor.h
110         Featherstone/btMultiBodySphericalJointLimit.h
111
112 )
113
114 SET(MLCPSolvers_HDRS
115         MLCPSolvers/btDantzigLCP.h
116         MLCPSolvers/btDantzigSolver.h
117         MLCPSolvers/btMLCPSolver.h
118         MLCPSolvers/btMLCPSolverInterface.h
119         MLCPSolvers/btPATHSolver.h
120         MLCPSolvers/btSolveProjectedGaussSeidel.h
121         MLCPSolvers/btLemkeSolver.h
122         MLCPSolvers/btLemkeAlgorithm.h
123 )
124
125 SET(Character_HDRS
126         Character/btCharacterControllerInterface.h
127         Character/btKinematicCharacterController.h
128 )
129
130
131
132 SET(BulletDynamics_HDRS
133         ${Root_HDRS}
134         ${ConstraintSolver_HDRS}
135         ${Dynamics_HDRS}
136         ${Vehicle_HDRS}
137         ${Character_HDRS}
138         ${Featherstone_HDRS}
139         ${MLCPSolvers_HDRS}
140 )
141
142
143 ADD_LIBRARY(BulletDynamics ${BulletDynamics_SRCS} ${BulletDynamics_HDRS})
144 SET_TARGET_PROPERTIES(BulletDynamics PROPERTIES VERSION ${BULLET_VERSION})
145 SET_TARGET_PROPERTIES(BulletDynamics PROPERTIES SOVERSION ${BULLET_VERSION})
146 IF (BUILD_SHARED_LIBS)
147         TARGET_LINK_LIBRARIES(BulletDynamics BulletCollision LinearMath)
148 ENDIF (BUILD_SHARED_LIBS)
149
150 IF (INSTALL_LIBS)
151         IF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
152                 IF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
153                         IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
154                                 INSTALL(TARGETS BulletDynamics DESTINATION .)
155                         ELSE (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
156                                 INSTALL(TARGETS BulletDynamics RUNTIME DESTINATION bin
157                                                                 LIBRARY DESTINATION lib${LIB_SUFFIX}
158                                                                 ARCHIVE DESTINATION lib${LIB_SUFFIX})
159                                 INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
160 DESTINATION ${INCLUDE_INSTALL_DIR} FILES_MATCHING PATTERN "*.h"  PATTERN
161 ".svn" EXCLUDE PATTERN "CMakeFiles" EXCLUDE)
162                                 INSTALL(FILES ../btBulletDynamicsCommon.h
163 DESTINATION ${INCLUDE_INSTALL_DIR}/BulletDynamics)
164                         ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
165                 ENDIF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
166
167                 IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
168                         SET_TARGET_PROPERTIES(BulletDynamics PROPERTIES FRAMEWORK true)
169                         SET_TARGET_PROPERTIES(BulletDynamics PROPERTIES PUBLIC_HEADER "${Root_HDRS}")
170                         # Have to list out sub-directories manually:
171                         SET_PROPERTY(SOURCE ${ConstraintSolver_HDRS} PROPERTY MACOSX_PACKAGE_LOCATION Headers/ConstraintSolver)
172                         SET_PROPERTY(SOURCE ${Dynamics_HDRS} PROPERTY MACOSX_PACKAGE_LOCATION Headers/Dynamics)
173                         SET_PROPERTY(SOURCE ${Vehicle_HDRS} PROPERTY MACOSX_PACKAGE_LOCATION Headers/Vehicle)
174                         SET_PROPERTY(SOURCE ${Character_HDRS} PROPERTY MACOSX_PACKAGE_LOCATION Headers/Character)
175                         SET_PROPERTY(SOURCE ${Featherstone_HDRS} PROPERTY MACOSX_PACKAGE_LOCATION Headers/Featherstone)
176                         SET_PROPERTY(SOURCE ${MLCPSolvers_HDRS} PROPERTY MACOSX_PACKAGE_LOCATION Headers/MLCPSolvers)
177                 ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
178         ENDIF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)
179 ENDIF (INSTALL_LIBS)