Commit Graph

2201 Commits

Author SHA1 Message Date
gnzlbg
dc1956e2ef fix undefined behavior due to incorrect packing on macosx 2018-04-15 14:45:26 +02:00
bors
28b4d16309 Auto merge of #971 - faern:public-netlink-fields, r=alexcrichton
Make netlink struct fields public

I realized my netlink structs were a bit unusable if their fields are not public 🤦‍♂️

Follow up and improvement to #922
2018-04-12 15:31:20 +00:00
bors
540d7bbd9a Auto merge of #970 - glandium:ctest, r=alexcrichton
Refresh Cargo.lock

Fixes #968.
2018-04-11 14:04:07 +00:00
Linus Färnstrand
c8e9232f3d Make fields in all netlink related structs public 2018-04-11 09:18:41 +02:00
Mike Hommey
4c5e483f7f Fix statvfs on mips and powerpc glibc 2018-04-11 12:11:09 +09:00
Mike Hommey
00372224e3 Refresh Cargo.lock
Fixes #968.
2018-04-11 11:23:04 +09:00
bors
846ecb00ff Auto merge of #960 - glandium:mutex-init, r=alexcrichton
Add PTHREAD_*_MUTEX_INITIALIZER_NP for glibc

`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.
2018-04-10 21:51:01 +00:00
Mike Hommey
d9013273a0 Add PTHREAD_*_MUTEX_INITIALIZER_NP for glibc
`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.
2018-04-11 06:38:18 +09:00
Mike Hommey
4355dfcfa4 Add PTHREAD_MUTEX_ADAPTIVE_NP for glibc 2018-04-11 06:38:18 +09:00
bors
7eb6055540 Auto merge of #967 - semarie:openbsd-sigstksz, r=alexcrichton
openbsd: SIGSTKSZ has been reduced

On OpenBSD 6.3, `SIGSTKSZ` value has changed.
e211c58cc8
2018-04-10 16:07:30 +00:00
Sébastien Marie
04aa1bb572 openbsd: SIGSTKSZ has been reduced 2018-04-10 16:53:12 +02:00
bors
c202081a51 Auto merge of #965 - cmbrandenburg:fcntl_file_lock, r=alexcrichton
Add flock type value definitions for Linux/other/x86_64
2018-04-08 17:09:06 +00:00
Craig M. Brandenburg
263abfefef Add flock type value definitions for Linux/other/x86_64 2018-04-08 06:47:32 -07:00
bors
67713687fc Auto merge of #952 - semarie:map_stack, r=alexcrichton
Add MAP_STACK constant to OpenBSD

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
2018-04-07 14:30:24 +00:00
bors
cc835c9a76 Auto merge of #964 - npmccallum:master, r=alexcrichton
Default RHS to Self for Div and Shl

This fixes a consistency issue with the other operator traits.
2018-04-06 18:58:53 +00:00
Nathaniel McCallum
585e11549e Default RHS to Self for Div and Shl
This fixes a consistency issue with the other operator traits.
2018-04-06 09:48:17 -04:00
bors
512380148e Auto merge of #962 - glandium:dox, r=alexcrichton
Add dox::{Copy, Clone} impls for pointer and integer types.

Fixes: #961
2018-04-05 17:17:15 +00:00
Mike Hommey
e2bfbc5eb0 Add dox::{Copy, Clone} impls for pointer and integer types.
Fixes: #961
2018-04-05 11:40:22 +09:00
bors
829d02037c Auto merge of #958 - draganmladjenovic:uclibc_mips32, r=alexcrichton
Fix libstd build for mips*-unknown-linux-uclibc

The getrandom syscall related constant were missing. This PR adds full syscall table just in case and few other nits.
2018-04-03 23:42:39 +00:00
dragan.mladjenovic
6bc7e259e0 Fix style for #958. 2018-04-03 19:17:58 +02:00
bors
c8ab9e1828 Auto merge of #957 - matttproud:support/netbsd/terminal-ioctl, r=alexcrichton
netbsdlike: add TIOCSCTTY and TIOCSWINSZ ioctls.

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.
2018-04-03 14:46:10 +00:00
dragan.mladjenovic
ba0e4bb4d3 Fix libstd build for mips*-unknown-linux-uclibc 2018-04-03 16:25:38 +02:00
Matt T. Proud
22d078e678 netbsdlike: add TIOCSCTTY and TIOCSWINSZ ioctls.
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.
2018-04-03 08:49:38 +02:00
bors
a7e78a78e1 Auto merge of #955 - afck:master, r=alexcrichton
Add MCL_CURRENT and MCL_FUTURE to s390.
2018-03-24 22:44:56 +00:00
bors
9d6556c9fa Auto merge of #954 - cphrn:master, r=alexcrichton
Add strtonum to OpenBSD

