Imported Upstream version 2.81
[platform/upstream/libbullet.git] / src / BulletMultiThreaded / GpuSoftBodySolvers / OpenCL / Apple / CMakeLists.txt
1 \r
2 INCLUDE_DIRECTORIES(\r
3 ${BULLET_PHYSICS_SOURCE_DIR}/src\r
4 )\r
5 \r
6 \r
7 \r
8 \r
9 SET(BulletSoftBodyOpenCLSolvers_SRCS\r
10         ../btSoftBodySolver_OpenCL.cpp\r
11         ../btSoftBodySolver_OpenCLSIMDAware.cpp\r
12 )\r
13 \r
14 SET(BulletSoftBodyOpenCLSolvers_HDRS\r
15         ../btSoftBodySolver_OpenCL.h\r
16         ../../Shared/btSoftBodySolverData.h\r
17         ../btSoftBodySolverVertexData_OpenCL.h\r
18         ../btSoftBodySolverTriangleData_OpenCL.h\r
19         ../btSoftBodySolverLinkData_OpenCL.h\r
20         ../btSoftBodySolverBuffer_OpenCL.h\r
21 )\r
22 \r
23 # OpenCL and HLSL Shaders.\r
24 # Build rules generated to stringify these into headers\r
25 # which are needed by some of the sources\r
26 SET(BulletSoftBodyOpenCLSolvers_Shaders\r
27 #       OutputToVertexArray\r
28         UpdateNormals\r
29         Integrate\r
30         UpdatePositions\r
31         UpdateNodes\r
32         SolvePositions\r
33         UpdatePositionsFromVelocities\r
34         ApplyForces\r
35         PrepareLinks\r
36         VSolveLinks\r
37 )\r
38 \r
39 foreach(f ${BulletSoftBodyOpenCLSolvers_Shaders})\r
40     LIST(APPEND BulletSoftBodyOpenCLSolvers_OpenCLC "../OpenCLC10/${f}.cl")\r
41 endforeach(f) \r
42 \r
43 \r
44 \r
45 ADD_LIBRARY(BulletSoftBodySolvers_OpenCL_Apple\r
46         ${BulletSoftBodyOpenCLSolvers_SRCS} \r
47         ${BulletSoftBodyOpenCLSolvers_HDRS} \r
48         ${BulletSoftBodyOpenCLSolvers_OpenCLC}\r
49 )\r
50 \r
51 SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Apple PROPERTIES VERSION ${BULLET_VERSION})\r
52 SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Apple PROPERTIES SOVERSION ${BULLET_VERSION})\r
53 IF (BUILD_SHARED_LIBS)\r
54         IF (APPLE AND (BUILD_SHARED_LIBS OR FRAMEWORK) )\r
55                 SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Apple PROPERTIES LINK_FLAGS "-framework OpenCL")\r
56         ENDIF (APPLE AND (BUILD_SHARED_LIBS OR FRAMEWORK) )\r
57         TARGET_LINK_LIBRARIES(BulletSoftBodySolvers_OpenCL_Apple BulletSoftBody)\r
58 ENDIF (BUILD_SHARED_LIBS)\r
59 \r
60 \r
61 IF (INSTALL_LIBS)\r
62         IF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)\r
63                 IF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)\r
64                         IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)\r
65                                 INSTALL(TARGETS BulletSoftBodySolvers_OpenCL_Apple  DESTINATION .)\r
66                         ELSE (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)\r
67                                 INSTALL(TARGETS BulletSoftBodySolvers_OpenCL_Apple  DESTINATION lib${LIB_SUFFIX})\r
68 #headers are already installed by BulletMultiThreaded library\r
69                         ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)\r
70                 ENDIF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)\r
71 \r
72                 IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)\r
73                         SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Apple PROPERTIES FRAMEWORK true)\r
74                         SET_TARGET_PROPERTIES(BulletSoftBodySolvers_OpenCL_Apple PROPERTIES PUBLIC_HEADER "${BulletSoftBodyOpenCLSolvers_HDRS}")\r
75                 ENDIF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)\r
76         ENDIF (NOT INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES)\r
77 ENDIF (INSTALL_LIBS)\r