mirror of
https://github.com/intel/llvm.git
synced 2026-01-18 07:57:36 +08:00
[flang] Fix CMake bug in the definition of flang-new
Recent patch that improved Flang's compatibility with respect to how LLVM dynamic libraries should be linked (and specified in CMake recipes), introduced a bug in the definition of `flang-new`: * https://reviews.llvm.org/D87893 More specifically, `add_flang_tool` does not support the `LINK_COMPONENTS` CMake argument. Instead, one should set `LLVM_LINK_COMPONENTS` before calling `add_flang_tool`. This patch reverts the change for `flang-new` from https://reviews.llvm.org/D87893, and instead: * sets `LLVM_LINK_COMPONENTS` * calls `clang_target_link_libraries` to add Clang dependencies Differential Revision: https://reviews.llvm.org/D89403
This commit is contained in:
@@ -82,6 +82,10 @@ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
|
||||
include(HandleLLVMOptions)
|
||||
include(VersionFromVCS)
|
||||
|
||||
if(FLANG_BUILD_NEW_DRIVER)
|
||||
include(AddClang)
|
||||
endif()
|
||||
|
||||
if(LINK_WITH_FIR)
|
||||
include(TableGen)
|
||||
find_package(MLIR REQUIRED CONFIG)
|
||||
|
||||
@@ -4,23 +4,25 @@
|
||||
# Set your project compile flags.
|
||||
link_directories(${LLVM_LIBRARY_DIR})
|
||||
|
||||
set( LLVM_LINK_COMPONENTS
|
||||
${LLVM_TARGETS_TO_BUILD}
|
||||
Option
|
||||
Support
|
||||
)
|
||||
|
||||
add_flang_tool(flang-new
|
||||
driver.cpp
|
||||
fc1_main.cpp
|
||||
|
||||
LINK_COMPONENTS
|
||||
|
||||
${LLVM_COMMON_COMPONENTS}
|
||||
Support
|
||||
Target
|
||||
Option
|
||||
)
|
||||
|
||||
# Link against LLVM and Clang libraries
|
||||
target_link_libraries(flang-new
|
||||
PRIVATE
|
||||
flangFrontend
|
||||
flangFrontendTool
|
||||
)
|
||||
|
||||
clang_target_link_libraries(flang-new
|
||||
PRIVATE
|
||||
clangDriver
|
||||
clangBasic
|
||||
clangFrontend
|
||||
|
||||
Reference in New Issue
Block a user