OpenBSD provides [strtonum](http://man.openbsd.org/strtonum) but it is not in libc, yet.
2018-03-24 21:53:52 +00:00
bors
6fd31ae451 Auto merge of #951 - FraGag:rename-dox-cfg, r=alexcrichton
Rename the dox configuration option to cross_platform_docs

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.

**Note:** rust-lang/rust#48171 is blocked on this PR and on a release of libc including this change on crates.io. (Some crates in the compiler use libc as a submodule, while others use a version from crates.io.)
2018-03-24 20:29:52 +00:00
Andreas Fackler
0bb381c51d Add MCL_CURRENT and MCL_FUTURE to s390. 2018-03-24 17:25:25 +01:00
Jan S
8744ca11ae Add strtonum to OpenBSD 2018-03-22 22:19:13 +01:00
Sébastien Marie
16527634cc Add MAP_STACK constant to OpenBSD
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
2018-03-19 08:39:35 +01:00
Francis Gagné
e1fd577574 Bump to 0.2.40 2018-03-18 21:55:10 -04:00
Francis Gagné
18341fd23a Rename the dox configuration option to cross_platform_docs
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.
2018-03-18 16:39:40 -04:00
bors
3e9ccfa72f Auto merge of #799 - asomers:fdatasync, r=alexcrichton
Define fdatasync on FreeBSD.  It was introduced in FreeBSD 11.1.
2018-03-17 17:45:29 +00:00
Alan Somers
549da8a7af Define fdatasync on FreeBSD. It was introduced in FreeBSD 11.1. 2018-03-16 16:10:09 -06:00
bors
12bdc41b8e Auto merge of #950 - wezm:update-freebsd-ci-image, r=alexcrichton
Update the FreeBSD CI image

As per #948 and #799 the FreeBSD CI qemu image needs to be updated to FreeBSD 11. I have done this and updated the README with the detailed steps taken. The new image is available for download at: http://bsd-ci.com/FreeBSD-11.1-RELEASE-amd64.qcow2.xz
2018-03-16 20:09:52 +00:00
Wesley Moore
cddc3385ce Merge branch 'fix-build-freebsd' into update-freebsd-ci-image 2018-03-17 07:02:44 +11:00
Wesley Moore
c1fa4b68a8 Update FreeBSD docker CI to use FreeBSD 11.1 image 2018-03-16 08:23:01 +11:00
Wesley Moore
d3e6651ff8 Update the instructions for building a FreeBSD CI image 2018-03-15 21:22:00 +11:00
bors
9c561768f9 Auto merge of #949 - humenda:master, r=alexcrichton
redefine pthread_t for l4re-uclibc
2018-03-12 21:59:40 +00:00
Sebastian Humenda
aa6afb9b69 redefine pthread_t for l4re-uclibc 2018-03-12 22:22:44 +01:00
Wesley Moore
be2f062767 Fix test suite on FreeBSD 11 2018-03-12 11:03:46 +11:00
bors
787420a7a3 Auto merge of #946 - bgermann:master, r=alexcrichton
Add ___errno() for Solaris
2018-03-10 18:29:06 +00:00
bors
650d58ea4f Auto merge of #947 - bgermann:master, r=alexcrichton
Edit documentation

Add sparc64-unknown-linux-gnu and x86_64-sun-solaris.
Remove aarch64-unknown-linux-musl.
2018-03-10 18:03:25 +00:00
bgermann
cf70168621 Edit documentation
Add sparc64-unknown-linux-gnu and x86_64-sun-solaris.
Remove aarch64-unknown-linux-musl.
2018-03-10 13:10:50 +01:00
bgermann
4c1d1f809d Add ___errno() for Solaris 2018-03-10 09:45:55 +01:00
bors
ebb3d05fd4 Auto merge of #945 - wictory:rectract_ucred_from_openbsd, r=alexcrichton
Retract ucred type alias for sockpeercred from OpenBSD and Bitrig

Introduced in [this](https://github.com/rust-lang/libc/pull/941) PR.
2018-03-08 21:06:48 +00:00
Wictor Lund
ba2e460b4e Retract ucred type alias for sockpeercred from OpenBSD and Bitrig 2018-03-08 22:15:12 +02:00
bors
837310de9a Auto merge of #942 - wictory:pledge_changed, r=alexcrichton
Arguments of pledge(2) changed.

The arguments of pledge(2) have changed. However, the changes have to yet been propagated to Bitrig.

https://marc.info/?l=openbsd-tech&m=151268831628549&w=2
2018-03-07 22:12:38 +00:00
bors
1669334a6e Auto merge of #943 - wictory:recycle_ffi_openbsd, r=alexcrichton
Recycle IFF_NOTRAILERS into IFF_STATICARP in OpenBSD but not in Bitrig.

https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys/net/if.h?rev=1.190&content-type=text/x-cvsweb-markup
2018-03-07 21:26:12 +00:00
bors
30c205c7b1 Auto merge of #944 - wictory:invalid_functions_in_openbsd, r=alexcrichton
getpwent_r() and getgrent_r() doesn't exist in OpenBSD and Bitrig
2018-03-07 16:27:40 +00:00
Wictor Lund
88c536dc75 Recycle IFF_NOTRAILERS into IFF_STATICARP in OpenBSD but not in Bitrig.
https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys/net/if.h?rev=1.190&content-type=text/x-cvsweb-markup
2018-03-07 18:17:48 +02:00