Compiler projects using llvm
set(LLVM_LINK_COMPONENTS
  ${LLVM_TARGETS_TO_BUILD}
  MC
  Option
  FrontendOpenMP
  Support
  )


add_clang_unittest(ToolingTests
  ASTSelectionTest.cpp
  CastExprTest.cpp
  CommentHandlerTest.cpp
  CompilationDatabaseTest.cpp
  DependencyScannerTest.cpp
  DiagnosticsYamlTest.cpp
  ExecutionTest.cpp
  FixItTest.cpp
  HeaderIncludesTest.cpp
  StandardLibraryTest.cpp
  LexicallyOrderedRecursiveASTVisitorTest.cpp
  LookupTest.cpp
  QualTypeNamesTest.cpp
  RangeSelectorTest.cpp
  RecursiveASTVisitorTests/Attr.cpp
  RecursiveASTVisitorTests/CallbacksLeaf.cpp
  RecursiveASTVisitorTests/CallbacksUnaryOperator.cpp
  RecursiveASTVisitorTests/CallbacksBinaryOperator.cpp
  RecursiveASTVisitorTests/CallbacksCompoundAssignOperator.cpp
  RecursiveASTVisitorTests/CallbacksCallExpr.cpp
  RecursiveASTVisitorTests/Class.cpp
  RecursiveASTVisitorTests/Concept.cpp
  RecursiveASTVisitorTests/ConstructExpr.cpp
  RecursiveASTVisitorTests/CXXBoolLiteralExpr.cpp
  RecursiveASTVisitorTests/CXXMemberCall.cpp
  RecursiveASTVisitorTests/CXXMethodDecl.cpp
  RecursiveASTVisitorTests/CXXOperatorCallExprTraverser.cpp
  RecursiveASTVisitorTests/DeclRefExpr.cpp
  RecursiveASTVisitorTests/ImplicitCtor.cpp
  RecursiveASTVisitorTests/ImplicitCtorInitializer.cpp
  RecursiveASTVisitorTests/InitListExprPostOrder.cpp
  RecursiveASTVisitorTests/InitListExprPostOrderNoQueue.cpp
  RecursiveASTVisitorTests/InitListExprPreOrder.cpp
  RecursiveASTVisitorTests/InitListExprPreOrderNoQueue.cpp
  RecursiveASTVisitorTests/IntegerLiteral.cpp
  RecursiveASTVisitorTests/LambdaDefaultCapture.cpp
  RecursiveASTVisitorTests/LambdaExpr.cpp
  RecursiveASTVisitorTests/LambdaTemplateParams.cpp
  RecursiveASTVisitorTests/MemberPointerTypeLoc.cpp
  RecursiveASTVisitorTests/NestedNameSpecifiers.cpp
  RecursiveASTVisitorTests/ParenExpr.cpp
  RecursiveASTVisitorTests/TemplateArgumentLocTraverser.cpp
  RecursiveASTVisitorTests/TraversalScope.cpp
  RecursiveASTVisitorTestDeclVisitor.cpp
  RecursiveASTVisitorTestPostOrderVisitor.cpp
  RecursiveASTVisitorTestTypeLocVisitor.cpp
  RefactoringActionRulesTest.cpp
  RefactoringCallbacksTest.cpp
  RefactoringTest.cpp
  ReplacementsYamlTest.cpp
  RewriterTest.cpp
  SourceCodeBuildersTest.cpp
  SourceCodeTest.cpp
  StencilTest.cpp
  ToolingTest.cpp
  TransformerTest.cpp
  )

clang_target_link_libraries(ToolingTests
  PRIVATE
  clangAST
  clangASTMatchers
  clangBasic
  clangDependencyScanning
  clangDriver
  clangFormat
  clangFrontend
  clangLex
  clangRewrite
  clangSerialization
  clangTooling
  clangToolingCore
  clangToolingInclusions
  clangToolingRefactoring
  clangTransformer
  )

target_link_libraries(ToolingTests
  PRIVATE
  LLVMTestingSupport
  clangTesting
)

add_subdirectory(Syntax)