-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Add SO_REUSEPORT for Android #70
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 SO_REUSEPORT for Android #70
Conversation
The CI here is failing which'll prevent this from landing, and I'd prefer o have constants like this verified on Android. If it's actually present then are there more recent Android compilers and/or headers which have the constants? |
I’m not sure. FWIW, grep on my system finds If in doubt, would you rather have the |
Ok, I've updated our docker images to use API level 21 instead of 18 (I at least don't know of a reason to use an older one right now) and I'm in the process of uploading the new image tagged as Note that it takes awhile to upload, so it may be ~15min before the image is available (travis may take awhile to get around to it though) |
I’ve pushed a new commit but https://travis-ci.org/rust-lang-nursery/libc/requests doesn’t show a request for a new build. |
Hm it looks like this PR doesn't yet include that change? (but seems referenced?) |
I pushed to the wrong branch :) |
92cf0c4
to
eab5dac
Compare
https://travis-ci.org/rust-lang-nursery/libc/builds/92660417 failed with
Pushing the same commit again to trigger another build. |
Same again. Any suggestion @alexcrichton ? 2015-11-22 does show up in https://hub.docker.com/r/alexcrichton/rust-slave-android/tags/ Could the 10 min limit be hit while Travis is downloading a 2 GB image? |
I hit restart on this build but it may be time to use |
4eefa8f
to
23981ca
Compare
Looks like there was some trouble finding |
Yeah, it looks like what I did is not correct usage, but I don’t know what is. Is |
2cd24f0
to
779ffb4
Compare
After trying a few random places to insert
|
The only methods it define require libc::SO_REUSEPORT, which current versions on the libc crate does not provide for Android targets. This is a temporary work around to make this crate build at all on Android. It should be reverted when rust-lang/libc#70 lands.
The only methods it define require libc::SO_REUSEPORT, which current versions on the libc crate does not provide for Android targets. This is a temporary work around to make this crate build at all on Android. It should be reverted when rust-lang/libc#70 lands. This not a breaking change since the crate did not build at all before.
I believe this is just because docker is being run with |
0f07feb
to
0240ec7
Compare
Trying a variation of #74: before_script:
- if [ "$TARGET" = "arm-linux-androideabi" ]; then
travis_wait docker pull $(cat android-docker-image);
fi
|
535063e
to
fcc34c9
Compare
So I replaced
… but the job ran for 47 min 41 sec already, so even with another trick to have less output it’s likely to hit the 50 min timeout. |
The raw log also contains "Layer already being pulled by another client. Waiting." |
cc @edunham I think perhaps it's time to bring in our ops team :) |
Now that I merged #88, could this be rebased? I think it should "Just Work" to add the constant now. (sorry for the runaround!) |
fcc34c9
to
71756d0
Compare
Rebased. |
The `net2` crate currently fails to cross-compile to Android with ``error: unresolved name `libc::SO_REUSEPORT` `` According to http://stackoverflow.com/a/14388707/1162888, Android is essentially the same as Linux for the purpose of socket features support, and the Linux kernel has supported `SO_REUSEPORT` since version 3.9. According to http://android.stackexchange.com/a/51656, Android has had more recent kernels than that since version 4.4 Kit Kat.
71756d0
to
52f4f39
Compare
Reverted version number bump, as it made tests fail to find libc at that version (presumably from crates.io?) Travis failure on MIPS doesn’t looks related to this change?
...
|
* Docs: Fix typo in module documentation s/paltform/platform/g * [x86] Implement sse4.2 string cmp intrinsics - Implement - _mm_cmpistrm - _mm_cmpistri - _mm_cmpistrz - _mm_cmpistrc - _mm_cmpistrs - _mm_cmpistro - _mm_cmpistra - _mm_cmpestrm - _mm_cmpestrz - _mm_cmpestrc - _mm_cmpestrs - _mm_cmpestro - _mm_cmpestra - Add documentation to _mm_cmpestri - Add missing constants
The
net2
crate currently fails to cross-compile to Android witherror: unresolved name
libc::SO_REUSEPORT``According to http://stackoverflow.com/a/14388707/1162888, Android is essentially the same as Linux for the purpose of socket features support, and the Linux kernel has supported
SO_REUSEPORT
since version 3.9.According to http://android.stackexchange.com/a/51656, Android has had more recent kernels than that since version 4.4 Kit Kat.
(This blocks servo/servo#8446.)