diff --git a/flang/cmake/modules/AddFlang.cmake b/flang/cmake/modules/AddFlang.cmake --- a/flang/cmake/modules/AddFlang.cmake +++ b/flang/cmake/modules/AddFlang.cmake @@ -20,7 +20,7 @@ cmake_parse_arguments(ARG "SHARED;STATIC;INSTALL_WITH_TOOLCHAIN" "" - "ADDITIONAL_HEADERS" + "ADDITIONAL_HEADERS;CLANG_LIBS" ${ARGN}) set(srcs) if (MSVC_IDE OR XCODE) @@ -63,6 +63,8 @@ llvm_add_library(${name} ${LIBTYPE} ${ARG_UNPARSED_ARGUMENTS} ${srcs}) + clang_target_link_libraries(${name} PRIVATE ${ARG_CLANG_LIBS}) + if (TARGET ${name}) if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "libflang" diff --git a/flang/lib/FrontendTool/CMakeLists.txt b/flang/lib/FrontendTool/CMakeLists.txt --- a/flang/lib/FrontendTool/CMakeLists.txt +++ b/flang/lib/FrontendTool/CMakeLists.txt @@ -13,16 +13,8 @@ LINK_COMPONENTS Option Support -) -if(CLANG_LINK_CLANG_DYLIB) - add_dependencies(flangFrontend clang-cpp) -else() - add_dependencies(flangFrontendTool clangBasic) -endif() - -clang_target_link_libraries(flangFrontendTool - PRIVATE + CLANG_LIBS clangBasic clangDriver -) +) \ No newline at end of file