cmake: handle llvm system libraries separately from the llvm libraries themselves, to fix path issues on windows

This commit is contained in:
kcbanner
2022-11-01 23:11:52 -04:00
parent ed23615638
commit 4ffc2bbb5e
3 changed files with 33 additions and 3 deletions

View File

@@ -5,6 +5,7 @@
# LLVM_FOUND
# LLVM_INCLUDE_DIRS
# LLVM_LIBRARIES
# LLVM_SYSTEM_LIBRARIES
# LLVM_LIBDIRS
# LLVM_LINK_MODE
@@ -172,9 +173,9 @@ if(ZIG_USE_LLVM_CONFIG)
OUTPUT_STRIP_TRAILING_WHITESPACE)
string(REPLACE " " ";" LLVM_STATIC_SYSTEM_LIBS "${LLVM_STATIC_SYSTEM_LIBS_SPACES}")
set(LLVM_LIBRARIES ${LLVM_LIBRARIES} ${LLVM_SYSTEM_LIBS} ${LLVM_STATIC_SYSTEM_LIBS})
set(LLVM_SYSTEM_LIBRARIES ${LLVM_SYSTEM_LIBS} ${LLVM_STATIC_SYSTEM_LIBS})
else()
set(LLVM_LIBRARIES ${LLVM_LIBRARIES} ${LLVM_SYSTEM_LIBS})
set(LLVM_SYSTEM_LIBRARIES ${LLVM_SYSTEM_LIBS})
endif()
execute_process(
@@ -369,7 +370,11 @@ else()
find_path(LLVM_INCLUDE_DIRS NAMES llvm/IR/IRBuilder.h)
endif()
if(NOT LLVM_SYSTEM_LIBRARIES)
set(LLVM_SYSTEM_LIBRARIES "")
endif()
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(llvm DEFAULT_MSG LLVM_LIBRARIES LLVM_INCLUDE_DIRS)
mark_as_advanced(LLVM_INCLUDE_DIRS LLVM_LIBRARIES LLVM_LIBDIRS)
mark_as_advanced(LLVM_INCLUDE_DIRS LLVM_LIBRARIES LLVM_SYSTEM_LIBRARIES LLVM_LIBDIRS)