@@ -38,6 +38,10 @@ if(CMAKE_CROSSCOMPILING AND OPENCL_CLANG_BUILD_EXTERNAL)
38
38
llvm_create_cross_target (${PROJECT_NAME} NATIVE "" Release )
39
39
endif ()
40
40
41
+ option (LLVMSPIRV_INCLUDED_IN_LLVM
42
+ "Set to ON if libLLVMSPIRVLib is linked into libLLVM" ON )
43
+ option (APPLY_PATCHES "Apply local patches" ON )
44
+
41
45
if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
42
46
set (USE_PREBUILT_LLVM ON )
43
47
@@ -59,8 +63,6 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
59
63
set (CMAKE_CXX_STANDARD 17 )
60
64
set (CMAKE_CXX_STANDARD_REQUIRED ON )
61
65
62
- option (LLVMSPIRV_INCLUDED_IN_LLVM
63
- "Set to ON if libLLVMSPIRVLib is linked into libLLVM" ON )
64
66
if (LLVMSPIRV_INCLUDED_IN_LLVM )
65
67
message (STATUS "[OPENCL-CLANG] Assuming that libLLVMSPIRVLib is linked into libLLVM" )
66
68
else (LLVMSPIRV_INCLUDED_IN_LLVM )
@@ -157,18 +159,25 @@ if(NOT USE_PREBUILT_LLVM)
157
159
)
158
160
endif ()
159
161
160
- set (CLANG_BASE_REVISION release/18.x )
162
+ set (LLVM_BASE_REVISION release/18.x )
161
163
set (SPIRV_BASE_REVISION llvm_release_180 )
162
164
set (TARGET_BRANCH "ocl-open-180" )
163
-
164
- apply_patches (${CLANG_SOURCE_DIR}
165
- ${CMAKE_CURRENT_SOURCE_DIR} /patches/clang
166
- ${CLANG_BASE_REVISION}
167
- ${TARGET_BRANCH} )
168
- apply_patches (${SPIRV_SOURCE_DIR}
169
- ${CMAKE_CURRENT_SOURCE_DIR} /patches/spirv
170
- ${SPIRV_BASE_REVISION}
171
- ${TARGET_BRANCH} )
165
+ get_filename_component (LLVM_MONOREPO_DIR ${LLVM_SOURCE_DIR} DIRECTORY )
166
+ set (LLVM_PATCHES_DIRS ${CMAKE_CURRENT_SOURCE_DIR} /patches/llvm
167
+ ${CMAKE_CURRENT_SOURCE_DIR} /patches/clang )
168
+ if (APPLY_PATCHES )
169
+ message (STATUS "APPLY_PATCHES is enabled." )
170
+ apply_patches (${LLVM_MONOREPO_DIR}
171
+ "${LLVM_PATCHES_DIRS} "
172
+ ${LLVM_BASE_REVISION}
173
+ ${TARGET_BRANCH} )
174
+ apply_patches (${SPIRV_SOURCE_DIR}
175
+ ${CMAKE_CURRENT_SOURCE_DIR} /patches/spirv
176
+ ${SPIRV_BASE_REVISION}
177
+ ${TARGET_BRANCH} )
178
+ else ()
179
+ message (STATUS "APPLY_PATCHES is disabled, skip patch apply process." )
180
+ endif ()
172
181
endif (NOT USE_PREBUILT_LLVM )
173
182
174
183
#
0 commit comments