Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] [3/5] support C++20 Modules, add deps-scanner #22429

Open
wants to merge 7 commits into
base: master
Choose a base branch
from

Conversation

PikachuHyA
Copy link

I split the XXL PR #19940 into several small patches.
This is the third patch of Support C++20 Modules, I add deps-scanner tool and update toolchains

Using C++20 Modules means that compilation units must be compiled in topological order. see Discovering Dependencies.
Considering the various compilers, I add the tool deps-scanner. The default implementation is a script wrapper that uses different scanning methods depending on the compiler. Here is a demo on how to scan C++20 dependencies. https://github.com/PikachuHyA/cpp20_modules_scan_dependency_demo

I also update the toolchain, apply different flags to different actions.

@github-actions github-actions bot added team-Rules-CPP Issues for C++ rules awaiting-review PR is awaiting review from an assigned reviewer labels May 17, 2024
@PikachuHyA PikachuHyA force-pushed the cxx20-modules-support-patch-3 branch from 9582891 to 4f31b5a Compare May 20, 2024 07:58
@PikachuHyA PikachuHyA requested a review from lberki as a code owner May 20, 2024 07:58
@PikachuHyA PikachuHyA force-pushed the cxx20-modules-support-patch-3 branch from 4f31b5a to c6a1120 Compare May 20, 2024 08:26
@PikachuHyA PikachuHyA requested review from gregestren and removed request for a team May 20, 2024 08:26
@oquenchil oquenchil removed their request for review May 20, 2024 09:30
@comius comius requested review from comius and removed request for lberki, ahumesky, ted-xie and gregestren May 22, 2024 11:54
@comius comius self-assigned this May 22, 2024
Copy link
Contributor

@comius comius left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After filtering out the other 2 PRs this change looks mostly reasonable. I posted some nits on the files unique to this change.

tools/cpp/clang_deps_scanner_wrapper.sh.tpl Outdated Show resolved Hide resolved
@PikachuHyA PikachuHyA changed the title support C++20 Modules, add deps-scanner [WIP] support C++20 Modules, add deps-scanner May 27, 2024
@PikachuHyA PikachuHyA force-pushed the cxx20-modules-support-patch-3 branch from c6a1120 to 546b0b7 Compare May 27, 2024 09:06
@PikachuHyA
Copy link
Author

I just keep the main commit in this patch.
due to patch dependencies, it may build failed.

I also fix clang_deps_scanner_wrapper.sh.tpl according to #19940 (comment) and #19940 (comment)

@PikachuHyA PikachuHyA changed the title [WIP] support C++20 Modules, add deps-scanner [WIP] [3/5] support C++20 Modules, add deps-scanner May 27, 2024
@sgowroji sgowroji added awaiting-user-response Awaiting a response from the author and removed awaiting-review PR is awaiting review from an assigned reviewer labels May 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awaiting-user-response Awaiting a response from the author team-Rules-CPP Issues for C++ rules
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants