diff --git a/.cirrus.yml b/.cirrus.yml index 7ce3b932ba084..ff3b80f7f4fc1 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -7,9 +7,13 @@ task: - name: nightly freebsd-14 freebsd_instance: image: freebsd-14-0-release-amd64-ufs - - name: nightly freebsd-15 - freebsd_instance: - image_family: freebsd-15-0-snap + # Temporarily disable CI on FreeBSD 15.0-CURRENT until the libmd solib + # fallout is cleaned up. + # FIXME https://github.com/rust-lang/libc/issues/3967 + # https://github.com/rust-lang/libc/issues/3967 + #- name: nightly freebsd-15 + # freebsd_instance: + # image_family: freebsd-15-0-snap setup_script: - pkg install -y libnghttp2 curl - curl https://sh.rustup.rs -sSf --output rustup.sh diff --git a/libc-test/build.rs b/libc-test/build.rs index fb779daecc123..dfa6185195dbc 100644 --- a/libc-test/build.rs +++ b/libc-test/build.rs @@ -4834,6 +4834,7 @@ fn test_haiku(target: &str) { "libutil.h", "link.h", "pty.h", + "stdlib.h", "stringlist.h", "sys/link_elf.h", } diff --git a/libc-test/semver/apple.txt b/libc-test/semver/apple.txt index 69166efd65e81..11f26658c2a47 100644 --- a/libc-test/semver/apple.txt +++ b/libc-test/semver/apple.txt @@ -455,6 +455,7 @@ F_SPECULATIVE_READ F_TEST F_THAW_FS F_TLOCK +F_TRANSFEREXTENTS F_TRIM_ACTIVE_FILE F_ULOCK F_UNLCK diff --git a/libc-test/semver/linux-musl.txt b/libc-test/semver/linux-musl.txt index e873cb21d0491..b775cec7182d9 100644 --- a/libc-test/semver/linux-musl.txt +++ b/libc-test/semver/linux-musl.txt @@ -80,6 +80,8 @@ getloadavg lio_listio ntptimeval open_wmemstream +posix_spawn_file_actions_addchdir_np +posix_spawn_file_actions_addfchdir_np preadv2 preadv64 prlimit diff --git a/src/unix/bsd/apple/mod.rs b/src/unix/bsd/apple/mod.rs index c204f1db507fe..804bd89b5c4e8 100644 --- a/src/unix/bsd/apple/mod.rs +++ b/src/unix/bsd/apple/mod.rs @@ -3618,6 +3618,7 @@ pub const F_PUNCHHOLE: ::c_int = 99; pub const F_TRIM_ACTIVE_FILE: ::c_int = 100; pub const F_SPECULATIVE_READ: ::c_int = 101; pub const F_GETPATH_NOFIRMLINK: ::c_int = 102; +pub const F_TRANSFEREXTENTS: ::c_int = 110; pub const F_ALLOCATECONTIG: ::c_uint = 0x02; pub const F_ALLOCATEALL: ::c_uint = 0x04; diff --git a/src/unix/haiku/mod.rs b/src/unix/haiku/mod.rs index 4dc931cd047d9..3a226e6696405 100644 --- a/src/unix/haiku/mod.rs +++ b/src/unix/haiku/mod.rs @@ -2133,6 +2133,10 @@ extern "C" { >, data: *mut ::c_void, ) -> ::c_int; + + pub fn arc4random() -> u32; + pub fn arc4random_uniform(upper_bound: u32) -> u32; + pub fn arc4random_buf(buf: *mut ::c_void, n: ::size_t); } #[link(name = "gnu")] diff --git a/src/unix/linux_like/linux/musl/mod.rs b/src/unix/linux_like/linux/musl/mod.rs index 72bd335360b8e..14e1e6d3bfd0f 100644 --- a/src/unix/linux_like/linux/musl/mod.rs +++ b/src/unix/linux_like/linux/musl/mod.rs @@ -983,6 +983,17 @@ extern "C" { pub fn dirname(path: *mut ::c_char) -> *mut ::c_char; pub fn basename(path: *mut ::c_char) -> *mut ::c_char; + + // Added in `musl` 1.1.24 + pub fn posix_spawn_file_actions_addchdir_np( + actions: *mut ::posix_spawn_file_actions_t, + path: *const ::c_char, + ) -> ::c_int; + // Added in `musl` 1.1.24 + pub fn posix_spawn_file_actions_addfchdir_np( + actions: *mut ::posix_spawn_file_actions_t, + fd: ::c_int, + ) -> ::c_int; } // Alias to 64 to mimic glibc's LFS64 support diff --git a/src/unix/newlib/rtems/mod.rs b/src/unix/newlib/rtems/mod.rs index 36f4820c92f4f..031754950e6c1 100644 --- a/src/unix/newlib/rtems/mod.rs +++ b/src/unix/newlib/rtems/mod.rs @@ -137,5 +137,7 @@ extern "C" { clock_id: ::clockid_t, ) -> ::c_int; + pub fn getentropy(buf: *mut ::c_void, buflen: ::size_t) -> ::c_int; + pub fn setgroups(ngroups: ::c_int, grouplist: *const ::gid_t) -> ::c_int; }