Commit Graph

623 Commits

Author SHA1 Message Date
Alex Crichton 7ce8eba6f2 Merge pull request #139 from alexcrichton/freebsd
FreeBSD and OpenBSD CI
2016-01-19 22:28:51 -08:00
Alex Crichton bb6f198a20 Fix all definitions on FreeBSD
* The `flock` structure has an extra field
* Some `flock`-related constants have different value
* Some constants like `TABN` don't exist
* The `fsblkcnt_t` and `fsfilcnt_t` type definitions are u64 for x86_64 FreeBSD
* The `d_namelen` field in `dirent` was renamed correctly to `d_namlen`
* The alignment of `fd_set` was off, and the macros were updated to not always
  assume a 32-bit integer is used.
2016-01-18 22:54:28 -08:00
Alex Crichton d820c4a8f7 Add OpenBSD and FreeBSD CI to Travis
This commit adds support to test all libc definitions on both OpenBSD and
FreeBSD via QEMU userspace emulation. Specially prepared images for each OS are
used which are essentially intended to run a script on startup and then exit.
Documentation has been added to the `ci/README.md` file describing this new
system.
2016-01-18 22:54:28 -08:00
Alex Crichton 2575794dd7 Merge pull request #138 from nbaksalyar/illumos
Add Illumos support
2016-01-17 12:39:57 -08:00
Nikita Baksalyar bff38929af
Move getpwuid_r definition to platform-specific modules 2016-01-17 22:17:20 +03:00
Nikita Baksalyar 7fa6dea821
Reorganize Illumos module 2016-01-17 22:10:16 +03:00
Nikita Baksalyar 25726a654b
Add Illumos support 2016-01-17 21:41:34 +03:00
Alex Crichton a59ccee2d8 Merge pull request #137 from mrjana/setns
Add setns api to linux targets
2016-01-15 23:58:44 -08:00
Jana Radhakrishnan 3bb17681a8 Add setns api to linux targets
Adds setns libc api to all linux targets

Signed-off-by: Jana Radhakrishnan <mrjana@gmail.com>
2016-01-15 22:26:36 -08:00
Alex Crichton 9aa6600bd8 Merge pull request #133 from antonblanchard/powerpc64_merge
Add powerpc64 and powerpc64le support
2016-01-12 20:19:24 -08:00
Anton Blanchard c4f676bddf Add powerpc64 and powerpc64le support
A number of libc constants are different on PowerPC64 Linux, so push
them down into arch specific files.
2016-01-13 01:08:35 +00:00
Jim Blandy eeb75827c5 The type of eventfd's 'initval' argument should be unsigned. 2016-01-12 16:59:17 -08:00
Alex Crichton 04d93c96be Merge pull request #136 from jimblandy/eventfd-whitelist
Skip C/Rust type checks for eventfd.
2016-01-12 16:56:24 -08:00
Jim Blandy f8772f7e52 Skip C/Rust type checks for eventfd. 2016-01-12 16:28:07 -08:00
Alex Crichton 95d6a00134 Merge pull request #135 from alexcrichton/fix-mips-flags
Correct MIPS types of SA_* flags
2016-01-12 12:01:12 -08:00
Alex Crichton e9c088bffd Correct MIPS types of SA_* flags
Missed out correction from 6ac75c16b
2016-01-12 10:26:16 -08:00
Alex Crichton 4d9ab7ebea Merge pull request #127 from jimblandy/no-linux-fs
libc-test's C program should not #include <linux/fs.h> on Linux
2016-01-11 22:11:51 -08:00
Jim Blandy e91606da34 Common up all definitions of MS_RMT_MASK, since they're all equal now. 2016-01-11 21:03:07 -08:00
Jim Blandy 9b53e54dd5 Don't #include <linux/fs.h>; libc's API is described by <sys/mount.h>.
Adjust MIPS MS_RMT_MASK to match <sys/mount.h>.
2016-01-11 21:02:45 -08:00
Jim Blandy e77376494d Remove MS_NOSEC and MS_BORN flags; these are not part of the public kernel interface. 2016-01-11 16:25:13 -08:00
Jim Blandy 3074853187 Delete definitions of MS_VERBOSE; it's deprecated in favor of the (more portable!) MS_SILENT. 2016-01-11 16:24:56 -08:00
Alex Crichton 0ba85711b6 Merge pull request #134 from alexcrichton/merge
Merging a number of PRs into one
2016-01-11 15:31:28 -08:00
Alex Crichton 6cf54d553f Fix constant values for MIPS 2016-01-11 13:04:28 -08:00
Alex Crichton 2d0593028b Merge branch 'android-posix-memalign' of https://github.com/tamird/libc into merge 2016-01-11 09:18:56 -08:00
Alex Crichton 0422dbaabd Merge branch 'add_ioctl_constants' of https://github.com/derekdreery/libc into merge 2016-01-10 14:43:08 -08:00
Alex Crichton a5d830a8a0 Move docker container and don't re-symlink mips compilers 2016-01-10 14:36:27 -08:00
Alex Crichton 4506d29557 Merge branch 'mips3' of https://github.com/polachok/libc into merge 2016-01-10 14:23:28 -08:00
Alex Crichton fc1b0ad67c Merge branch 'master' of https://github.com/diwic/libc into merge 2016-01-10 14:21:13 -08:00
Alex Crichton 0e67fabda3 Merge branch 'openbsd-cleanup' of https://github.com/semarie/libc into merge 2016-01-10 14:19:17 -08:00
Tamir Duberstein 0b102fdf47 android has `posix_memalign` for API 16+ since NDK r10d
See: http://developer.android.com/ndk/downloads/revision_history.html
2016-01-06 18:16:05 -05:00
Alexander Polakov 6ac75c16b1 Fix mips fallout on new toolchain 2016-01-05 22:44:01 +03:00
Richard Dodd 0a64d24137 Add ioctl constants 2015-12-31 12:51:50 +00:00
Simon Sapin 52f4f39a77 Add SO_REUSEPORT for Android
The `net2` crate currently fails to cross-compile to Android with
``error: unresolved name `libc::SO_REUSEPORT` ``

