aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/Support/VirtualFileSystemTest.cpp
diff options
context:
space:
mode:
authorThomas Fransham <tfransham@gmail.com>2024-09-06 18:51:44 +0100
committerGitHub <noreply@github.com>2024-09-06 10:51:44 -0700
commit59f8796aaabc1ce400a8698431d3c6bfab4ad1a4 (patch)
tree97fa62e5b39b25d0c272d60f26fa19599c2140e8 /llvm/unittests/Support/VirtualFileSystemTest.cpp
parentfb1494137e551448d8742d5e6367bf62e923598d (diff)
downloadllvm-59f8796aaabc1ce400a8698431d3c6bfab4ad1a4.zip
llvm-59f8796aaabc1ce400a8698431d3c6bfab4ad1a4.tar.gz
llvm-59f8796aaabc1ce400a8698431d3c6bfab4ad1a4.tar.bz2
Initial changes for llvm shared library build using explicit visibility annotations
These are my initial build and code changes to supporting building llvm as shared library/DLL on windows(without force exporting all symbols) and making symbol visibility hidden by default on Linux which adding explicit symbol visibility macros to the whole llvm codebase. Updated cmake code to allow building llvm-shlib on windows by appending /WHOLEARCHIVE:lib to the linker options. Remove the hardcoded CMake error from using LLVM_BUILD_LLVM_DYLIB on windows. Updated CMake to define new macros to control conditional export macros in llvm/Support/Compiler.h Use /Zc:dllexportInlines- when compiling with clang-cl on windows with a opt out CMake option to disable using it. Replace some use of LLVM_EXTERNAL_VISIBILITY with new export macros. Some of the cmake and code changes are based on @tstellar's earlier PR https://github.com/llvm/llvm-project/pull/67502. I have Windows building using clang-cl, while for MSVC its at-least able to build libllvm, but some tests can't build because llvm iterator template metaprogramming that doesn't work well with dllexport. Linux should build without issue. My full branch is here https://github.com/fsfod/llvm-project/tree/llvm-export-api-20.0 and including all the auto generated export macros from clang tooling based system.
Diffstat (limited to 'llvm/unittests/Support/VirtualFileSystemTest.cpp')
0 files changed, 0 insertions, 0 deletions