This builder has 2 stages: one for building llvm and mlir, and one for
building flang itself in a different build directory. In order to do an
out of tree build of flang, we need to run cmake with the path to the
flang subproject as source directory.
Details
Diff Detail
- Repository
- rZORG LLVM Github Zorg
Event Timeline
Thanks for working on this, Diana!
It does not seem getFlangOutOfTreeBuildFactory belongs to the UnifiedTreeBuilder.
You either need to teach cmake to configure flang from the root of the unified tree; then you likely would not need a custom build factory, as the current UnifiedTreeBuilder would build your configuration just fine.
Or you need to add a custom builder for flang.
I personally prefer the first option, since it would simplify the build of this configuration in general for everyone, not just for CI.
Hi Galina, thanks for having a look!
I think running cmake from the top level directory would defeat the purpose of what this buildbot is trying to test. The whole point is to be able to build flang using only the flang source tree. I have therefore updated the patch to create a new FlangBuilder, but it still imports some things from the UnifiedTreeBuilder. We could also move those common functions from UnifiedTreeBuilder to Util.py if you think that would be cleaner. Please let me know your thoughts.
Cheers!
Thanks for changing, Diana!
Almost there. Please see my inline comments.
zorg/buildbot/builders/FlangBuilder.py | ||
---|---|---|
17 | UnifiedTreeBuilder would do this for you. You can just pass the llvm_extra_configure_args down to getCmakeWithNinjaBuildFactory as is. | |
45 | Just a cosmetic. | |
53 | The naming of pathRelativeToBuild method is not great. I refactored it to be pathRelativeTo instead. Could you rebase the patch, please? |
Hi Galina, those are all good comments, thanks! I think I fixed them up, does it look ok now?
Does this bot trigger for Flang project as of now?
I might not be very much familiar with phabricator but not sure how do we see if the bot triggers and the build results from the bots.
I was expecting it to trigger for https://reviews.llvm.org/D87774 review.
Also in phabricator when I click on buildbots in home screen of phabricator I get redirected to http://lab.llvm.org:8011/
but the page never opens.
Hi Sameeran,
The bot is currently on the silent master [1], so it doesn't trigger.
It had some strange python exceptions that I hadn't seen on my
buildmaster during testing. I think they might be gone now, but I'll
leave it on silent for a couple more days until it looks stable
enough.
Cheers,
Diana
UnifiedTreeBuilder would do this for you. You can just pass the llvm_extra_configure_args down to getCmakeWithNinjaBuildFactory as is.