-
Notifications
You must be signed in to change notification settings - Fork 708
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
Cross compilation on *BSD #287
Comments
Maybe we need to observe In general, I'm happy to accept PRs for BSD. If you know how to make Travis CI do BSD that would be great too. If you know how to adapt the |
@briansmith Sadly, Travis CI doesn't support BSD. As for /dev/urandom, I'd ask a kernel developer, but from what I remember, /dev/urandom on BSD doesn't work like it does on Linux: /dev/urandom won't have the initial point-of-weakness at initial OS install, as it blocks until it receives entropy from /dev/random. I might be off-base on this, though because I never have to deal too much with CSPRNGs. As for the issue at hand, I was able to Thanks. |
Awesome! |
Hey @briansmith Just wanted to get some clarification on this. From looking at the targets that
Regardless, here's a list of target triples supported:
|
This seems the best to me. Or, maybe we should just invoke |
The BSDs all handle this differently--on FreeBSD at least, /dev/urandom is simply a symlink to /dev/random, which blocks until it has gathered sufficient entropy and then never again. |
ian@ian-desktop /dev> ls -al | grep urandom
lrwxr-xr-x 1 root wheel 6 Aug 28 17:14 urandom -> random
Cool, never knew that. |
- build.rs * Default to `gmake` on BSD systems * Support `MAKE` variable for pointing to correct `make` - mk/top_of_makefile.mk * Allow target triple on BSD* not to have abi (e.g. x86_64-unknown-freebsd) - BUILDING.md * Add descriptions about `MAKE` variable. I agree to license my contributions to each file under the terms given at the top of each file I changed.
PR #313 has been merged, and now ring can be built on BSD systems (at least on FreeBSD. I guess OpenBSD needs #294 to be resolved?)
FYI, I will work on the above stuff. As for Travis CI, I found libc crate is making Travis CI to do FreeBSD, NetBSD and OpenBSD. And the way they implemented them is well-documented here. They use QEMU for user-land emulation so it will be super slow but still usable if libraries are small enough to build. As for adapting the |
I think this is fixed since #313 landed? If not, let me know what's missing and I'll reopen. |
Hey there.
So while attempting to
cargo build
a personal project depending on Ring, my PC-BSD (based on FreeBSD) system was failing tomake
properly. This was easily fixed by usinggmake
. It seems that right now, make is explicitly called whenever msbuild is not detected.I can't imagine rust users who also use BSD are a huge group, but regardless, I imagine this can be a fairly simple fix. I'm willing to make a patch for this, but please note, I've been learning rust for all of 30 minutes.
The text was updated successfully, but these errors were encountered: