Add dl_iterate_phdr to Android
Adds the `dl_iterate_phdr` function for Android targets. This is required for Android support in `gimli` and by proxy, `backtrace`.
I tested this in [`backtrace`](https://github.com/rust-lang/backtrace-rs/pull/415) both in an i686 emulator and a physical arm64 device.
This API is only available on Version 21+. I'm not sure how that's typically handled in `libc`, so I added a doc comment.
Let me know what else is needed!
Add RLIM_NLIMITS constant as alias of RLIMIT_NLIMITS on linux_like
At least on my machine (amd64 Arch) both `RLIMIT_NLIMITS` and `RLIM_NLIMITS` are defined as the same.
Clean-up the style check
- Only run the cfg check for single lines
- This is a temporary workaround for the multiline `cfg`s.
- Allow long comments containing a link
- I don't think it makes much sense to break comments containing the reference links.
- Relax the line length limit to 100
- Given the `cfg` condition often becomes complex, the 80 characters limit is too strict for me.
Removed repr(packed) from some NetBSD structures
The structures in question have always been properly aligned, so the
packed attribute only serves to generate annoying compiler warnings. It
will be removed in the next release of NetBSD.
415c686e20
The structures in question have always been properly aligned, so the
packed attribute only serves to generate annoying compiler warnings. It
will be removed in the next release of NetBSD.
415c686e20
unbreak openbsd after #2109
several symbols added to semver regression tests in "unix" aren't defined on OpenBSD.
move these symbols in OS specific files.
Add regression test infrastructure
Please the commit messages for details.
I still need to add lists for the following targets, but I got the major ones I think.
TODO:
* aarch64-unknown-hermit
* x86_64-unknown-hermit
* x86_64-pc-solaris
* x86_64-sun-solaris
* sparcv9-sun-solaris
* x86_64-fortanix-unknown-sgx
* x86_64-unknown-illumos
* asmjs-unknown-emscripten
* wasm32-unknown-emscripten
* wasm32-unknown-unknown
* wasm32-wasi
* Check symbols added after commit ed45c2649b.
TODO: add a bit to the contributing guide about adding to these lists.
Closes#2104.
Fixes it for at least the following targets:
* aarch64-unknown-linux-gnu
* arm-linux-androideabi
* arm-unknown-linux-gnueabihf
* arm-unknown-linux-gnueabihf
* arm-unknown-linux-musleabihf
Constify `CMSG_SPACE` for all the targets
`CMSG_SPACE` is a const fn for Linux but it isn't for other targets. This constifies it on all the targets for consistency.
Fixes#2087