- Apr 11, 2018
-
-
Linus Färnstrand authored
-
- Apr 10, 2018
-
-
Mike Hommey authored
`pthread_mutex_t` varies across architectures, in several ways: - endianness alters the ordering of bytes, since the contents of the struct are larger than 8-bit. - its length varies. - the location of the mutex kind (`PTHREAD_MUTEX_RECURSIVE`, `PTHREAD_MUTEX_ERRORCHECK` or `PTHREAD_MUTEX_ADAPTIVE_NP`) varies between 32-bit and 64-bit: On 32-bit architectures, it is preceded by three int/unsigned int, while on 64-bit architectures, it is preceded by four of them. These initializers are only available from <pthread.h> when _GNU_SOURCE is defined. Relax the cfg_if check in ci/style.rs to allow #[cfg(target_endian)] tests.
-
Mike Hommey authored
-
Sébastien Marie authored
-
- Apr 08, 2018
-
-
Craig M. Brandenburg authored
-
- Apr 06, 2018
-
-
Nathaniel McCallum authored
This fixes a consistency issue with the other operator traits.
-
- Apr 05, 2018
-
-
Mike Hommey authored
Fixes: #961
-
- Apr 03, 2018
-
-
dragan.mladjenovic authored
-
dragan.mladjenovic authored
-
Matt T. Proud authored
Include ioctl commands for becoming controlling tty and setting window size. This enables https://github.com/jwilm/alacritty to be built and run on OpenBSD 6.3. NetBSD and kin share the same command constants.
-
- Mar 24, 2018
-
-
Andreas Fackler authored
-
- Mar 22, 2018
-
-
Jan S authored
-
- Mar 19, 2018
-
-
Sébastien Marie authored
The mmap(2) flag indicate that the mapping is used as a stack. https://man.openbsd.org/mmap.2#MAP_STACK https://marc.info/?l=openbsd-tech&m=152035796722258&w=2
-
- Mar 18, 2018
-
-
Francis Gagné authored
The libc crate is used as a dependency of the Rust compiler. Its build system passes `--cfg dox` to all crates when generating their documentation. libc's documentation is generated when the build system is asked to generate the compiler documentation because `cargo doc` automatically documents all dependencies. When the dox configuration option is enabled, libc disables its dependency on the core crate and provides the necessary definitions itself. The dox configuration option is meant for generating documentation for a multitude of targets even if the core crate for that target is not installed. However, when documenting the compiler, it's not necessary to do that; we can just use core or std as usual. This change is motivated by the changes made to the compiler in rust-lang/rust#48171. With these changes, it's necessary to provide implementations of the Clone and Copy traits for some primitive types in the library that defines these traits (previously, these implementations were provided by the compiler). Normally, these traits (and thus the implementations) are provided by core, so any crate that uses `#![no_core]` must now provide its own copy of the implementations. Because libc doesn't provide its own copy of the implementations yet, and because the compiler's build system passes `--cfg dox` to libc, generating the documentation for the compiler fails when generating documentation for libc. By renaming the configuration option, libc will use core or std and will thus have the necessary definitions for the documentation to be generated successfully.
-
- Mar 16, 2018
-
-
Alan Somers authored
-
- Mar 12, 2018
-
-
Sebastian Humenda authored
-
Wesley Moore authored
-
- Mar 10, 2018
- Mar 08, 2018
-
-
Wictor Lund authored
-
- Mar 07, 2018
-
-
Wictor Lund authored
-
Wictor Lund authored
- Mar 05, 2018
-
-
Fredrick Brennan authored
Sorry, accidentally forgot this when submitting #934..
-
- Mar 04, 2018
-
-
Fredrick Brennan authored
-
Fredrick Brennan authored
-
Fredrick Brennan authored
-
Fredrick Brennan authored
-
- Mar 03, 2018
-
-
Fredrick Brennan authored
-
Fredrick Brennan authored
-
Fredrick Brennan authored
-
- Mar 01, 2018
-
-
Bryan Drewery authored
This follows the same method as other platforms like OSX and NetBSD. This will fix rustup and building from git (once libc is updated for bootstrap) on FreeBSD12 post-ino64 in https://github.com/freebsd/freebsd/commit/f713b08c027de35b0b8ed9990eabc32e100bee7a. It also avoids having to hotpatch the stage0 compiler, and HOME/.cargo libc files on FreeBSD12 to build rust. The only real pitfall is that this will prevent interaction with inodes that have an ino_t above the 32-bit limit due to truncation. On the other hand Rust won't work at all on 12 without doing this currently. In general it should not be a problem for users and if they need 64-bit ino_t they can use a patched libc, rather than the current state of affairs in requiring a patched libc to use Rust on 12. A better, or complementary, approach would be something like proposed in https://github.com/rust-lang/rfcs/pull/2048 to allow targetting a specific version of FreeBSD. This would allow Rust to default to this compatibility mode by targetting FreeBSD10 and still allow targetting FreeBSD12 for 64-bit ino_t. The symbol versions used were taken from the old version in https://github.com/freebsd/freebsd/commit/f713b08c027de35b0b8ed9990eabc32e100bee7a#diff-61a32fcfb7ecd4517665fed591813c57 and https://github.com/freebsd/freebsd/commit/f713b08c027de35b0b8ed9990eabc32e100bee7a#diff-7f67ccf8b5f44ff2f54eaab0207abb8d. The scope of functions versioned here differs from other platforms as not all structs were modified that were on others, such as DIR for `opendir`, `telldir`, etc. Only functions using dirent, stat, glob_t, and dev_t need the changes. Fixes https://github.com/rust-lang/rust/issues/42681
-
Bryan Drewery authored
struct kevent was modified in FreeBSD12. The @FBSD_1.0 symbol supports the old structure ABI still. This allows the `mio` crate tests to now pass on FreeBSD12.
-
bgermann authored
The added constants are IPV6_UNICAST_HOPS, IPV6_MULTICAST_IF, IPV6_MULTICAST_HOPS, IP_MULTICAST_IF.
-
- Feb 28, 2018
-
-
Raph Levien authored
Recent change #925 added constants for IPV6 multicast, but seems to have inadvertently left off IPV6_UNICAST_HOPS from fuchsia. Fixes #932
-
gnzlbg authored
-
gnzlbg authored
-
gnzlbg authored
-
- Feb 27, 2018
-
-
gnzlbg authored
-