-
Notifications
You must be signed in to change notification settings - Fork 10.5k
[CMake] Warn about not using libcxx #15204
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
[CMake] Warn about not using libcxx #15204
Conversation
@swift-ci please smoke test |
Please don't. We don't want to require libcxx; it's an error if our tests do. |
We could have just as much of a problem between libcxx versions. |
That's why I used |
Also, unless I'm missing something, the build-script always sets |
Does |
Swift doesn't do anything other than pass I'm happy to close this PR if you think LLVM should just error out and then Swift can rely on that check. |
That sounds like it would work if you had a newer libstdc++. I'm not sure why you're pushing for this. We had a test failure because the C++ standard library was different on different platforms. That's a problem with the test. We fixed it. Why would you want to warn here? |
Right now, unified builds "just work", but there are minor configuration differences. While I'd prefer to make those differences disappear, I don't think that unified builds need to be intentionally hard either. It seems reasonable to me to warn unified build users about important differences. Of course, reasonable people can disagree about whether untested C++ standard libraries count as an important difference. You know, come to think about it, why is build-script force enabling |
@davezarzycki I definitely use three different C++ runtimes: libstdc++, msvcprt, and libc++. |
Let's take this to the forums; maybe someone there will remember why |
Which forum? Compiler? something else? |
Compiler is fine. There's theoretically a distinction between the C++ stdlib we use for the compiler and the one we use for the runtime as well, but…that's probably a separate issue. |
I'm abandoning this PR in favor of no longer hard coding the use of libcxx by the build script. See #15233 |
For example, pull request: #15191