[PATCH] D69420: [clang][clang-scan-deps] Add support for extracting full module dependencies.

Michael Spencer via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Oct 24 17:57:05 PDT 2019


Bigcheese created this revision.
Bigcheese added reviewers: arphaman, kousikk.
Bigcheese added a project: clang.
Herald added subscribers: tschuett, dexonsmith, mgrang, mgorny.

This adds experimental support for extracting a Clang module dependency graph
from a compilation database. The output format is experimental and will change.
It is currently a concatenation of JSON outputs for each compilation. Future
patches will change this to deduplicate modules between compilations.

This patch doesn't implement deduplication as the patch was already getting pretty
large. This also doesn't properly support C++20 modules yet.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D69420

Files:
  clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
  clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
  clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
  clang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
  clang/lib/Tooling/DependencyScanning/CMakeLists.txt
  clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp
  clang/lib/Tooling/DependencyScanning/DependencyScanningTool.cpp
  clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
  clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
  clang/test/ClangScanDeps/modules-full.cpp
  clang/tools/clang-scan-deps/ClangScanDeps.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D69420.226368.patch
Type: text/x-patch
Size: 25005 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20191025/12a212e8/attachment-0001.bin>


More information about the cfe-commits mailing list