diff options
| author | NAKAMURA Takumi <geek4civic@gmail.com> | 2017-07-31 11:45:20 +0000 |
|---|---|---|
| committer | NAKAMURA Takumi <geek4civic@gmail.com> | 2017-07-31 11:45:20 +0000 |
| commit | 058fdd3d49c6d6640afee628bcf34bebb9738ca1 (patch) | |
| tree | 0387af69ba04e9cfd1a039d9ba7adb53dfb24a85 | |
| parent | 39977e4e7678fda25c2a4ccea8b14f331db77d04 (diff) | |
| download | bcm5719-llvm-058fdd3d49c6d6640afee628bcf34bebb9738ca1.tar.gz bcm5719-llvm-058fdd3d49c6d6640afee628bcf34bebb9738ca1.zip | |
[CMake][Modules] libclang: Ignore _CINDEX_LIB_ and CLANG_TOOL_EXTRA_BUILD for -fmodules.
CLANG_TOOL_EXTRA_BUILD doesn't affect headers.
_CINDEX_LIB_ is defined when the target is SHARED.
On Win32, it affects clang-c/Platform.h and it shouldn't be ignored.
This is part of https://reviews.llvm.org/D35559
llvm-svn: 309557
| -rw-r--r-- | clang/tools/libclang/CMakeLists.txt | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/clang/tools/libclang/CMakeLists.txt b/clang/tools/libclang/CMakeLists.txt index 2dd67030763..a28499c2c46 100644 --- a/clang/tools/libclang/CMakeLists.txt +++ b/clang/tools/libclang/CMakeLists.txt @@ -51,6 +51,9 @@ if (TARGET clangTidyPlugin) add_definitions(-DCLANG_TOOL_EXTRA_BUILD) list(APPEND LIBS clangTidyPlugin) list(APPEND LIBS clangIncludeFixerPlugin) + if(LLVM_ENABLE_MODULES) + list(APPEND LLVM_COMPILE_FLAGS "-fmodules-ignore-macro=CLANG_TOOL_EXTRA_BUILD") + endif() endif () find_library(DL_LIBRARY_PATH dl) @@ -115,6 +118,12 @@ if(ENABLE_SHARED) PROPERTIES VERSION ${LIBCLANG_LIBRARY_VERSION} DEFINE_SYMBOL _CINDEX_LIB_) + # FIXME: _CINDEX_LIB_ affects dllexport/dllimport on Win32. + if(LLVM_ENABLE_MODULES AND NOT WIN32) + target_compile_options(libclang PRIVATE + "-fmodules-ignore-macro=_CINDEX_LIB_" + ) + endif() endif() endif() |

