-
Notifications
You must be signed in to change notification settings - Fork 10.4k
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
Driver: look for the runtime object in the SDK #25990
Conversation
@swift-ci please test and merge |
0c37015
to
945917c
Compare
@swift-ci please test |
Build failed |
I think you mean "target", not "host". (This looks fine to me.) |
…although in the future I don't know if we really want to assume "using a non-Darwin SDK" = "cross-compiling". |
"target" is the wrong term, "host" is what the binary will run on. "target" is only used when cross-compiling a non-cross-compiling compiler. This is the de-facto terminology used across most Unices: https://www.gnu.org/software/automake/manual/html_node/Cross_002dCompilation.html Your second point cannot be over-stressed. This is purely intended as a temporary workaround. The problem is that the change to look for the libraries in the SDK was reverted and I am just waiting on that to go back in as that would allow us to drop that invalid condition. I didn't want to break the Darwin target, but I agree that it is incorrect. |
CC: @brentdax - you may also care about this since you are doing something related to this on the Darwin side. LMK if we can co-ordinate somehow on this. |
"Target" is the right term because "target" is the compiler flag (and terminology), and since all three of "build", "host", and "target" are in play for a compiler. |
|
|
Correct, when building compiler tools. In fact, even when building the compiler, host/build are the correct term. The "target" is there fore the case that you are cross-compiling a non-cross-compiling compiler. That is, you are building clang on x86_64 for ARM64 which will only build binaries for ARMv7. In such a case, the build is x86_64, the host is aarch64, and the target is armv7. In general, when you are compiling any standard package, the terms are build/host. |
945917c
to
f1df50a
Compare
The runtime object is for the host, and is part of the SDK. If `-sdk` is passed, look for the runtime support object relative to the SDK root.
f1df50a
to
e96e7cc
Compare
Build failed |
@swift-ci please test |
Build failed |
Build failed |
@swift-ci please test Linux platform |
Build failed |
Please test with following PRs: @swift-ci please test Linux platform |
I'm going to merge this for now. I really want to iterate on this a bit more, the |
Hello, When making Cross Compilation for Android on macOS Host I have to provide Without
But With
In this case path to Now I am thinking how to solve this error :) Is Thank you! Swift-NoFailures.txt |
@vgorloff there's a lot of discussion about what |
Thank you! Usage of the flags |
The runtime object is for the host, and is part of the SDK. If
-sdk
is passed, look for the runtime support object relative to the SDK root.
Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.
Resolves SR-NNNN.