This is an archive of the discontinued LLVM Phabricator instance.

[libc++][CI] Moves modules build to C++23.
ClosedPublic

Authored by Mordante on Aug 11 2023, 11:41 AM.

Details

Reviewers
ldionne
Group Reviewers
Restricted Project
Commits
rGc1d49ce67a3f: [libc++][CI] Moves modules build to C++23.
Summary

The std module can be tested in the generic C++23 build. This removes the
special module build.

Note it is possible to enable modules automatically in CMake, but that
would fail in the "parts disabled" builds; they have not been properly
been converted to modules yet.

Depends on D157625

Diff Detail

Event Timeline

Mordante created this revision.Aug 11 2023, 11:41 AM
Herald added a project: Restricted Project. · View Herald TranscriptAug 11 2023, 11:41 AM
Herald added a subscriber: arichardson. · View Herald Transcript
Mordante updated this revision to Diff 549586.Aug 12 2023, 3:12 AM

CI fixes.

Mordante published this revision for review.Aug 12 2023, 5:04 AM
Herald added a project: Restricted Project. · View Herald TranscriptAug 12 2023, 5:04 AM
Herald added a reviewer: Restricted Project. · View Herald Transcript
ldionne added inline comments.
libcxx/cmake/caches/Generic-cxx23-no-modules.cmake
1 ↗(On Diff #549586)

Instead of adding a new job with std modules disabled, I would instead do this:

diff --git a/libcxx/utils/ci/buildkite-pipeline.yml b/libcxx/utils/ci/buildkite-pipeline.yml
index bda040285bb2..bd24a8429686 100644
--- a/libcxx/utils/ci/buildkite-pipeline.yml
+++ b/libcxx/utils/ci/buildkite-pipeline.yml
@@ -308,6 +308,7 @@ steps:
         CC: "clang-15"
         CXX: "clang++-15"
         ENABLE_CLANG_TIDY: "On"
+        ENABLE_STD_MODULES: "Off"
     agents:
       queue: "libcxx-builders"
       os: "linux"
@@ -326,6 +327,7 @@ steps:
         CC: "clang-16"
         CXX: "clang++-16"
         ENABLE_CLANG_TIDY: "On"
+        ENABLE_STD_MODULES: "Off"
     agents:
       queue: "libcxx-builders"
       os: "linux"
@@ -1108,6 +1110,7 @@ steps:
       env:
           CC: "clang15"
           CXX: "clang++15"
+          ENABLE_STD_MODULES: "Off"
       agents:
         queue: "libcxx-builders"
         os: "freebsd"

Then it becomes more clear that this is a temporary option until it can be enabled by default everywhere (also, please document that env var as such so that we eventually clean it up).

libcxx/utils/ci/buildkite-pipeline.yml
199–205

Everywhere

libcxx/utils/ci/run-buildbot
473

Not needed anymore.

Mordante updated this revision to Diff 551768.Aug 19 2023, 10:01 AM
Mordante marked an inline comment as done.

Addresses review comments.

Mordante marked 2 inline comments as done.Aug 19 2023, 10:01 AM
Mordante updated this revision to Diff 552223.Aug 21 2023, 10:56 PM

Fixes building modules in C++23 mode.

ldionne accepted this revision.Aug 22 2023, 9:45 AM

LGTM w/ comments, thanks!

libcxx/utils/ci/buildkite-pipeline.yml
144

Commit message typo: wouls fail

libcxx/utils/ci/run-buildbot
55–58

Tabs/space conflict?

144

Also a tab!

This revision is now accepted and ready to land.Aug 22 2023, 9:45 AM
Mordante edited the summary of this revision. (Show Details)Aug 22 2023, 11:18 AM
Mordante marked 3 inline comments as done.
This revision was automatically updated to reflect the committed changes.