aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp
diff options
context:
space:
mode:
authorShilei Tian <i@tianshilei.me>2022-12-06 11:36:07 -0500
committerShilei Tian <i@tianshilei.me>2022-12-06 11:37:37 -0500
commite682a76c3bf61c52628d79d6ec4db221430768c0 (patch)
treecd564e748d89b9e1fe6c1ff5d3bb96451454bdc9 /llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp
parentadc7c589c3dd35af5991ee481fa4667094bca548 (diff)
downloadllvm-e682a76c3bf61c52628d79d6ec4db221430768c0.zip
llvm-e682a76c3bf61c52628d79d6ec4db221430768c0.tar.gz
llvm-e682a76c3bf61c52628d79d6ec4db221430768c0.tar.bz2
[OpenMP] Use `add_llvm_library` to build the target `PluginInterface` in `plugins-nextgen`
This patch uses `add_llvm_library` to build the target `PluginInterface` since it can handle LLVM dependences much better. One temporary drawback of using this is that currently LLVM CMake macro doesn't support object libraries very well (there was a try a couple years ago but it was reverted later https://github.com/llvm/llvm-project/commit/29e57229497711a3a294f437b59afa6ddc36a3d8). After switching to that, `CXX_VISIBILITY_PRESET` can not be set correctly, which can cause runtime error that a function call from one plugin could go to another. As a consequence, `PluginInterface` is built as a static library for now. I have asked the question in CMake community (https://discourse.cmake.org/t/set-target-properties-doesnt-work-properly/7016). Once that issue is solved, I'll switch it back to object library. It is not necessarily too bad to use static library, especially `BUILDTREE_ONLY` is already set such that `PluginInterface.a` will not be installed. Reviewed By: jhuber6 Differential Revision: https://reviews.llvm.org/D139371
Diffstat (limited to 'llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp')
0 files changed, 0 insertions, 0 deletions