@@ -25,6 +25,19 @@ set(WARPCTC_INSTALL_DIR ${THIRD_PARTY_PATH}/install/warpctc)
25
25
set (WARPCTC_REPOSITORY ${GIT_URL} /baidu-research/warp-ctc.git)
26
26
set (WARPCTC_TAG 37ece0e1bbe8a0019a63ac7e6462c36591c66a5b)
27
27
28
+ set (WARPCTC_SOURCE_DIR ${THIRD_PARTY_PATH} /warpctc/src/extern_warpctc)
29
+ set (WARPCTC_PATCH_COMMAND "" )
30
+ set (WARPCTC_CCBIN_OPTION "" )
31
+ if (NOT WIN32 AND WITH_GPU)
32
+ if (${CMAKE_CUDA_COMPILER_VERSION} LESS 12.0 AND ${CMAKE_CXX_COMPILER_VERSION}
33
+ VERSION_GREATER 12.0)
34
+ file (TO_NATIVE_PATH
35
+ ${PADDLE_SOURCE_DIR} /patches/warpctc/CMakeLists.txt.patch native_src)
36
+ set (WARPCTC_PATCH_COMMAND patch -d ${WARPCTC_SOURCE_DIR} < ${native_src} )
37
+ set (WARPCTC_CCBIN_OPTION -DCCBIN_COMPILER=${CCBIN_COMPILER} )
38
+ endif ()
39
+ endif ()
40
+
28
41
set (WARPCTC_INCLUDE_DIR
29
42
"${WARPCTC_INSTALL_DIR} /include"
30
43
CACHE PATH "Warp-ctc Directory" FORCE)
@@ -112,7 +125,7 @@ else()
112
125
GIT_TAG ${WARPCTC_TAG}
113
126
PREFIX ${WARPCTC_PREFIX_DIR}
114
127
UPDATE_COMMAND ""
115
- PATCH_COMMAND ""
128
+ PATCH_COMMAND ${WARPCTC_PATCH_COMMAND}
116
129
#BUILD_ALWAYS 1
117
130
CMAKE_ARGS -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
118
131
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
@@ -132,7 +145,9 @@ else()
132
145
-DBUILD_TESTS=OFF
133
146
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
134
147
-DCMAKE_BUILD_TYPE=${THIRD_PARTY_BUILD_TYPE}
148
+ -DCUDA_TOOLKIT_ROOT_DIR=${CUDA_TOOLKIT_ROOT_DIR}
135
149
${EXTERNAL_OPTIONAL_ARGS}
150
+ ${WARPCTC_CCBIN_OPTION}
136
151
CMAKE_CACHE_ARGS
137
152
-DCMAKE_BUILD_TYPE:STRING =${THIRD_PARTY_BUILD_TYPE}
138
153
-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL =ON
0 commit comments