[llvm] 080ade0 - [llvm] statically link TableGenTests (#147577)
via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 9 09:37:37 PDT 2025
Author: Andrew Rogers
Date: 2025-07-09T09:37:33-07:00
New Revision: 080ade03ac21f493f6bacb27021bf708a4554891
URL: https://github.com/llvm/llvm-project/commit/080ade03ac21f493f6bacb27021bf708a4554891
DIFF: https://github.com/llvm/llvm-project/commit/080ade03ac21f493f6bacb27021bf708a4554891.diff
LOG: [llvm] statically link TableGenTests (#147577)
## Purpose
Statically link `TableGenTests` so it can still build when linked
against an LLVM Windows DLL.
## Background
The effort to build LLVM as a WIndows DLL is tracked in #109483.
Additional context is provided in [this
discourse](https://discourse.llvm.org/t/psa-annotating-llvm-public-interface/85307).
If `TableGenTests` is linked against LLVM built as a DLL on Windows, it
will fail due to a large number of duplicate symbols found in both the
LLVM DLL and TableGen libraries. This is because `LLVMTableGenBasic` and
`LLVMTableGenCommon` are linked statically against LLVM (using
`DISABLE_LLVM_LINK_LLVM_DYLIB`) so already contain a sub-set of symbols
also exported from the LLVM DLL.
This patch was originally part of #145448.
Added:
Modified:
llvm/unittests/TableGen/CMakeLists.txt
Removed:
################################################################################
diff --git a/llvm/unittests/TableGen/CMakeLists.txt b/llvm/unittests/TableGen/CMakeLists.txt
index 57b237306b19c..854f6c0f9b162 100644
--- a/llvm/unittests/TableGen/CMakeLists.txt
+++ b/llvm/unittests/TableGen/CMakeLists.txt
@@ -13,6 +13,8 @@ add_llvm_unittest(TableGenTests
AutomataTest.cpp
CodeExpanderTest.cpp
ParserEntryPointTest.cpp
+
+ DISABLE_LLVM_LINK_LLVM_DYLIB
)
target_link_libraries(TableGenTests PRIVATE LLVMTableGenCommon LLVMTableGen)
More information about the llvm-commits
mailing list