tahonermann added inline comments.

================
Comment at: clang/www/hacking.html:295-296
+  directory will cause the update of the diff to start a CI run. This dummy
+  file will also add the libc++ group to the list of reviewers. The status of
+  the build will be available in Phabricator.</p>
+
----------------
ldionne wrote:
> Mordante wrote:
> > philnik wrote:
> > > aaron.ballman wrote:
> > > > I am guessing the dummy file should then be removed before landing the 
> > > > commit and we should document that?
> > > > 
> > > > (FWIW, adding a dummy file feels really unclean as a design -- it's 
> > > > mysterious behavior for new contributors, which the documentation helps 
> > > > with a bit, but also it's a risk for checking in files that are never 
> > > > intended to be in the tree. If there's a way to improve this somehow so 
> > > > we don't need to trick the precommit CI into running, that would be 
> > > > really nice and totally outside of the scope of this review.)
> > > It would be great if just the bootstrapping build could be run on all 
> > > clang reviews. That should show most problems with changes in clang. If 
> > > there are any problems in libc++, fixing them would result in a full CI 
> > > run. Having libc++ run against the patch would probably also be awesome 
> > > as a smoke test for any clang changes.
> > +1 to what @ldionne said.
> > 
> > One of the advantages would be that it's possible to test Clang against the 
> > libc++ code base using different language versions, by defining multiple 
> > test runs using different language versions. (Slightly related to 
> > https://discourse.llvm.org/t/lit-run-a-run-line-multiple-times-with-different-replacements/64932)
> >  @aaron.ballman is looking at extending the Clang pre-commit CI something 
> > worth looking into?
> > 
> > 
> I agree. Let's:
> 
> 1. Setup a `buildkite-pipeline.yml` file that controls the jobs done for 
> Clang. I think right now this is hardcoded somewhere in 
> https://github.com/google/llvm-premerge-checks
> 2. Simply add `LLVM_ENABLE_RUNTIMES=libcxx` to the config that Clang uses so 
> they'll automatically build libc++ with the Clang that was just built anyway. 
> That would run on Clang's own agents that are used for Clang tests, not on 
> the libc++ CI agents. We can adjust if running the libc++ tests causes too 
> much strain on the infrastructure running Clang CI.
> 
> That way, a basic bootstrapping build of libc++ will be run on every Clang 
> change, and TBH I think all of this added documentation for Clang folks to 
> test libc++ changes can simply go away. There really wouldn't be a reason to 
> ever add a `.DELETE_ME` file to libc++ for a Clang patch anymore.
This sounds like a good approach to me. This might be a bit tangential, but if 
`libcxx` is present in `LLVM_ENABLE_RUNTIMES`, could we also have the 
`check-all` target depend on `check-libcxx`? That would help ensure that 
developers run libc++ tests locally before they hit the CI infrastructure. 
Likewise for `compiler-rt` and `libcxxabi` and the `check-runtimes` target.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D133249/new/

https://reviews.llvm.org/D133249

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to