diff --git a/core/metacling/src/CMakeLists.txt b/core/metacling/src/CMakeLists.txt index dea9f7c933a36..88d8f3a667483 100644 --- a/core/metacling/src/CMakeLists.txt +++ b/core/metacling/src/CMakeLists.txt @@ -40,6 +40,10 @@ ROOT_OBJECT_LIBRARY(MetaCling # This directory contains files that include llvm, which can give warnings. if(NOT MSVC) target_compile_options(MetaCling PRIVATE -Wno-error) +else() + if (NOT builtin_clang AND NOT CLANG_INCLUDE_DIRS) + set (CLANG_INCLUDE_DIRS "${LLVM_BINARY_DIR}/tools/clang/include") + endif() endif() @@ -87,12 +91,23 @@ add_dependencies(MetaCling CLING clangCppInterOp) if(NOT builtin_clang) set(prefixed_link_libraries) - foreach(dep ${CLING_DEPEND_LIBS}) - if("${dep}" MATCHES "^clang") - set(dep "${LLVM_LIBRARY_DIR}/lib${dep}.a") - endif() - list(APPEND prefixed_link_libraries "${dep}") - endforeach() + if(MSVC) + FILE(GLOB clangLibs ${LLVM_LIBRARY_DIR}/clang*.lib) + foreach(lib_path IN LISTS clangLibs) + get_filename_component(lib_name ${lib_path} NAME) + list(APPEND prefixed_link_libraries ${lib_name}) + endforeach(lib_path) + list(APPEND prefixed_link_libraries "LLVMFrontendDriver.lib") + list(APPEND prefixed_link_libraries "LLVMFrontendHLSL.lib") + list(APPEND prefixed_link_libraries "Version.lib") + else() + foreach(dep ${CLING_DEPEND_LIBS}) + if("${dep}" MATCHES "^clang") + set(dep "${LLVM_LIBRARY_DIR}/${dep}.a") + endif() + list(APPEND prefixed_link_libraries "${dep}") + endforeach() + endif() set(LINK_LIBS "${prefixed_link_libraries}") link_directories("${LLVM_LIBRARY_DIR}") endif() diff --git a/core/rootcling_stage1/CMakeLists.txt b/core/rootcling_stage1/CMakeLists.txt index bf7fb405fa4af..57ad216a9f639 100644 --- a/core/rootcling_stage1/CMakeLists.txt +++ b/core/rootcling_stage1/CMakeLists.txt @@ -20,6 +20,16 @@ endif() if(builtin_clang) set(CLING_LIBRARIES "clingMetaProcessor") else() + if(MSVC) + FILE(GLOB clangLibs ${LLVM_LIBRARY_DIR}/clang*.lib) + foreach(lib_path IN LISTS clangLibs) + get_filename_component(lib_name ${lib_path} NAME) + list(APPEND CLING_LIBRARIES ${lib_name}) + endforeach(lib_path) + list(APPEND CLING_LIBRARIES "LLVMFrontendDriver.lib") + list(APPEND CLING_LIBRARIES "LLVMFrontendHLSL.lib") + list(APPEND CLING_LIBRARIES "Version.lib") + endif() list(APPEND CLING_LIBRARIES ${CLING_DEPEND_LIBS}) link_directories("${LLVM_LIBRARY_DIR}") endif()