| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |/ / / |
|
|\ \ \ \
| |/ / /
|/| | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
linux: move DCCP_ constants from linux/gnu to linux
closes #3132
these constants come from linux headers, so they should be exposed for "linux", not just glibc.
this change exposes them for linux/musl and linux/uclibc.
of note, android contains these same constants, but moving it to linux-like would also expose them on emscripten, which does not have it.
(not sure if things are placed in the correct place, but this looks like an okayish start)
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
closes #3132
these constants come from linux headers, so they should be exposed for
"linux", not just glibc.
this change exposes them for linux/musl and linux/uclibc.
of note, android contains these same constants, but moving it to
linux-like would also expose them on emscripten, which does not have it.
|
|\ \ \ \
| | | | |
| | | | |
| | | | | |
Bump version to 0.2.140
|
| | |/ /
| |/| | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
wasi: add __errno_location
This was also missing from wasi's .rs. It seems to work as on other targets with wasm32-wasi on nightly.
|
| | | | |
| | | | |
| | | | |
| | | | | |
This was also missing from wasi's .rs
|
|\ \ \ \ \
| |/ / / /
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Add support for the unstable `check-cfg` feature behind an environment variable
`check-cfg` ([Rust](https://doc.rust-lang.org/stable/unstable-book/compiler-flags/check-cfg.html), [Cargo](https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#check-cfg)) is an unstable features that warns when you write an unknown `#[cfg]` (likely due to a typo). The feature works out of the box for default cfgs and features provided by Cargo, but requires providing the list of extra cfgs when custom ones are used.
This PR adds the `LIBC_CHECK_CFG` environment variable. When enabled, the build script will use the `cargo:rustc-check-cfg` println to instruct the compiler of all the possible cfgs set by libc. The build script was also refactored to ensure all cfgs are accounted for, and a CI job using `-Z check-cfg` was added.
This PR is best reviewed commit-by-commit.
## Why is this needed?
The main motivation for this PR is that `rust-lang/rust` enforces `check-cfg` across the whole codebase. Normally this is not a problem for dependencies like `libc`, as Cargo caps the lints and thus doesn't show the generated warnings.
When developing support for new targets though, it's helpful to use a custom libc fork to develop the libc port and the std port together. Unfortunately doing that today results in a bunch of compilation errors, since lints are not capped with `path` dependencies. My goal with this PR is to address that shortcoming, as we'd then be able to set the `LIBC_CHECK_CFG=1` environment variable in the Rust build system and remove the compilation errors.
This PR might also be helpful for libc maintainers, as the CI check might spot typos in `#[cfg]`s.
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| |/ / / |
|
|\ \ \ \
| |/ / /
|/| | |
| | | |
| | | |
| | | | |
add S_IRWX* constants to wasi
It seems like all other platforms have `/S_IRWX[OGU]/`, and the `libc` crate looks for them, but they were missing in WASI.
|
|/ / / |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Add support for OpenHarmony
This PR adds support for [OpenHarmony](https://gitee.com/openharmony/docs/) targets:
- `aarch64-linux-ohos`
- `arm-linux-ohos`
Compiler team MCP: https://github.com/rust-lang/compiler-team/issues/568
OpenHarmony uses a fork of musl with minor modifications, so most of the code is shared with other musl targets. Additionally, although OpenHarmony uses musl 1.2, it is still ABI-compatible with musl 1.1 so the existing bindings should continue to work until https://github.com/rust-lang/libc/pull/3068 is merged.
A PR to add the targets to rustc will follow after this is merged.
|
|/ / / |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | | |
linux/musl: add copy_file_range syscall wrapper
musl supports copy_file_range since v1.1.24, so expose the corresponding wrapper here too.
|
| | | |
| | | |
| | | |
| | | | |
Signed-off-by: Yuki Okushi <jtitor@2k36.org>
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | | |
musl supports copy_file_range since v1.1.24, so expose the corresponding
wrapper here too.
Signed-off-by: Sergio Lopez <slp@redhat.com>
|
|\ \ \
| | | |
| | | |
| | | | |
membarrier flags constants addition
|
| | |/
| |/| |
|
|\ \ \
| |_|/
|/| |
| | | |
Ignore some removed `IP_*` consts on FreeBSD
|
|/ /
| |
| |
| | |
Signed-off-by: Yuki Okushi <jtitor@2k36.org>
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Remove duplicated atof function declaration
This adapts to the changes done with PR #3036, removing a function declaration which would exist twice otherwise.
cc: `@gh-tr,` `@samkearney`
|
| | |
| | |
| | |
| | | |
This adapts to the changes done with PR #3036
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | | |
Add posix_spawnattr_set_qos_class_np
https://opensource.apple.com/source/libpthread/libpthread-137.1.1/pthread/spawn.h
|
| | |/
| |/|
| | |
| | | |
https://opensource.apple.com/source/libpthread/libpthread-137.1.1/pthread/spawn.h
|
|\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | | |
Drop semver check job on CI
This hasn't run for a while and the crate no longer works unless a whole rewriting happens (due to the save analysis removal).
We sometimes allow breaking changes if an item doesn't work in all the use cases (i.e. we can imply there's no real user). For these reasons, I think it's fine to remove these jobs.
|
| | |
| | |
| | |
| | | |
Signed-off-by: Yuki Okushi <jtitor@2k36.org>
|
|\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | | |
add p_name field in kinfo_proc struct on OpenBSD
pthread_get_name_np() and pthread_set_name_np() are now using a kernel storage and could be viewed from outside the process.
Reference: https://github.com/openbsd/src/commit/cef5a146e600a27064f0ea2aa25fc5f8663cb9b7
|
|/ /
| |
| |
| |
| |
| |
| | |
pthread_get_name_np() and pthread_set_name_np() are now using a kernel storage
and could be viewed from outside the process.
Reference: https://github.com/openbsd/src/commit/cef5a146e600a27064f0ea2aa25fc5f8663cb9b7
|
|\ \
| | |
| | |
| | |
| | |
| | | |
Add glibc extensions for posix_spawn*.
This PR adds support for posix spawn extensions implemented by glibc: https://elixir.bootlin.com/glibc/glibc-2.37.9000/source/posix/spawn.h#L201.
|
| | | |
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Support AIX operating system
This PR adds rather complete definitions and declarations from AIX system headers, with little modification to fit the assumption in some crates or other targets in libc.
Currently only 64-bit PowerPC targets on AIX are proposed, so definitions depending on pointer width are located in `powerpc64` module.
This one should be successor of #2278 (and thanks to `@EGuesnet` 's initial work).
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This change adds rather complete definitions and declarations from AIX
system headers, with little modification to fit the assumption in some
crates or other targets in libc.
Currently only 64-bit PowerPC targets on AIX are proposed, so
definitions depending on pointer width are located in powerpc64 module.
Thanks to initial work from Etienne Guesnet, this patch is based on it
(#2278).
|
|\ \ \ \
| |_|_|/
|/| | |
| | | |
| | | |
| | | |
| | | | |
FreeBSD: add AT_RESOLVE_BENEATH, Linux-compatible clock aliases
- sorry for the spam xD *now* I should be done with that area of the API…
- +mirror one other thing that [was done](https://reviews.freebsd.org/D30988) in the headers to reduce portability annoyance :)
|
| | | |
| | | |
| | | |
| | | |
| | | | |
They were added in https://reviews.freebsd.org/D30988 which landed for 13,
but as they're just aliases, they will work on any version.
|
| | | | |
|
|\ \ \ \
| |/ / /
|/| | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Add STATX_DIOALIGN (introduced in linux v6.1)
The [STATX_DIOALIGN](https://elixir.bootlin.com/linux/v6.1/A/ident/STATX_DIOALIGN) constant was introduced in linux 6.1
The statx structure thus gained [2 more fields](https://elixir.bootlin.com/linux/v6.1/source/include/uapi/linux/stat.h#L127)
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | | |
freebsd further sctp support.
|
| |/ / / |
|
|\ \ \ \
| | | | |
| | | | |
| | | | | |
prctl SME flags for gnu arm64.
|
| | | | | |
|
| |/ / / |
|
|\ \ \ \
| |/ / /
|/| | |
| | | |
| | | |
| | | |
| | | | |
FreeBSD: strchrnul, AT_EMPTY_PATH
- one related constant I missed in #3114
- since #3104 landed let's do that too (this function was available since FreeBSD 10)
|
| | | | |
|