aboutsummaryrefslogtreecommitdiff
path: root/docs/markdown/snippets
diff options
context:
space:
mode:
authorDylan Baker <dylan@pnwbakers.com>2024-03-11 12:35:25 -0700
committerDylan Baker <dylan@pnwbakers.com>2025-04-03 12:27:07 -0700
commitea344be9b017042fa206cb12e9fee95c1c22fae5 (patch)
treec2e064ea5ffd4ff7e6dae5d8a333af1172b6db94 /docs/markdown/snippets
parentcc815c4bcac055721ae359cbc757f50c10ed54ed (diff)
downloadmeson-ea344be9b017042fa206cb12e9fee95c1c22fae5.zip
meson-ea344be9b017042fa206cb12e9fee95c1c22fae5.tar.gz
meson-ea344be9b017042fa206cb12e9fee95c1c22fae5.tar.bz2
backend/ninja: use a two step process for dependency scanning
This splits the scanner into two discrete steps, one that scans the source files, and one that that reads in the dependency information and produces a dyndep. The scanner uses the JSON format from https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p1689r5.html, which is the same format the MSVC and Clang use for C++ modules scanning. This will allow us to more easily move to using MSVC and clang-scan-deps when possible. As an added bonus, this correctly tracks dependencies across TU and Target boundaries, unlike the previous implementation, which assumed that if it couldn't find a provider that everything was good, but could run into issues. Because of that limitation Fortran code had to fully depend on all of it's dependencies, transitive or not. Now, when using the dep scanner, we can remove that restriction, allowing more parallelism.
Diffstat (limited to 'docs/markdown/snippets')
0 files changed, 0 insertions, 0 deletions