According to http://stackoverflow.com/a/14388707/1162888,
Android is essentially the same as Linux for the purpose of
socket features support, and the Linux kernel has supported
`SO_REUSEPORT` since version 3.9.

According to http://android.stackexchange.com/a/51656,
Android has had more recent kernels than that since version 4.4 Kit Kat.
2015-12-28 00:25:07 +01:00
Alexander Polakov 2cdb21ea2b Use docker for MIPS 2015-12-27 12:22:59 +03:00
David Henningsson 9d2493e8bf Add poll API
Signed-off-by: David Henningsson <diwic@ubuntu.com>
2015-12-25 23:06:37 +01:00
Sébastien Marie 6c8a63a9e2 keep openbsd name for dirent field member 2015-12-23 20:23:06 +01:00
Sébastien Marie 6b847426de provide getentropy(2) instead of SYS_entropy
SYS_entropy is internal and may more easily change than getentropy(2).
2015-12-23 11:03:14 +01:00
Sébastien Marie ee8c050071 define NI_MAXHOST per system
- under openbsd/bitrig it is 256
- change type to `size_t` where system have `getnameinfo()` with
  `hostlen` as `size_t`
2015-12-23 11:03:13 +01:00
Sébastien Marie 3de62ef5a7 define TMP_MAX differently for openbsdlike 2015-12-23 11:03:13 +01:00
Sébastien Marie 0f8571b63d properly define SIGSTKSZ under openbsd 2015-12-23 11:03:13 +01:00
Sébastien Marie 6dc38681a6 use proper type of si_addr in siginfo_t
under openbsd it is a `caddr_t` which expand to `char *`.
as the size of the type change, adjust the padding too.
2015-12-23 11:03:13 +01:00
Sébastien Marie b1a108c245 change sign for `blksize_t` type under openbsd 2015-12-23 11:03:12 +01:00
Sébastien Marie d732678ddc change type size to match openbsd C 2015-12-23 11:03:12 +01:00
Sébastien Marie c5eadb3293 remove backtrace() prototype that don't exists under
- openbsd
- bitrig
- netbsd
2015-12-23 11:03:12 +01:00
Sébastien Marie 5f75552056 change proto for getnameinfo()
arguments `hostlen' and `servlen' are `socklen_t' or `size_t' depending
the platform

- apple: I don't known, so I don't change the original definition (socklen_t)
- netbsd: socklen_t
- freebsd: size_t
- dragonfly: size_t
- openbsd: size_t
- bitrig: size_t
2015-12-23 11:03:12 +01:00
Sébastien Marie 3465481a8c more proto change on openbsd
- sysctl: *mut -> *const
- mprotect: *const -> *mut
- remove sysctlbyname() that don't exists under openbsd
2015-12-23 11:03:11 +01:00
Sébastien Marie 040976b20f change proto (uint -> int) for pthread_*_np() functions
- same prototype on bitrig and openbsd
- for netbsd, I did found it at all (?)
2015-12-23 11:03:11 +01:00
Sébastien Marie 27fd4f8661 rename syscalls constants to follow name under openbsd 2015-12-23 11:03:11 +01:00
Sébastien Marie 85008bd38e drop undefined constants under openbsd
- IPV6_{ADD,DROP}_MEMBERSHIP
- HW_AVAILCPU
2015-12-23 11:03:11 +01:00
Sébastien Marie 15cb33670d move Dl_info struct per system
- under openbsd and bitrig: dli_saddr member is *mut ::c_void
- under netbsd: it is *const ::c_void
2015-12-23 11:03:10 +01:00