diff --git a/libc-test/build.rs b/libc-test/build.rs index 90c5640ba1f1de57b58fb9a84dbf95a80cb70d82..7250290c728431b78961d5b8e1e72e19f7c4836e 100644 --- a/libc-test/build.rs +++ b/libc-test/build.rs @@ -42,6 +42,8 @@ fn main() { cfg.define("_XOPEN_SOURCE", Some("700")); cfg.define("__EXTENSIONS__", None); cfg.define("_LCONV_C99", None); + } else if freebsd { + cfg.define("_WITH_GETLINE", None); } // Android doesn't actually have in_port_t but it's much easier if we diff --git a/src/unix/bsd/apple/mod.rs b/src/unix/bsd/apple/mod.rs index 50bc57f47aedb45afc3d7cd39deaa11330776999..ee8108de92bc0d84176374c39ef1ae36832b77d0 100644 --- a/src/unix/bsd/apple/mod.rs +++ b/src/unix/bsd/apple/mod.rs @@ -2585,8 +2585,6 @@ extern { fd: ::c_int, newfd: ::c_int, ) -> ::c_int; - - pub fn getline (lineptr: *mut *mut c_char, n: *mut size_t, stream: *mut FILE) -> ssize_t; } cfg_if! { diff --git a/src/unix/mod.rs b/src/unix/mod.rs index 84c31ce78e97038ecb841b0363244f16dfd37930..b7bcac1574ed60c2173f2ac1de045b74e973087a 100644 --- a/src/unix/mod.rs +++ b/src/unix/mod.rs @@ -949,6 +949,7 @@ extern { pub fn unlockpt(fd: ::c_int) -> ::c_int; pub fn strcasestr(cs: *const c_char, ct: *const c_char) -> *mut c_char; + pub fn getline (lineptr: *mut *mut c_char, n: *mut size_t, stream: *mut FILE) -> ssize_t; } cfg_if! { diff --git a/src/unix/notbsd/mod.rs b/src/unix/notbsd/mod.rs index d3d79244623e11d3837498ef7d52cf82bbaaf81d..6e4500684e136b06c7ccd6ce634e7894f3354e77 100644 --- a/src/unix/notbsd/mod.rs +++ b/src/unix/notbsd/mod.rs @@ -1229,8 +1229,6 @@ extern { flags: ::c_int) -> ::ssize_t; pub fn recvmsg(fd: ::c_int, msg: *mut ::msghdr, flags: ::c_int) -> ::ssize_t; - - pub fn getline (lineptr: *mut *mut c_char, n: *mut size_t, stream: *mut FILE) -> ssize_t; } cfg_if! {