-
Notifications
You must be signed in to change notification settings - Fork 10.5k
build: assume a parallel tree layout for unified builds #20881
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
Conversation
Attempt to repair the build for the unified swift build. This allows us to build a single unified toolchain with swift support. In this layout assume that cmark and clang are peers of LLVM rather than located in `tools`. Doing so allows a uniform layout of the tree and a simpler build approach.
@swift-ci please test |
@lanza you may be interested in this too |
I think @llvm-beanz was still interested in having swift/ inside llvm/tools/ (or llvm/projects/ ?) but I'm not sure what that ever did with CMark. Or I could be misremembering. |
@jrose-apple ... so, this actually is somewhat related. This allows me to do a unified build, the difference is that the tree lives as a peer rather than inside of tools. This allows building with |
Build failed |
When I build with Swift in llvm/tools, I also put CMark there. You can also have Swift and CMark as peers of LLVM in the directory structure and use |
@llvm-beanz - hmm, would this change then break that? IIRC, the *_EXTERNAL_SOURCE_DIR are supposed to be setup |
This change will break the workflow of nesting under llvm/tools because the |
@swift-ci please test Linux platform |
Did I miss a warning email about this change? I've been using unified builds for a long time, and the error message if one tries to do it the old way (with clang/swift in the tools directory) isn't helpful. Where are the directions for how to do it the new way? [EDIT x 2] – @compnerd is helping via the forums. I really wish that this was announced first. A heads up on the forums would have been nice. |
Attempt to repair the build for the unified swift build. This allows us
to build a single unified toolchain with swift support. In this layout
assume that cmark and clang are peers of LLVM rather than located in
tools
. Doing so allows a uniform layout of the tree and a simplerbuild approach.
Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.
Resolves SR-NNNN.