diff --git a/libc-test/build.rs b/libc-test/build.rs index 71b70632829e6..99763e29aa824 100755 --- a/libc-test/build.rs +++ b/libc-test/build.rs @@ -2737,6 +2737,9 @@ fn test_linux(target: &str) { // assume it's a int instead. "getnameinfo" if uclibc => true, + // FIXME: This needs musl 1.2.2 or later. + "gettid" if musl => true, + _ => false, } }); diff --git a/src/unix/linux_like/android/mod.rs b/src/unix/linux_like/android/mod.rs index a005ee632f61a..f1d6ef4b2baf2 100644 --- a/src/unix/linux_like/android/mod.rs +++ b/src/unix/linux_like/android/mod.rs @@ -2809,6 +2809,8 @@ extern "C" { pub fn regfree(preg: *mut ::regex_t); pub fn android_set_abort_message(msg: *const ::c_char); + + pub fn gettid() -> ::pid_t; } cfg_if! { diff --git a/src/unix/linux_like/linux/mod.rs b/src/unix/linux_like/linux/mod.rs index efd7a8ed8df15..ce71f1c7ef8ab 100644 --- a/src/unix/linux_like/linux/mod.rs +++ b/src/unix/linux_like/linux/mod.rs @@ -3594,6 +3594,8 @@ extern "C" { outbytesleft: *mut ::size_t, ) -> ::size_t; pub fn iconv_close(cd: iconv_t) -> ::c_int; + + pub fn gettid() -> ::pid_t; } cfg_if! {