1e5dd7070Spatrickcreate_subdirectory_options(CLANG TOOL) 2e5dd7070Spatrick 3e5dd7070Spatrickadd_clang_subdirectory(diagtool) 4e5dd7070Spatrickadd_clang_subdirectory(driver) 5a9ac8606Spatrickadd_clang_subdirectory(apinotes-test) 6e5dd7070Spatrickadd_clang_subdirectory(clang-diff) 7e5dd7070Spatrickadd_clang_subdirectory(clang-format) 8e5dd7070Spatrickadd_clang_subdirectory(clang-format-vs) 9e5dd7070Spatrickadd_clang_subdirectory(clang-fuzzer) 10e5dd7070Spatrickadd_clang_subdirectory(clang-import-test) 11*12c85518Srobertadd_clang_subdirectory(clang-linker-wrapper) 12*12c85518Srobertadd_clang_subdirectory(clang-offload-packager) 13e5dd7070Spatrickadd_clang_subdirectory(clang-offload-bundler) 14e5dd7070Spatrickadd_clang_subdirectory(clang-scan-deps) 15*12c85518Srobertif(HAVE_CLANG_REPL_SUPPORT) 16a9ac8606Spatrick add_clang_subdirectory(clang-repl) 17*12c85518Srobertendif() 18e5dd7070Spatrick 19e5dd7070Spatrickadd_clang_subdirectory(c-index-test) 20e5dd7070Spatrick 21e5dd7070Spatrickadd_clang_subdirectory(clang-rename) 22e5dd7070Spatrickadd_clang_subdirectory(clang-refactor) 23a9ac8606Spatrick# For MinGW we only enable shared library if LLVM_LINK_LLVM_DYLIB=ON. 24a9ac8606Spatrick# Without that option resulting library is too close to 2^16 DLL exports limit. 25a9ac8606Spatrickif(UNIX OR (MINGW AND LLVM_LINK_LLVM_DYLIB)) 26e5dd7070Spatrick add_clang_subdirectory(clang-shlib) 27e5dd7070Spatrickendif() 28e5dd7070Spatrick 29e5dd7070Spatrickif(CLANG_ENABLE_ARCMT) 30e5dd7070Spatrick add_clang_subdirectory(arcmt-test) 31e5dd7070Spatrick add_clang_subdirectory(c-arcmt-test) 32e5dd7070Spatrickendif() 33e5dd7070Spatrick 34e5dd7070Spatrickif(CLANG_ENABLE_STATIC_ANALYZER) 35e5dd7070Spatrick add_clang_subdirectory(clang-check) 36e5dd7070Spatrick add_clang_subdirectory(clang-extdef-mapping) 37e5dd7070Spatrick add_clang_subdirectory(scan-build) 38a9ac8606Spatrick add_clang_subdirectory(scan-build-py) 39e5dd7070Spatrick add_clang_subdirectory(scan-view) 40e5dd7070Spatrickendif() 41e5dd7070Spatrick 42e5dd7070Spatrick# We support checking out the clang-tools-extra repository into the 'extra' 43e5dd7070Spatrick# subdirectory. It contains tools developed as part of the Clang/LLVM project 44e5dd7070Spatrick# on top of the Clang tooling platform. We keep them in a separate repository 45e5dd7070Spatrick# to keep the primary Clang repository small and focused. 46e5dd7070Spatrick# It also may be included by LLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR. 47e5dd7070Spatrickadd_llvm_external_project(clang-tools-extra extra) 48e5dd7070Spatrick 49e5dd7070Spatrick# libclang may require clang-tidy in clang-tools-extra. 50e5dd7070Spatrickadd_clang_subdirectory(libclang) 51a9ac8606Spatrick 52a9ac8606Spatrickadd_clang_subdirectory(amdgpu-arch) 53*12c85518Srobertadd_clang_subdirectory(nvptx-arch) 54