diff --git a/include/swift/APIDigester/ModuleAnalyzerNodes.h b/include/swift/APIDigester/ModuleAnalyzerNodes.h index 1d3b36afc3f86..b698bf04b382a 100644 --- a/include/swift/APIDigester/ModuleAnalyzerNodes.h +++ b/include/swift/APIDigester/ModuleAnalyzerNodes.h @@ -17,11 +17,6 @@ #ifndef __SWIFT_ABI_DIGESTER_MODULE_NODES_H__ #define __SWIFT_ABI_DIGESTER_MODULE_NODES_H__ -#include "clang/AST/ASTContext.h" -#include "clang/AST/DeclObjC.h" -#include "clang/Lex/Preprocessor.h" -#include "clang/Sema/Lookup.h" -#include "clang/Sema/Sema.h" #include "llvm/ADT/TinyPtrVector.h" #include "llvm/ADT/STLExtras.h" #include "llvm/Support/CommandLine.h" diff --git a/lib/APIDigester/CMakeLists.txt b/lib/APIDigester/CMakeLists.txt index 29d23d1223e7a..1fa0c63c2fc8f 100644 --- a/lib/APIDigester/CMakeLists.txt +++ b/lib/APIDigester/CMakeLists.txt @@ -7,4 +7,10 @@ add_swift_host_library(swiftAPIDigester STATIC target_link_libraries(swiftAPIDigester PRIVATE swiftIDE) +# Clang dependencies. These are private because APIDigester's public +# interface does not use Clang symbols. +target_link_libraries(swiftAPIDigester PRIVATE + clangAST + clangLex) + set_swift_llvm_is_available(swiftAPIDigester) diff --git a/lib/APIDigester/ModuleAnalyzerNodes.cpp b/lib/APIDigester/ModuleAnalyzerNodes.cpp index 6668b9ae5b439..c794e7b322dcb 100644 --- a/lib/APIDigester/ModuleAnalyzerNodes.cpp +++ b/lib/APIDigester/ModuleAnalyzerNodes.cpp @@ -3,6 +3,8 @@ #include "swift/Basic/Defer.h" #include "swift/Parse/Lexer.h" #include "swift/Sema/IDETypeChecking.h" +#include "clang/AST/DeclObjC.h" +#include "clang/Lex/Preprocessor.h" #include "llvm/ADT/STLExtras.h" #include #include diff --git a/lib/IDE/CMakeLists.txt b/lib/IDE/CMakeLists.txt index 7b03bb48cc2a4..11611d83f073f 100644 --- a/lib/IDE/CMakeLists.txt +++ b/lib/IDE/CMakeLists.txt @@ -46,6 +46,14 @@ target_link_libraries(swiftIDE PRIVATE swiftParse swiftSema) +# Clang dependencies. These are private because IDE's public +# interface does not use Clang symbols. +target_link_libraries(swiftIDE PRIVATE + clangAST + clangBasic + clangIndex + clangLex) + if (SWIFT_BUILD_SWIFT_SYNTAX) target_link_libraries(swiftIDE PRIVATE swiftIDEUtilsBridging