diff options
-rw-r--r-- | .cirrus.yml | 2 | ||||
-rw-r--r-- | libc-test/semver/linux.txt | 1 | ||||
-rw-r--r-- | libc-test/semver/redox.txt | 1 | ||||
-rw-r--r-- | src/unix/linux_like/android/mod.rs | 18 | ||||
-rw-r--r-- | src/unix/linux_like/linux/arch/generic/mod.rs | 11 | ||||
-rw-r--r-- | src/unix/linux_like/linux/gnu/b32/arm/mod.rs | 1 | ||||
-rw-r--r-- | src/unix/linux_like/mod.rs | 8 | ||||
-rw-r--r-- | src/unix/redox/mod.rs | 1 | ||||
-rw-r--r-- | src/unix/solarish/mod.rs | 2 |
9 files changed, 43 insertions, 2 deletions
diff --git a/.cirrus.yml b/.cirrus.yml index f262e22339..d9fc3c90a8 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -29,7 +29,7 @@ task: task: name: nightly x86_64-unknown-freebsd-14 freebsd_instance: - image_family: freebsd-14-0-snap + image: freebsd-14-0-current-amd64-v20230330 setup_script: - pkg install -y libnghttp2 curl - curl https://sh.rustup.rs -sSf --output rustup.sh diff --git a/libc-test/semver/linux.txt b/libc-test/semver/linux.txt index 178f76d946..27bd9accc2 100644 --- a/libc-test/semver/linux.txt +++ b/libc-test/semver/linux.txt @@ -2025,6 +2025,7 @@ RESOLVE_IN_ROOT RESOLVE_NO_MAGICLINKS RESOLVE_NO_SYMLINKS RESOLVE_NO_XDEV +RLIM64_INFINITY RLIMIT_AS RLIMIT_CORE RLIMIT_CPU diff --git a/libc-test/semver/redox.txt b/libc-test/semver/redox.txt index c8f5d400c5..4b6e126ea6 100644 --- a/libc-test/semver/redox.txt +++ b/libc-test/semver/redox.txt @@ -194,6 +194,7 @@ getrlimit getrusage getservbyport getservent +getdtablesize killpg lockf madvise diff --git a/src/unix/linux_like/android/mod.rs b/src/unix/linux_like/android/mod.rs index e2fa0826f2..fd4b0593b4 100644 --- a/src/unix/linux_like/android/mod.rs +++ b/src/unix/linux_like/android/mod.rs @@ -1579,6 +1579,23 @@ pub const FIONREAD: ::c_int = 0x541B; pub const TIOCCONS: ::c_int = 0x541D; pub const TIOCSBRK: ::c_int = 0x5427; pub const TIOCCBRK: ::c_int = 0x5428; +cfg_if! { + if #[cfg(any(target_arch = "x86", + target_arch = "x86_64", + target_arch = "arm", + target_arch = "aarch64", + target_arch = "riscv64", + target_arch = "s390x"))] { + pub const FICLONE: ::c_int = 0x40049409; + pub const FICLONERANGE: ::c_int = 0x4020940D; + } else if #[cfg(any(target_arch = "mips", + target_arch = "mips64", + target_arch = "powerpc", + target_arch = "powerpc64"))] { + pub const FICLONE: ::c_int = 0x80049409; + pub const FICLONERANGE: ::c_int = 0x8020940D; + } +} pub const ST_RDONLY: ::c_ulong = 1; pub const ST_NOSUID: ::c_ulong = 2; @@ -3531,6 +3548,7 @@ extern "C" { longindex: *mut ::c_int, ) -> ::c_int; + pub fn sync(); pub fn syncfs(fd: ::c_int) -> ::c_int; } diff --git a/src/unix/linux_like/linux/arch/generic/mod.rs b/src/unix/linux_like/linux/arch/generic/mod.rs index cffe748de9..4693978311 100644 --- a/src/unix/linux_like/linux/arch/generic/mod.rs +++ b/src/unix/linux_like/linux/arch/generic/mod.rs @@ -108,9 +108,18 @@ cfg_if! { cfg_if! { if #[cfg(any(target_arch = "x86", target_arch = "x86_64", - target_arch = "aarch64"))] { + target_arch = "arm", + target_arch = "aarch64", + target_arch = "riscv64", + target_arch = "s390x"))] { pub const FICLONE: ::c_ulong = 0x40049409; pub const FICLONERANGE: ::c_ulong = 0x4020940D; + } else if #[cfg(any(target_arch = "mips", + target_arch = "mips64", + target_arch = "powerpc", + target_arch = "powerpc64"))] { + pub const FICLONE: ::c_ulong = 0x80049409; + pub const FICLONERANGE: ::c_ulong = 0x8020940D; } } // pub const SO_PREFER_BUSY_POLL: ::c_int = 69; diff --git a/src/unix/linux_like/linux/gnu/b32/arm/mod.rs b/src/unix/linux_like/linux/gnu/b32/arm/mod.rs index ea905eb7ca..fd690a17e1 100644 --- a/src/unix/linux_like/linux/gnu/b32/arm/mod.rs +++ b/src/unix/linux_like/linux/gnu/b32/arm/mod.rs @@ -837,6 +837,7 @@ pub const SYS_pkey_alloc: ::c_long = 395; pub const SYS_pkey_free: ::c_long = 396; pub const SYS_statx: ::c_long = 397; pub const SYS_rseq: ::c_long = 398; +pub const SYS_kexec_file_load: ::c_long = 401; pub const SYS_pidfd_send_signal: ::c_long = 424; pub const SYS_io_uring_setup: ::c_long = 425; pub const SYS_io_uring_enter: ::c_long = 426; diff --git a/src/unix/linux_like/mod.rs b/src/unix/linux_like/mod.rs index db57745967..584e308ce2 100644 --- a/src/unix/linux_like/mod.rs +++ b/src/unix/linux_like/mod.rs @@ -557,6 +557,14 @@ pub const XATTR_CREATE: ::c_int = 0x1; pub const XATTR_REPLACE: ::c_int = 0x2; cfg_if! { + if #[cfg(target_os = "android")] { + pub const RLIM64_INFINITY: ::c_ulonglong = !0; + } else { + pub const RLIM64_INFINITY: ::rlim64_t = !0; + } +} + +cfg_if! { if #[cfg(target_env = "ohos")] { pub const LC_CTYPE: ::c_int = 0; pub const LC_NUMERIC: ::c_int = 1; diff --git a/src/unix/redox/mod.rs b/src/unix/redox/mod.rs index 6661ea7358..dec47c610b 100644 --- a/src/unix/redox/mod.rs +++ b/src/unix/redox/mod.rs @@ -993,6 +993,7 @@ extern "C" { // unistd.h pub fn pipe2(fds: *mut ::c_int, flags: ::c_int) -> ::c_int; + pub fn getdtablesize() -> ::c_int; // malloc.h pub fn memalign(align: ::size_t, size: ::size_t) -> *mut ::c_void; diff --git a/src/unix/solarish/mod.rs b/src/unix/solarish/mod.rs index 88f9cab9d6..12c88f31a1 100644 --- a/src/unix/solarish/mod.rs +++ b/src/unix/solarish/mod.rs @@ -3196,6 +3196,8 @@ extern "C" { longopts: *const option, longindex: *mut ::c_int, ) -> ::c_int; + + pub fn sync(); } #[link(name = "sendfile")] |