Commit Graph

338 Commits

Author SHA1 Message Date
gnzlbg
484f39e1ba Document SIGUNUSED deprecation on Android 2019-05-28 16:21:18 +02:00
gnzlbg
8e26ab4964 Minor nitpicks 2019-05-28 16:21:18 +02:00
gnzlbg
0bc18a5dc9 [breaking change] sendmmsg/recvmmsg have incorrect signature c_int vs c_uint on emscripten 2019-05-28 16:01:26 +02:00
gnzlbg
5ede8aab94 Enable disabled tests 2019-05-28 16:01:26 +02:00
gnzlbg
1a3d1525da [breaking change] sendmmsg/recvmmsg flag argument is an unsigned integer on MUSL 2019-05-28 10:09:43 +02:00
gnzlbg
2543b7c8ed bump kernel headers to 4.4.2-2 2019-05-27 22:23:02 +02:00
gnzlbg
1cbc523e50 [breaking change] MADV_SOFT_OFFLINE is undefined on MIPS 2019-05-27 22:23:02 +02:00
gnzlbg
8f403e5ac2 Update MUSL Linux kernel headers and re-enable Linux tests 2019-05-27 22:23:02 +02:00
gnzlbg
7437d0a6f1 Add a FreeBSD 12 build job and test FreeBSD12 APIs
This commits adds a second FreeBSD 12 build job,
and splits the implementation of the FreeBSD module
into two modules, one for FreeBSD 11, and one for FreeBSD 12.

The FreeBSD 11 module is compiled always by default, and is
mostly forward compatible with FreeBSD 12 systems.

The FreeBSD 12 module is only built for now in libc's CI,
and uses FreeBSD 12 data types and APIs, linking to symbols
that are only available in FreeBSD 12.

Basically, when LIBC_CI env variable is defined, and the host
system is a FreeBSD 12 system, then the FreeBSD 12 module is
automatically built and tested. Conditional compilation is done
using a `cfg(freebsd12)` flag.

This commit also re-enables many tests, and documents why
some remain disabled.
2019-05-24 20:04:17 +02:00
bors
f775bea997 Auto merge of #1344 - gnzlbg:fix_android_bj, r=gnzlbg
Fix Android build jobs
2019-05-23 18:12:55 +00:00
gnzlbg
ccad8b426c Fix musl build jobs 2019-05-23 19:09:39 +02:00
gnzlbg
7f8b946cc2 Document what is wrong with sighandler_t 2019-05-23 16:31:05 +02:00
gnzlbg
3efe23b1c0 Enable more tests on Android 2019-05-23 16:30:51 +02:00
gnzlbg
30c853f59f [breaking change] remove __progname 2019-05-23 16:30:51 +02:00
gnzlbg
8c70f498f2 Enable more tests (some related to issue 1272) on Android 2019-05-23 16:30:36 +02:00
gnzlbg
d52732581a Test strerror_r on Android and Linux 2019-05-23 16:29:28 +02:00
gnzlbg
003c04d952 [breaking change] fix types of stat/stat64 structs, atime/mtime/ctime fields on Android 2019-05-23 16:29:28 +02:00
gnzlbg
4774fc1c9f Deprecate ENOATTR on Linux and Android 2019-05-23 16:29:28 +02:00
gnzlbg
eea0102308 Enable more tests on Android 2019-05-23 16:29:08 +02:00
bors
d14bbca96b Auto merge of #1351 - jbaublitz:nl_consts_pr, r=gnzlbg
Netlink constants for use with the route netlink subsystem

Reopening a PR to close #1059. I'll be adding a few more constants but want to make sure CI works on Github first.
2019-05-22 19:30:03 +00:00
gnzlbg
7b45788a01 Refactor OpenBSD-like module into OpenBSD 2019-05-22 14:20:13 +02:00
gnzlbg
759c837611 [breaking change] incorrect API of gettimeofday
The second argument of `gettimeofday` was a `*mut c_void` on all targets,
but that type is incorrect in the following targets, where it should be
a `*mut timezone` instead:

On these other targets it appears that the signature of gettimeofday was incorrect (it takes a time-zone pointer instead of a void pointer):

linux+gnu: http://man7.org/linux/man-pages/man2/gettimeofday.2.html
freebsd: https://www.freebsd.org/cgi/man.cgi?query=gettimeofday&apropos=0&sektion=2&manpath=FreeBSD+11.2-stable&arch=default&format=html
openbsd: https://man.openbsd.org/gettimeofday.2
android: https://github.com/ricardoquesada/android-ndk/blob/master/usr/include/sys/time.h
dragonfly: https://www.dragonflybsd.org/cgi/web-man?command=gettimeofday&section=2

