@@ -68,6 +68,7 @@ set(LLVM_ENABLE_TERMINFO false CACHE BOOL "desc" FORCE)
68
68
set (LLVM_ENABLE_DUMP true CACHE BOOL "desc" FORCE )
69
69
set (LLVM_BUILD_LLVM_DYLIB false CACHE BOOL "desc" FORCE )
70
70
set (LLVM_LINK_LLVM_DYLIB false CACHE BOOL "desc" FORCE )
71
+ set (LLVM_ENABLE_PROJECTS "clang" CACHE STRING "desc" FORCE )
71
72
72
73
if (DEFINED BUILD_PACKAGE )
73
74
if (NOT WIN32 )
@@ -103,6 +104,7 @@ set(LLVM_OPTIONS
103
104
"-DLLVM_ENABLE_DUMP=${LLVM_ENABLE_DUMP} "
104
105
"-DLLVM_BUILD_LLVM_DYLIB=${LLVM_BUILD_LLVM_DYLIB} "
105
106
"-DLLVM_LINK_LLVM_DYLIB=${LLVM_LINK_LLVM_DYLIB} "
107
+ "-DLLVM_ENABLE_PROJECTS=${LLVM_ENABLE_PROJECTS} "
106
108
)
107
109
108
110
if (_ASSERTBUILD )
@@ -149,13 +151,13 @@ endif()
149
151
if (((NOT EXISTS ${LLVM_SOURCE_URL} ) AND (NOT EXPECTED_LLVM_VERSION )) OR DEFINED BUILD_PACKAGE )
150
152
# Use LLVM sources stored at fixed location
151
153
if (NOT DEFINED BUILD_PACKAGE )
152
- set (LLVM_SOURCE_URL ${CMAKE_CURRENT_SOURCE_DIR} /../llvm-project/llvm )
154
+ set (LLVM_SOURCE_URL ${CMAKE_CURRENT_SOURCE_DIR} /../llvm-project )
153
155
endif ()
154
156
if (EXISTS ${LLVM_SOURCE_URL} )
155
157
message (STATUS "[LLVM_PATCHER] : Manual read LLVM version from llvm-project/llvm/CMakeLists.txt file" )
156
- file (STRINGS ${LLVM_SOURCE_URL} /CMakeLists.txt LLVM_VERSION_MAJOR_MATCH REGEX "set\\ (LLVM_VERSION_MAJOR [0-9]+\\ )" )
157
- file (STRINGS ${LLVM_SOURCE_URL} /CMakeLists.txt LLVM_VERSION_MINOR_MATCH REGEX "set\\ (LLVM_VERSION_MINOR [0-9]+\\ )" )
158
- file (STRINGS ${LLVM_SOURCE_URL} /CMakeLists.txt LLVM_VERSION_PATCH_MATCH REGEX "set\\ (LLVM_VERSION_PATCH [0-9]+\\ )" )
158
+ file (STRINGS ${LLVM_SOURCE_URL} /llvm/ CMakeLists.txt LLVM_VERSION_MAJOR_MATCH REGEX "set\\ (LLVM_VERSION_MAJOR [0-9]+\\ )" )
159
+ file (STRINGS ${LLVM_SOURCE_URL} /llvm/ CMakeLists.txt LLVM_VERSION_MINOR_MATCH REGEX "set\\ (LLVM_VERSION_MINOR [0-9]+\\ )" )
160
+ file (STRINGS ${LLVM_SOURCE_URL} /llvm/ CMakeLists.txt LLVM_VERSION_PATCH_MATCH REGEX "set\\ (LLVM_VERSION_PATCH [0-9]+\\ )" )
159
161
160
162
string (REGEX MATCH "[0-9]+" LLVM_VERSION_MAJOR ${LLVM_VERSION_MAJOR_MATCH} )
161
163
string (REGEX MATCH "[0-9]+" LLVM_VERSION_MINOR ${LLVM_VERSION_MINOR_MATCH} )
@@ -175,7 +177,7 @@ else()
175
177
endif ()
176
178
177
179
if (NOT EXPECTED_LLVM_VERSION )
178
- set (EXPECTED_LLVM_VERSION "7 .0.0" )
180
+ set (EXPECTED_LLVM_VERSION "10 .0.0" )
179
181
endif ()
180
182
181
183
if (NOT LLVM_SOURCE_DIR )
@@ -184,24 +186,26 @@ endif()
184
186
185
187
if (NOT EXISTS ${LLVM_SOURCE_URL} )
186
188
# Use LLVM sources stored at fixed location
187
- set (LLVM_SOURCE_URL /opt/src/llvm-project_${EXPECTED_LLVM_VERSION}/llvm )
189
+ set (LLVM_SOURCE_URL /opt/src/llvm-project_${EXPECTED_LLVM_VERSION} )
188
190
endif ()
189
191
if (NOT EXISTS ${LLVM_SOURCE_URL} )
190
192
# Use LLVM sources stored at fixed location
191
- set (LLVM_SOURCE_URL ${CMAKE_CURRENT_SOURCE_DIR} /../llvm-project_${EXPECTED_LLVM_VERSION}/llvm )
193
+ set (LLVM_SOURCE_URL ${CMAKE_CURRENT_SOURCE_DIR} /../llvm-project_${EXPECTED_LLVM_VERSION} )
192
194
endif ()
193
195
if (NOT EXISTS ${LLVM_SOURCE_URL} )
194
196
# Use LLVM sources stored at fixed location
195
- set (LLVM_SOURCE_URL ${CMAKE_CURRENT_SOURCE_DIR} /../../../../llvm-project_${EXPECTED_LLVM_VERSION}/llvm )
197
+ set (LLVM_SOURCE_URL ${CMAKE_CURRENT_SOURCE_DIR} /../../../../llvm-project_${EXPECTED_LLVM_VERSION} )
196
198
endif ()
197
199
198
200
message (STATUS "[LLVM_PATCHER] : LLVM_SOURCE_URL = ${LLVM_SOURCE_URL} " )
199
201
message (STATUS "[LLVM_PATCHER] : LLVM_OPTIONS = ${LLVM_OPTIONS} " )
200
202
201
203
if (NOT EXISTS ${LLVM_SOURCE_DIR} )
202
- # Copy stock LLVM sources to LLVM_SOURCE_DIR
203
- message (STATUS "[LLVM_PATCHER] : Copying stock LLVM sources to ${LLVM_SOURCE_DIR} " )
204
- execute_process (COMMAND ${CMAKE_COMMAND} -E copy_directory ${LLVM_SOURCE_URL} ${LLVM_SOURCE_DIR} )
204
+ # Copy stock LLVM sources to LLVM_SOURCE_DIR
205
+ message (STATUS "[LLVM_PATCHER] : Copying stock LLVM and CLANG sources ${LLVM_SOURCE_URL} to ${LLVM_SOURCE_DIR} " )
206
+ execute_process (COMMAND ${CMAKE_COMMAND} -E copy_directory ${LLVM_SOURCE_URL} /.git ${LLVM_SOURCE_DIR} /../.git )
207
+ execute_process (COMMAND ${CMAKE_COMMAND} -E copy_directory ${LLVM_SOURCE_URL} /clang ${LLVM_SOURCE_DIR} /../clang )
208
+ execute_process (COMMAND ${CMAKE_COMMAND} -E copy_directory ${LLVM_SOURCE_URL} /llvm ${LLVM_SOURCE_DIR} )
205
209
206
210
FILE (GLOB dirsPatch RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} /releases ${CMAKE_CURRENT_SOURCE_DIR} /releases/* )
207
211
list (SORT dirsPatch )
0 commit comments