Link include-fixer into libclang if clang-tools-extra is checked out.

include-fixer only slightly bloats the size of libclang, but since
libclang has no explicit plugin mechanism it's the only way of getting
this to work. Clang-tidy is already there and so far there weren't many
complaints ;)

This is designed to be easy to remove again if libclang ever grows
proper plugin support.

llvm-svn: 287229
This commit is contained in:
Benjamin Kramer
2016-11-17 15:22:36 +00:00
parent cd2494e93f
commit 9eba7354bb
2 changed files with 7 additions and 0 deletions

View File

@@ -8120,4 +8120,10 @@ cxindex::Logger::~Logger() {
extern volatile int ClangTidyPluginAnchorSource;
static int LLVM_ATTRIBUTE_UNUSED ClangTidyPluginAnchorDestination =
ClangTidyPluginAnchorSource;
// This anchor is used to force the linker to link the clang-include-fixer
// plugin.
extern volatile int ClangIncludeFixerPluginAnchorSource;
static int LLVM_ATTRIBUTE_UNUSED ClangIncludeFixerPluginAnchorDestination =
ClangIncludeFixerPluginAnchorSource;
#endif

View File

@@ -50,6 +50,7 @@ endif ()
if (TARGET clangTidyPlugin)
add_definitions(-DCLANG_TOOL_EXTRA_BUILD)
list(APPEND LIBS clangTidyPlugin)
list(APPEND LIBS clangIncludeFixerPlugin)
endif ()
find_library(DL_LIBRARY_PATH dl)