This commit corrects the type on these targets, which is a breaking change. Due
to how this API is commonly used (e.g. passing `ptr::null_mut` to the second
argument), breakage should be minimal. Users wanting to support both versions
can just write `ptr as *mut _` instead.

Closes #1338.
2019-05-22 10:39:06 +02:00
John Baublitz
f70a98773c Fix builds by adding trailing commas 2019-05-21 13:18:22 -04:00
John Baublitz
e39ed74cd9 Fix builds by including linux/rtnetlink.h and linux/if_addr.h 2019-05-21 10:14:24 -04:00
bors
6bc42d40e5 Auto merge of #1342 - sunfishcode:master, r=gnzlbg
Update to the latest wasi-sysroot.

 - Rename `wasm32-unknown-wasi` to `wasm32-wasi`.
 - `__wasilibc_rmfileat` was renamed to `__wasilibc_unlinkat`
 - Add bindings for a few more functions and typedefs.
2019-05-16 21:51:36 +00:00
Linus Färnstrand
72463fc155 Add futex.h to test 2019-05-16 20:40:18 +02:00
Dan Gohman
215cd1549e Update to the latest wasi-sysroot.
- Rename `wasm32-unknown-wasi` to `wasm32-wasi`.
 - `__wasilibc_rmfileat` was renamed to `__wasilibc_unlinkat`
 - Add bindings for a few more functions and typedefs.
2019-05-16 06:40:50 -07:00
gnzlbg
9183c00f7e Remove unecessarily disabling a warning on FreeBSD 2019-05-16 11:03:12 +02:00
gnzlbg
9df115b67f Update Ubuntu images to 19.04 2019-05-16 09:15:12 +02:00
gnzlbg
1a7ee21aec Define DEPRECATED_SCANF macro to use older scanf,sscanf,fscanf symbols 2019-05-16 09:15:12 +02:00
gnzlbg
4aa5a45af1 Correct assert for mips+musl 2019-05-16 09:15:12 +02:00
gnzlbg
be36f6859b execinfo not available in emscripten 2019-05-16 09:15:12 +02:00
gnzlbg
bf76ded067 Test the Elf32/64 types sperately
These types have a p_types field, but the resolv.h
header defines p_types __p_types macro that breaks them.
2019-05-16 09:15:11 +02:00
gnzlbg
f67f831aad readd netfilter headers 2019-05-16 09:15:11 +02:00
gnzlbg
352ee1c37d Include Linux headers after sys headers 2019-05-16 09:15:11 +02:00
gnzlbg
cb3a9db378 Include aio.h as the last header 2019-05-16 09:15:11 +02:00
gnzlbg
54fcb89354 Add missing sysctl header to freebsd tests 2019-05-16 09:15:11 +02:00
gnzlbg
9da2fd5ace Add missing utmpx.h header to freebsd tests 2019-05-16 09:15:11 +02:00
gnzlbg
dc7311bec7 Include aio.h before sys/mount.h on linux 2019-05-16 09:15:11 +02:00
gnzlbg
426f91bd25 Fix typo in Linux checking 2019-05-16 09:15:11 +02:00
gnzlbg
bb2f29641a Add missing netinet/ip.h header 2019-05-16 09:15:11 +02:00
gnzlbg
0f96e543b1 Remove conflicting linux/netfilter_ipv6.h header file due to conflicting definitions 2019-05-16 09:15:11 +02:00
gnzlbg
bee2611368 Remove conflicting linux/netfilter_ipv4.h header file due to conflicting definitions 2019-05-16 09:15:11 +02:00
gnzlbg
3956bf056b Skip verification of gettimeofday on FreeBSD 2019-05-16 09:15:11 +02:00
gnzlbg
ac90c574e5 Refactor Linux target 2019-05-14 12:00:45 +02:00
gnzlbg
b976dc2055 Refactor FreeBSD target 2019-05-14 12:00:45 +02:00
gnzlbg
3c2284c435 Remove OpenBSD-related dead-code 2019-05-14 12:00:45 +02:00
gnzlbg
0af80cae53 Refactor Android target 2019-05-14 10:06:23 +02:00
Dan Gohman
ef7ae73239 Fix dirent to match WASI libc's definition.
dirent contains a flexible array member, so don't test its sizeof, don't
allow it to be copied, and don't represent it with an artificial size.
2019-04-23 15:03:23 -07:00
Dan Gohman
49c0dc98d0 Don't add "struct" to "DIR" or "fd_set". 2019-04-23 15:03:23 -07:00