blob: ab76997f88abefec8170291322f004b8189a393e (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
#
# Build PxCudaContextManager common
#
# CUDA!
SET(CUDA_NVCC_FLAGS "-lineinfo -use_fast_math -ftz=true -prec-div=false -prec-sqrt=false -gencode arch=compute_30,code=sm_30 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_50,code=compute_50 -D_CONSOLE -D_WIN32_WINNT=0x0501")
CUDA_INCLUDE_DIRECTORIES(
${PXSHARED_SOURCE_DIR}/../include
${PXSHARED_SOURCE_DIR}/foundation/include
${PXSHARED_SOURCE_DIR}/cudamanager/include
)
SET(CUDA_PROPAGATE_HOST_FLAGS OFF)
# Compile the CuKernelSolver - it has different options than the other CUDA files
SET(CUDA_NVCC_FLAGS_DEBUG "-D_DEBUG -D_CONSOLE -D_WIN32_WINNT=0x0501 ${CUDA_COMPILER_OPTION_DEBUG}")
SET(CUDA_NVCC_FLAGS_CHECKED "-DNDEBUG -D_CONSOLE -D_WIN32_WINNT=0x0501 ${CUDA_COMPILER_OPTION_CHECKED}")
SET(CUDA_NVCC_FLAGS_PROFILE "-DNDEBUG -D_CONSOLE -D_WIN32_WINNT=0x0501 ${CUDA_COMPILER_OPTION_PROFILE}")
SET(CUDA_NVCC_FLAGS_RELEASE "-DNDEBUG -D_CONSOLE -D_WIN32_WINNT=0x0501 ${CUDA_COMPILER_OPTION_RELEASE}")
SET(CUDACONTEXTMANAGER_HEADERS
${PXSHARED_SOURCE_DIR}/../include/cudamanager/PxCudaContextManager.h
${PXSHARED_SOURCE_DIR}/../include/cudamanager/PxCudaMemoryManager.h
${PXSHARED_SOURCE_DIR}/../include/cudamanager/PxGpuCopyDesc.h
${PXSHARED_SOURCE_DIR}/../include/cudamanager/PxGpuCopyDescQueue.h
)
SOURCE_GROUP(include FILES ${CUDACONTEXTMANAGER_HEADERS})
SET(CUDACONTEXTMANAGER_KERNELS
${LL_SOURCE_DIR}/src/CUDA/UtilKernels.cu
)
SOURCE_GROUP("src kernels" FILES ${CUDACONTEXTMANAGER_KERNELS})
SET(CUDACONTEXTMANAGER_SOURCE
${LL_SOURCE_DIR}/src/CudaContextManager.cpp
${LL_SOURCE_DIR}/src/CudaKernelWrangler.cpp
${LL_SOURCE_DIR}/src/CudaMemoryManager.cpp
${LL_SOURCE_DIR}/src/HeapManagerRef.cpp
${LL_SOURCE_DIR}/src/GpuDispatcher.cpp
${LL_SOURCE_DIR}/src/BlockingWait.cpp
${LL_SOURCE_DIR}/src/PhysXDeviceSettings.cpp
)
SOURCE_GROUP(src\\src FILES ${CUDACONTEXTMANAGER_SOURCE})
SET(CUDACONTEXTMANAGER_SOURCE_HEADERS
${LL_SOURCE_DIR}/include/CudaContextManager.h
${LL_SOURCE_DIR}/include/CudaKernelWrangler.h
${LL_SOURCE_DIR}/include/GpuDispatcher.h
${LL_SOURCE_DIR}/include/PhysXDeviceSettings.h
)
SOURCE_GROUP(src\\src FILES ${CUDACONTEXTMANAGER_SOURCE_HEADERS})
CUDA_ADD_LIBRARY(PxCudaContextManager STATIC
${CUDACONTEXTMANAGER_HEADERS}
${CUDACONTEXTMANAGER_SOURCE}
${CUDACONTEXTMANAGER_SOURCE_HEADERS}
${CUDACONTEXTMANAGER_KERNELS}
)
# Target specific compile options
TARGET_INCLUDE_DIRECTORIES(PxCudaContextManager
PRIVATE ${PXSHARED_SOURCE_DIR}/../include
PRIVATE ${PXSHARED_SOURCE_DIR}/foundation/include
PRIVATE ${PXSHARED_SOURCE_DIR}/task/include
PRIVATE ${PXSHARED_SOURCE_DIR}/cudamanager/include
PRIVATE ${LL_SOURCE_DIR}/include
PRIVATE ${CUDA_INCLUDE_DIRS}
)
|