From 271afa81247beb3767f73af949ae34237d991adb Mon Sep 17 00:00:00 2001 From: Stefan Schindler Date: Tue, 3 Oct 2017 10:24:50 +0200 Subject: [PATCH 01/11] Add pthread_getname_np, requires #define _GNU_SOURCE --- src/unix/bsd/apple/mod.rs | 3 +++ src/unix/bsd/netbsdlike/netbsd/mod.rs | 3 +++ src/unix/notbsd/linux/mod.rs | 6 ++++++ 3 files changed, 12 insertions(+) diff --git a/src/unix/bsd/apple/mod.rs b/src/unix/bsd/apple/mod.rs index 8558957a10da8..0a0a2c79447d0 100644 --- a/src/unix/bsd/apple/mod.rs +++ b/src/unix/bsd/apple/mod.rs @@ -2131,6 +2131,9 @@ extern { -> ::c_int; pub fn mach_absolute_time() -> u64; pub fn mach_timebase_info(info: *mut ::mach_timebase_info) -> ::c_int; + pub fn pthread_getname_np(t: ::pthread_t, + name_buf: *mut ::c_char, + buf_len: ::c_int) -> ::c_int; pub fn pthread_setname_np(name: *const ::c_char) -> ::c_int; pub fn pthread_get_stackaddr_np(thread: ::pthread_t) -> *mut ::c_void; pub fn pthread_get_stacksize_np(thread: ::pthread_t) -> ::size_t; diff --git a/src/unix/bsd/netbsdlike/netbsd/mod.rs b/src/unix/bsd/netbsdlike/netbsd/mod.rs index 16f127e9cc6e4..ac85d509a105d 100644 --- a/src/unix/bsd/netbsdlike/netbsd/mod.rs +++ b/src/unix/bsd/netbsdlike/netbsd/mod.rs @@ -963,6 +963,9 @@ extern { pid: ::pid_t, addr: *mut ::c_void, data: ::c_int) -> ::c_int; + pub fn pthread_getname_np(t: ::pthread_t, + name_buf: *mut ::c_char, + buf_len: ::c_int) -> ::c_int; pub fn pthread_setname_np(t: ::pthread_t, name: *const ::c_char, arg: *mut ::c_void) -> ::c_int; diff --git a/src/unix/notbsd/linux/mod.rs b/src/unix/notbsd/linux/mod.rs index 46cf538f17d0e..c88f6b3c8a30e 100644 --- a/src/unix/notbsd/linux/mod.rs +++ b/src/unix/notbsd/linux/mod.rs @@ -1473,6 +1473,12 @@ extern { flags: ::c_int, rqtp: *const ::timespec, rmtp: *mut ::timespec) -> ::c_int; + pub fn pthread_getname_np(t: ::pthread_t, + name_buf: *mut ::c_char, + buf_len: ::c_int) -> ::c_int; + pub fn pthread_setname_np(t: ::pthread_t, + name: *const ::c_char, + arg: *mut ::c_void) -> ::c_int; pub fn pthread_attr_getguardsize(attr: *const ::pthread_attr_t, guardsize: *mut ::size_t) -> ::c_int; pub fn sethostname(name: *const ::c_char, len: ::size_t) -> ::c_int; From c56867278b6d25eef4aac16df0b80bafccd2abf8 Mon Sep 17 00:00:00 2001 From: Stefan Schindler Date: Tue, 3 Oct 2017 10:49:10 +0200 Subject: [PATCH 02/11] Add Android, fix Linux --- src/unix/notbsd/android/mod.rs | 5 +++++ src/unix/notbsd/linux/mod.rs | 3 +-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/unix/notbsd/android/mod.rs b/src/unix/notbsd/android/mod.rs index 3eb5eb4bcb44a..18a110c9ed289 100644 --- a/src/unix/notbsd/android/mod.rs +++ b/src/unix/notbsd/android/mod.rs @@ -1037,6 +1037,11 @@ extern { flags: ::c_int, rqtp: *const ::timespec, rmtp: *mut ::timespec) -> ::c_int; + pub fn pthread_getname_np(t: ::pthread_t, + name_buf: *mut ::c_char, + buf_len: ::c_int) -> ::c_int; + pub fn pthread_setname_np(t: ::pthread_t, + name: *const ::c_char) -> ::c_int; pub fn pthread_attr_getguardsize(attr: *const ::pthread_attr_t, guardsize: *mut ::size_t) -> ::c_int; pub fn sethostname(name: *const ::c_char, len: ::size_t) -> ::c_int; diff --git a/src/unix/notbsd/linux/mod.rs b/src/unix/notbsd/linux/mod.rs index c88f6b3c8a30e..b80b0a21b9b5d 100644 --- a/src/unix/notbsd/linux/mod.rs +++ b/src/unix/notbsd/linux/mod.rs @@ -1477,8 +1477,7 @@ extern { name_buf: *mut ::c_char, buf_len: ::c_int) -> ::c_int; pub fn pthread_setname_np(t: ::pthread_t, - name: *const ::c_char, - arg: *mut ::c_void) -> ::c_int; + name: *const ::c_char) -> ::c_int; pub fn pthread_attr_getguardsize(attr: *const ::pthread_attr_t, guardsize: *mut ::size_t) -> ::c_int; pub fn sethostname(name: *const ::c_char, len: ::size_t) -> ::c_int; From 4f06c216908d67e6f3ad58bfb1bb8c3ed5264fbf Mon Sep 17 00:00:00 2001 From: Stefan Schindler Date: Tue, 3 Oct 2017 11:37:19 +0200 Subject: [PATCH 03/11] fixup --- src/unix/notbsd/android/mod.rs | 2 +- src/unix/notbsd/linux/mod.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/unix/notbsd/android/mod.rs b/src/unix/notbsd/android/mod.rs index 18a110c9ed289..36d5e3fa55019 100644 --- a/src/unix/notbsd/android/mod.rs +++ b/src/unix/notbsd/android/mod.rs @@ -1039,7 +1039,7 @@ extern { rmtp: *mut ::timespec) -> ::c_int; pub fn pthread_getname_np(t: ::pthread_t, name_buf: *mut ::c_char, - buf_len: ::c_int) -> ::c_int; + buf_len: ::size_t) -> ::c_int; pub fn pthread_setname_np(t: ::pthread_t, name: *const ::c_char) -> ::c_int; pub fn pthread_attr_getguardsize(attr: *const ::pthread_attr_t, diff --git a/src/unix/notbsd/linux/mod.rs b/src/unix/notbsd/linux/mod.rs index b80b0a21b9b5d..05a1ea37f40ec 100644 --- a/src/unix/notbsd/linux/mod.rs +++ b/src/unix/notbsd/linux/mod.rs @@ -1475,7 +1475,7 @@ extern { rmtp: *mut ::timespec) -> ::c_int; pub fn pthread_getname_np(t: ::pthread_t, name_buf: *mut ::c_char, - buf_len: ::c_int) -> ::c_int; + buf_len: ::size_t -> ::c_int; pub fn pthread_setname_np(t: ::pthread_t, name: *const ::c_char) -> ::c_int; pub fn pthread_attr_getguardsize(attr: *const ::pthread_attr_t, From f0a031db84fc07105a9550ceebfc5026d9d57b81 Mon Sep 17 00:00:00 2001 From: Stefan Schindler Date: Tue, 3 Oct 2017 11:50:23 +0200 Subject: [PATCH 04/11] f --- libc-test/build.rs | 1 + src/unix/notbsd/linux/mod.rs | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/libc-test/build.rs b/libc-test/build.rs index edf94d715e3c4..a4904e95e204c 100644 --- a/libc-test/build.rs +++ b/libc-test/build.rs @@ -151,6 +151,7 @@ fn main() { if !netbsd && !openbsd && !uclibc { cfg.header("execinfo.h"); + cfg.header("locale.h"); } if openbsd { diff --git a/src/unix/notbsd/linux/mod.rs b/src/unix/notbsd/linux/mod.rs index 05a1ea37f40ec..2d7fd8083759b 100644 --- a/src/unix/notbsd/linux/mod.rs +++ b/src/unix/notbsd/linux/mod.rs @@ -1475,7 +1475,7 @@ extern { rmtp: *mut ::timespec) -> ::c_int; pub fn pthread_getname_np(t: ::pthread_t, name_buf: *mut ::c_char, - buf_len: ::size_t -> ::c_int; + buf_len: ::size_t) -> ::c_int; pub fn pthread_setname_np(t: ::pthread_t, name: *const ::c_char) -> ::c_int; pub fn pthread_attr_getguardsize(attr: *const ::pthread_attr_t, From 597215c7cb677beb579491b89790d438d750d006 Mon Sep 17 00:00:00 2001 From: Stefan Schindler Date: Tue, 3 Oct 2017 13:55:03 +0200 Subject: [PATCH 05/11] Update AF_MAX and PF_MAX to 44, quote from : /* For now.. */ --- src/unix/notbsd/linux/mips/mod.rs | 2 +- src/unix/notbsd/linux/musl/b32/mod.rs | 5 +++++ src/unix/notbsd/linux/musl/b64/aarch64.rs | 2 +- src/unix/notbsd/linux/musl/b64/powerpc64.rs | 2 +- src/unix/notbsd/linux/musl/b64/x86_64.rs | 2 +- src/unix/notbsd/linux/other/mod.rs | 2 +- 6 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/unix/notbsd/linux/mips/mod.rs b/src/unix/notbsd/linux/mips/mod.rs index a94e2bcddbea2..88cc0db722881 100644 --- a/src/unix/notbsd/linux/mips/mod.rs +++ b/src/unix/notbsd/linux/mips/mod.rs @@ -663,7 +663,7 @@ pub const SIGEV_THREAD_ID: ::c_int = 4; pub const EPOLLWAKEUP: ::c_int = 0x20000000; #[doc(hidden)] -pub const AF_MAX: ::c_int = 42; +pub const AF_MAX: ::c_int = 44; #[doc(hidden)] pub const PF_MAX: ::c_int = AF_MAX; diff --git a/src/unix/notbsd/linux/musl/b32/mod.rs b/src/unix/notbsd/linux/musl/b32/mod.rs index f6e19d981ddcc..5462fd027c1b7 100644 --- a/src/unix/notbsd/linux/musl/b32/mod.rs +++ b/src/unix/notbsd/linux/musl/b32/mod.rs @@ -52,6 +52,11 @@ pub const MINSIGSTKSZ: ::size_t = 2048; pub const __SIZEOF_PTHREAD_RWLOCK_T: usize = 32; pub const __SIZEOF_PTHREAD_MUTEX_T: usize = 24; +#[doc(hidden)] +pub const AF_MAX: ::c_int = 44; +#[doc(hidden)] +pub const PF_MAX: ::c_int = AF_MAX; + cfg_if! { if #[cfg(any(target_arch = "x86"))] { mod x86; diff --git a/src/unix/notbsd/linux/musl/b64/aarch64.rs b/src/unix/notbsd/linux/musl/b64/aarch64.rs index da0827a7750a2..4dcbbd142b8a9 100644 --- a/src/unix/notbsd/linux/musl/b64/aarch64.rs +++ b/src/unix/notbsd/linux/musl/b64/aarch64.rs @@ -71,7 +71,7 @@ pub const MINSIGSTKSZ: ::size_t = 6144; pub const SIGSTKSZ: ::size_t = 12288; #[doc(hidden)] -pub const PF_MAX: ::c_int = 43; +pub const PF_MAX: ::c_int = 44; #[doc(hidden)] pub const AF_MAX: ::c_int = PF_MAX; diff --git a/src/unix/notbsd/linux/musl/b64/powerpc64.rs b/src/unix/notbsd/linux/musl/b64/powerpc64.rs index 1574bff5a6064..13f091a88cce4 100644 --- a/src/unix/notbsd/linux/musl/b64/powerpc64.rs +++ b/src/unix/notbsd/linux/musl/b64/powerpc64.rs @@ -75,7 +75,7 @@ pub const SIGSTKSZ: ::size_t = 8192; pub const MINSIGSTKSZ: ::size_t = 2048; #[doc(hidden)] -pub const AF_MAX: ::c_int = 42; +pub const AF_MAX: ::c_int = 44; #[doc(hidden)] pub const PF_MAX: ::c_int = AF_MAX; diff --git a/src/unix/notbsd/linux/musl/b64/x86_64.rs b/src/unix/notbsd/linux/musl/b64/x86_64.rs index 78d38e49e8f9b..9c7be019165e3 100644 --- a/src/unix/notbsd/linux/musl/b64/x86_64.rs +++ b/src/unix/notbsd/linux/musl/b64/x86_64.rs @@ -446,6 +446,6 @@ pub const SIGSTKSZ: ::size_t = 8192; pub const MINSIGSTKSZ: ::size_t = 2048; #[doc(hidden)] -pub const AF_MAX: ::c_int = 42; +pub const AF_MAX: ::c_int = 44; #[doc(hidden)] pub const PF_MAX: ::c_int = AF_MAX; diff --git a/src/unix/notbsd/linux/other/mod.rs b/src/unix/notbsd/linux/other/mod.rs index ad54ecf571bb2..fb94d87a159b9 100644 --- a/src/unix/notbsd/linux/other/mod.rs +++ b/src/unix/notbsd/linux/other/mod.rs @@ -544,7 +544,7 @@ pub const TIOCM_CD: ::c_int = TIOCM_CAR; pub const TIOCM_RI: ::c_int = TIOCM_RNG; #[doc(hidden)] -pub const AF_MAX: ::c_int = 42; +pub const AF_MAX: ::c_int = 44; #[doc(hidden)] pub const PF_MAX: ::c_int = AF_MAX; From 1114580f894e65d1b7b7336a2d36faccfd8afaf4 Mon Sep 17 00:00:00 2001 From: Stefan Schindler Date: Tue, 3 Oct 2017 13:58:36 +0200 Subject: [PATCH 06/11] Arch Linux fixes --- libc-test/build.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libc-test/build.rs b/libc-test/build.rs index a4904e95e204c..e3bbccac3da68 100644 --- a/libc-test/build.rs +++ b/libc-test/build.rs @@ -151,6 +151,8 @@ fn main() { if !netbsd && !openbsd && !uclibc { cfg.header("execinfo.h"); + // latest Arch Linux renamed from xlocale.h + // TODO add a switch for the older platforms cfg.header("locale.h"); } @@ -448,6 +450,9 @@ fn main() { "SIG_IGN" => true, // sighandler_t weirdness "SIGUNUSED" => true, // removed in glibc 2.26 + // removed by glibc 2.26-4 at 2017-10-03 + "SIGUNUSED" => true, + // types on musl are defined a little differently n if musl && n.contains("__SIZEOF_PTHREAD") => true, From 0fee9f7b80aa47dae6186f649c1d1aafd6173a15 Mon Sep 17 00:00:00 2001 From: Stefan Schindler Date: Thu, 23 Nov 2017 14:20:37 +0100 Subject: [PATCH 07/11] update deps --- Cargo.lock | 56 +++++++++++++++++++++++++++--------------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 015105ef681a6..f0a5d14d16773 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -16,7 +16,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "ctest" version = "0.1.6" -source = "git+https://github.com/alexcrichton/ctest#621f64e78e25e71aca65f023591508dec188ae92" +source = "git+https://github.com/alexcrichton/ctest#29d33e26d8f1297736c3716f4f2495dd068849ef" dependencies = [ "cc 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "syntex_syntax 0.59.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -33,9 +33,9 @@ version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "num-traits 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.3.18 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -70,12 +70,12 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.32" -source = "registry+https://github.com/rust-lang/crates.io-index" +version = "0.2.33" [[package]] name = "libc" version = "0.2.33" +source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "libc-test" @@ -102,11 +102,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "rand" -version = "0.3.17" +version = "0.3.18" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "fuchsia-zircon 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -132,25 +132,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde" -version = "1.0.16" +version = "1.0.21" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "serde_derive 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "serde_derive" -version = "1.0.16" +version = "1.0.21" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive_internals 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive_internals 0.17.0 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "serde_derive_internals" -version = "0.16.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -159,13 +159,13 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.4" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "dtoa 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "itoa 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -191,9 +191,9 @@ name = "syntex_errors" version = "0.59.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)", "syntex_pos 0.59.1 (registry+https://github.com/rust-lang/crates.io-index)", "term 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -204,8 +204,8 @@ name = "syntex_pos" version = "0.59.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "serde 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -216,9 +216,9 @@ dependencies = [ "bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", "extprim 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "syntex_errors 0.59.1 (registry+https://github.com/rust-lang/crates.io-index)", "syntex_pos 0.59.1 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -264,18 +264,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum fuchsia-zircon-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "43f3795b4bae048dc6123a6b972cadde2e676f9ded08aef6bb77f5f157684a82" "checksum itoa 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8324a32baf01e2ae060e9de58ed0bc2320c9a2833491ee36cd3b4c414de4db8c" "checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" -"checksum libc 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)" = "56cce3130fd040c28df6f495c8492e5ec5808fb4c9093c310df02b0c8f030148" +"checksum libc 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "5ba3df4dcb460b9dfbd070d41c94c19209620c191b0340b929ce748a2bcd42d2" "checksum log 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "880f77541efa6e5cc74e76910c9884d9859683118839d6a1dc3b11e63512565b" "checksum num-traits 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "99843c856d68d8b4313b03a17e33c4bb42ae8f6610ea81b28abe076ac721b9b0" "checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a" -"checksum rand 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)" = "61efcbcd9fa8d8fbb07c84e34a8af18a1ff177b449689ad38a6e9457ecc7b2ae" +"checksum rand 0.3.18 (registry+https://github.com/rust-lang/crates.io-index)" = "6475140dfd8655aeb72e1fd4b7a1cc1c202be65d71669476e392fe62532b9edd" "checksum rustc_version 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b9743a7670d88d5d52950408ecdb7c71d8986251ab604d4689dd2ca25c9bca69" "checksum semver 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7a3186ec9e65071a2095434b1f5bb24838d4e8e130f584c790f6033c79943537" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" -"checksum serde 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)" = "e11a631f964d4e6572712ea12075fb1d65eeef42b0058884195b430ac1e26809" -"checksum serde_derive 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)" = "1a51d54c805fbc8e12b603d1ba51eaed3195862976be468888ab0e4995d0000e" -"checksum serde_derive_internals 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bd381f6d01a6616cdba8530492d453b7761b456ba974e98768a18cad2cd76f58" -"checksum serde_json 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "ee28c1d94a7745259b767ca9e5b95d55bafbd3205ca3acb978cad84a6ed6bc62" +"checksum serde 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)" = "6eda663e865517ee783b0891a3f6eb3a253e0b0dabb46418969ee9635beadd9e" +"checksum serde_derive 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)" = "652bc323d694dc925829725ec6c890156d8e70ae5202919869cb00fe2eff3788" +"checksum serde_derive_internals 0.17.0 (registry+https://github.com/rust-lang/crates.io-index)" = "32f1926285523b2db55df263d2aa4eb69ddcfa7a7eade6430323637866b513ab" +"checksum serde_json 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "e4586746d1974a030c48919731ecffd0ed28d0c40749d0d18d43b3a7d6c9b20e" "checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad" "checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6" "checksum syntex_errors 0.59.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3133289179676c9f5c5b2845bf5a2e127769f4889fcbada43035ef6bd662605e" From eff35f643e8ca7ddf3900721d806cd370f4dc3bf Mon Sep 17 00:00:00 2001 From: Stefan Schindler Date: Thu, 23 Nov 2017 14:24:32 +0100 Subject: [PATCH 08/11] Reintroduced SIGUNUSED with glibc 2.26-6 /usr/include/asm-generic/signal.h 46:#define SIGUNUSED 31 /usr/include/asm/signal.h 56:#define SIGUNUSED 31 --- libc-test/build.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libc-test/build.rs b/libc-test/build.rs index e3bbccac3da68..540ba7f7426c9 100644 --- a/libc-test/build.rs +++ b/libc-test/build.rs @@ -451,7 +451,8 @@ fn main() { "SIGUNUSED" => true, // removed in glibc 2.26 // removed by glibc 2.26-4 at 2017-10-03 - "SIGUNUSED" => true, + // reintroduced by glibc 2.26-6 at 2017-11-23 + // "SIGUNUSED" => true, // types on musl are defined a little differently n if musl && n.contains("__SIZEOF_PTHREAD") => true, From a981147d9263737bdbd1812b0da382d232193d80 Mon Sep 17 00:00:00 2001 From: Stefan Schindler Date: Thu, 23 Nov 2017 14:26:48 +0100 Subject: [PATCH 09/11] Cleanup --- libc-test/build.rs | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/libc-test/build.rs b/libc-test/build.rs index 540ba7f7426c9..83f728f99afbf 100644 --- a/libc-test/build.rs +++ b/libc-test/build.rs @@ -449,10 +449,8 @@ fn main() { "SIG_ERR" | "SIG_IGN" => true, // sighandler_t weirdness "SIGUNUSED" => true, // removed in glibc 2.26 - - // removed by glibc 2.26-4 at 2017-10-03 - // reintroduced by glibc 2.26-6 at 2017-11-23 - // "SIGUNUSED" => true, + "AF_MAX" => true, + "PF_MAX" => true, // types on musl are defined a little differently n if musl && n.contains("__SIZEOF_PTHREAD") => true, From 8b43e6b639ddf28432798e7310387a055b779743 Mon Sep 17 00:00:00 2001 From: Stefan Schindler Date: Fri, 24 Nov 2017 18:26:19 +0100 Subject: [PATCH 10/11] fix mac Android does not support getting the thread name with posix functions --- src/unix/bsd/apple/mod.rs | 2 +- src/unix/notbsd/android/mod.rs | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/unix/bsd/apple/mod.rs b/src/unix/bsd/apple/mod.rs index 0a0a2c79447d0..8cb1f9516bda6 100644 --- a/src/unix/bsd/apple/mod.rs +++ b/src/unix/bsd/apple/mod.rs @@ -2133,7 +2133,7 @@ extern { pub fn mach_timebase_info(info: *mut ::mach_timebase_info) -> ::c_int; pub fn pthread_getname_np(t: ::pthread_t, name_buf: *mut ::c_char, - buf_len: ::c_int) -> ::c_int; + buf_len: ::size_t) -> ::c_int; pub fn pthread_setname_np(name: *const ::c_char) -> ::c_int; pub fn pthread_get_stackaddr_np(thread: ::pthread_t) -> *mut ::c_void; pub fn pthread_get_stacksize_np(thread: ::pthread_t) -> ::size_t; diff --git a/src/unix/notbsd/android/mod.rs b/src/unix/notbsd/android/mod.rs index 36d5e3fa55019..4b6203e02cb03 100644 --- a/src/unix/notbsd/android/mod.rs +++ b/src/unix/notbsd/android/mod.rs @@ -1037,9 +1037,7 @@ extern { flags: ::c_int, rqtp: *const ::timespec, rmtp: *mut ::timespec) -> ::c_int; - pub fn pthread_getname_np(t: ::pthread_t, - name_buf: *mut ::c_char, - buf_len: ::size_t) -> ::c_int; + // getname is not available, use prctl(PR_GET_NAME, ...) pub fn pthread_setname_np(t: ::pthread_t, name: *const ::c_char) -> ::c_int; pub fn pthread_attr_getguardsize(attr: *const ::pthread_attr_t, From 7175608af3519e5b679ac382dbb640ebddbe42bd Mon Sep 17 00:00:00 2001 From: Stefan Schindler Date: Sat, 25 Nov 2017 20:32:01 +0100 Subject: [PATCH 11/11] doc android and musl --- src/unix/notbsd/linux/mod.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/unix/notbsd/linux/mod.rs b/src/unix/notbsd/linux/mod.rs index 2d7fd8083759b..013ae5d983513 100644 --- a/src/unix/notbsd/linux/mod.rs +++ b/src/unix/notbsd/linux/mod.rs @@ -1339,7 +1339,7 @@ extern { pub fn setfsgid(gid: ::gid_t) -> ::c_int; pub fn setfsuid(uid: ::uid_t) -> ::c_int; - // Not available now on Android + /// Not available now on Android pub fn mkfifoat(dirfd: ::c_int, pathname: *const ::c_char, mode: ::mode_t) -> ::c_int; pub fn if_nameindex() -> *mut if_nameindex; @@ -1473,6 +1473,8 @@ extern { flags: ::c_int, rqtp: *const ::timespec, rmtp: *mut ::timespec) -> ::c_int; + /// musl and Android are incompete 2017-11-25 + #[cfg(not(target_env = "musl"))] pub fn pthread_getname_np(t: ::pthread_t, name_buf: *mut ::c_char, buf_len: ::size_t) -> ::c_int;