-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Add more fcntl and seal constants for Android/Linux #720
Conversation
@alexcrichton I wanted to ask for your help here. The |
☔ The latest upstream changes (presumably #722) made this pull request unmergeable. Please resolve the merge conflicts. |
1807196
to
05f1043
Compare
Yeah this seems pretty reasonable to me! To suggest a way to simplify this, though, perhaps:
I think if we do that it means that |
8806369
to
345364a
Compare
@alexcrichton I implemented that and it's definitely a lot nicer. This also sets us up nicely for running additional specific tests (like for #711) for all platforms. There are still build failures on OpenBSD, but that's a really complicated setup. Any way I could get some help debugging it? Comparing a good run and my recent failed run didn't reveal much. I think |
ci/run.sh
Outdated
cargo rustc --manifest-path libc-test/Cargo.toml --target $TARGET \ | ||
--test main -- -C link-args=-mios-simulator-version-min=7.0 | ||
cargo rustc --manifest-path libc-test/Cargo.toml --target $TARGET \ | ||
--test linux-fcntl -- -C link-args=-mios-simulator-version-min=7.0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It may be worth testing out RUSTFLAGS
nowadays. I think at the time this code was written RUSTFLAGS
didn't exist but nowadays I think it'd suffice for this, allowing us to basically just use cargo build --tests
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've fixed this on the latest build, but it failed on i386-ios because there were two main-*
binaries. Which is weird, but maybe it's a caching issue. I'm not too certain what the caching policy is when set to cargo
on Travis, but maybe that'll need to be turned off? Any other ideas here?
Ah drat I thought we removed some of these pieces awhile ago... The OpenBSD testing is way crazier than everything else because it generates tests on the host and compiles them on the target (in the emulator). I think we should just jettison all that though, it's crazy complicated and not really worth it :( |
the OPT_LEVEL problem isn't just that cargo in the image is out-of-date ? the used image is OpenBSD 6.0 so cargo should be 0.10.0. I could try to update the image to 6.1 (latest stable). It will be cargo 0.16.0 and rustc 1.16.0. @alexcrichton feel free to ping me for OpenBSD related issues. |
@semarie my worry isn't necessarily exactly what's happening here but rather that the mechanism of testing OpenBSD is pretty crazy in this repo, and I think it's not pulling its weight any more. All other platforms cross-compile from linux and then we figure out how to emulate the binary, but we can't cross-compile to OpenBSD which makes it too hard to get a program running in there. |
Been a few days on this, do we know what direction we want to go with this? I'm willing to help push this forwards, but it looks like we are at an impasse in terms of direction here. |
I think let's just remove OpenBSD support for now, and we can continue to shim how the other platforms are tested. |
☔ The latest upstream changes (presumably #735) made this pull request unmergeable. Please resolve the merge conflicts. |
I've actually gone ahead and removed OpenBSD from CI as we needed to do it anyway to get CI working again |
We now create an additional binary `linux_fcntl` for testing this since there are header conflicts when including all necessary headers. This binary is run on all platforms even though it's empty on all non- Android/non-Linux platforms. Testing has been switched from a custom binary to using a runner-less test (or pair of tests). This means that for local development a simple `cd libc-test && cargo test` will run all the tests. CI has also been updated here to reflect that.
Sounds good. Hopefully OpenBSD gets some official rustup/cargo support (whatever it is that's missing) so we can get better CI support for it. Anyways, I updated this PR and it passed all tests. |
📌 Commit b7902df has been approved by |
Add more fcntl and seal constants for Android/Linux
💥 Test timed out |
@bors: retry |
It doesn't seem like bors is doing anything as Travis doesn't have any active builds. This applies to #737 as well. |
Add more fcntl and seal constants for Android/Linux
💥 Test timed out |
@bors: retry |
Add more fcntl and seal constants for Android/Linux
💔 Test failed - status-travis |
Failed due to timeout, but at least Travis has recently fixed the issues with the Mac builds, but there still is a massive backlog. |
@bors: retry
…On Wed, Aug 23, 2017 at 3:42 PM, Susurrus ***@***.***> wrote:
Failed due to timeout, but at least Travis has recently fixed the issues
with the Mac builds, but there still is a massive backlog.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#720 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AAD95Ef7j0RmtZxdXHXQv2HOfdONTVH6ks5sbI7MgaJpZM4Ozv74>
.
|
Add more fcntl and seal constants for Android/Linux
This failed again on Travis with spurious errors on the Mac builders. Travis's backlog is getting down to a reasonable number, so trying this again will likely be successful. |
💥 Test timed out |
@bors: retry
…On Aug 24, 2017 2:04 AM, "bors" ***@***.***> wrote:
💥 Test timed out
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#720 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AAD95ADPnHrKxhqOgKrVjALhUQAkFn8dks5sbSCCgaJpZM4Ozv74>
.
|
Add more fcntl and seal constants for Android/Linux
💥 Test timed out |
@bors: retry
…On Aug 24, 2017 7:04 PM, "bors" ***@***.***> wrote:
💥 Test timed out
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#720 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AAD95C3ZqId1RY0JMZmTilqJaEbJ1M2sks5sbg-UgaJpZM4Ozv74>
.
|
Add more fcntl and seal constants for Android/Linux
☀️ Test successful - status-appveyor, status-travis |
Omg it finally happened! Travis really needs to up their build slaves for Mac. Anyways, thanks for staying on this @alexcrichton! |
No description provided.