mirror of
https://git.freebsd.org/ports.git
synced 2025-04-28 09:36:41 -04:00
Announce: https://blog.rust-lang.org/2024/10/17/Rust-1.82.0.html ChangeLog: https://github.com/rust-lang/rust/releases/tag/1.82.0 PR: 282516 Tested by: mikael,pkubaj
745 lines
24 KiB
Text
745 lines
24 KiB
Text
https://github.com/rust-lang/rust/issues/130677
|
|
|
|
From 9049542fabce9eea669d1fe3d4d973931c9d7d23 Mon Sep 17 00:00:00 2001
|
|
From: Alan Somers <asomers@gmail.com>
|
|
Date: Mon, 23 Sep 2024 10:22:32 -0600
|
|
Subject: [PATCH] Fix the definition of ino_t on 32-bit FreeBSD 12+
|
|
|
|
Commit 7437d0a6f1 erroneously defined it as "ulong" instead of u64.
|
|
Nobody noticed the mistake, probably because it was only tested on
|
|
64-bit architectures, where those are equivalent. But it's a problem
|
|
now, after #3723 , which switched the standard library to a FreeBSD 12
|
|
ABI.
|
|
|
|
Issue https://github.com/rust-lang/rust/issues/130677
|
|
---
|
|
src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs | 2 +-
|
|
src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs | 2 +-
|
|
src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs | 2 +-
|
|
src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs | 2 +-
|
|
src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs | 2 +-
|
|
5 files changed, 5 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs
|
|
index de34069eabdf2..68a8364194607 100644
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs
|
|
+++ vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs
|
|
@@ -4,7 +4,7 @@
|
|
pub type nlink_t = u16;
|
|
// Type of `dev_t` changed from `u32` to `u64` in FreeBSD 12:
|
|
pub type dev_t = u32;
|
|
-// Type of `ino_t` changed from `unsigned int` to `unsigned long` in FreeBSD 12:
|
|
+// Type of `ino_t` changed from `__uint32_t` to `__uint64_t` in FreeBSD 12:
|
|
pub type ino_t = u32;
|
|
|
|
s! {
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
|
|
index 10fcaa03a4ef6..197400ffb4e28 100644
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
|
|
+++ vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
|
|
@@ -2,7 +2,7 @@
|
|
|
|
pub type nlink_t = u64;
|
|
pub type dev_t = u64;
|
|
-pub type ino_t = ::c_ulong;
|
|
+pub type ino_t = u64;
|
|
pub type shmatt_t = ::c_uint;
|
|
|
|
s! {
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs
|
|
index ec6bce2a03091..d3a77d03c48d0 100644
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs
|
|
+++ vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs
|
|
@@ -2,7 +2,7 @@
|
|
|
|
pub type nlink_t = u64;
|
|
pub type dev_t = u64;
|
|
-pub type ino_t = ::c_ulong;
|
|
+pub type ino_t = u64;
|
|
pub type shmatt_t = ::c_uint;
|
|
pub type kpaddr_t = u64;
|
|
pub type kssize_t = i64;
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs
|
|
index 160a4baae481b..9d65317d29cb4 100644
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs
|
|
+++ vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs
|
|
@@ -2,7 +2,7 @@
|
|
|
|
pub type nlink_t = u64;
|
|
pub type dev_t = u64;
|
|
-pub type ino_t = ::c_ulong;
|
|
+pub type ino_t = u64;
|
|
pub type shmatt_t = ::c_uint;
|
|
pub type kpaddr_t = u64;
|
|
pub type kssize_t = i64;
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs
|
|
index d73215a68ec33..f76208400f324 100644
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs
|
|
+++ vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs
|
|
@@ -2,7 +2,7 @@
|
|
|
|
pub type nlink_t = u64;
|
|
pub type dev_t = u64;
|
|
-pub type ino_t = ::c_ulong;
|
|
+pub type ino_t = u64;
|
|
pub type shmatt_t = ::c_uint;
|
|
pub type kpaddr_t = u64;
|
|
pub type kssize_t = i64;
|
|
|
|
|
|
From 8aca9c0126f3aa5a7dce1ad7fc016b4a0d6af70a Mon Sep 17 00:00:00 2001
|
|
From: Alan Somers <asomers@gmail.com>
|
|
Date: Mon, 23 Sep 2024 10:44:13 -0600
|
|
Subject: [PATCH] Fix the definition of "struct stat" on 32-bit FreeBSD 12+
|
|
|
|
The original definitions were never correct. But nobody noticed because
|
|
we don't do CI on 32-bit FreeBSD. The problem is apparent now due to
|
|
#3723 , which caused the nightly toolchain to switch to a FreeBSD 12
|
|
ABI.
|
|
|
|
Fixes https://github.com/rust-lang/rust/issues/130677
|
|
---
|
|
.../{freebsd12/b64.rs => freebsd11/b32.rs} | 13 +++---
|
|
.../bsd/freebsdlike/freebsd/freebsd11/mod.rs | 7 +--
|
|
.../bsd/freebsdlike/freebsd/freebsd12/mod.rs | 43 +++++++++++++++----
|
|
.../bsd/freebsdlike/freebsd/freebsd13/b64.rs | 34 ---------------
|
|
.../bsd/freebsdlike/freebsd/freebsd13/mod.rs | 43 +++++++++++++++----
|
|
.../bsd/freebsdlike/freebsd/freebsd14/b64.rs | 34 ---------------
|
|
.../bsd/freebsdlike/freebsd/freebsd14/mod.rs | 43 +++++++++++++++----
|
|
.../bsd/freebsdlike/freebsd/freebsd15/b64.rs | 34 ---------------
|
|
.../bsd/freebsdlike/freebsd/freebsd15/mod.rs | 43 +++++++++++++++----
|
|
src/unix/bsd/freebsdlike/freebsd/x86.rs | 25 -----------
|
|
10 files changed, 146 insertions(+), 173 deletions(-)
|
|
rename src/unix/bsd/freebsdlike/freebsd/{freebsd12/b64.rs => freebsd11/b32.rs} (89%)
|
|
delete mode 100644 src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs
|
|
delete mode 100644 src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs
|
|
delete mode 100644 src/unix/bsd/freebsdlike/freebsd/freebsd15/b64.rs
|
|
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd12/b64.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs
|
|
similarity index 89%
|
|
rename from src/unix/bsd/freebsdlike/freebsd/freebsd12/b64.rs
|
|
rename to src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs
|
|
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs.orig 2024-10-24 17:21:07.154172000 +0200
|
|
+++ vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs 2024-10-24 17:21:02.029962000 +0200
|
|
@@ -0,0 +1,34 @@
|
|
+#[repr(C)]
|
|
+#[cfg_attr(feature = "extra_traits", derive(Debug, Eq, Hash, PartialEq))]
|
|
+pub struct stat {
|
|
+ pub st_dev: ::dev_t,
|
|
+ pub st_ino: ::ino_t,
|
|
+ pub st_nlink: ::nlink_t,
|
|
+ pub st_mode: ::mode_t,
|
|
+ st_padding0: i16,
|
|
+ pub st_uid: ::uid_t,
|
|
+ pub st_gid: ::gid_t,
|
|
+ st_padding1: i32,
|
|
+ pub st_rdev: ::dev_t,
|
|
+ pub st_atime: ::time_t,
|
|
+ pub st_atime_nsec: ::c_long,
|
|
+ pub st_mtime: ::time_t,
|
|
+ pub st_mtime_nsec: ::c_long,
|
|
+ pub st_ctime: ::time_t,
|
|
+ pub st_ctime_nsec: ::c_long,
|
|
+ pub st_birthtime: ::time_t,
|
|
+ pub st_birthtime_nsec: ::c_long,
|
|
+ pub st_size: ::off_t,
|
|
+ pub st_blocks: ::blkcnt_t,
|
|
+ pub st_blksize: ::blksize_t,
|
|
+ pub st_flags: ::fflags_t,
|
|
+ pub st_gen: u64,
|
|
+ pub st_spare: [u64; 10],
|
|
+}
|
|
+
|
|
+impl ::Copy for ::stat {}
|
|
+impl ::Clone for ::stat {
|
|
+ fn clone(&self) -> ::stat {
|
|
+ *self
|
|
+ }
|
|
+}
|
|
|
|
|
|
index 80c6fa1684530..5c1156581fd61 100644
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd12/b64.rs
|
|
+++ vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs
|
|
@@ -3,12 +3,10 @@
|
|
pub struct stat {
|
|
pub st_dev: ::dev_t,
|
|
pub st_ino: ::ino_t,
|
|
- pub st_nlink: ::nlink_t,
|
|
pub st_mode: ::mode_t,
|
|
- st_padding0: i16,
|
|
+ pub st_nlink: ::nlink_t,
|
|
pub st_uid: ::uid_t,
|
|
pub st_gid: ::gid_t,
|
|
- st_padding1: i32,
|
|
pub st_rdev: ::dev_t,
|
|
pub st_atime: ::time_t,
|
|
pub st_atime_nsec: ::c_long,
|
|
@@ -16,14 +14,15 @@ pub struct stat {
|
|
pub st_mtime_nsec: ::c_long,
|
|
pub st_ctime: ::time_t,
|
|
pub st_ctime_nsec: ::c_long,
|
|
- pub st_birthtime: ::time_t,
|
|
- pub st_birthtime_nsec: ::c_long,
|
|
pub st_size: ::off_t,
|
|
pub st_blocks: ::blkcnt_t,
|
|
pub st_blksize: ::blksize_t,
|
|
pub st_flags: ::fflags_t,
|
|
- pub st_gen: u64,
|
|
- pub st_spare: [u64; 10],
|
|
+ pub st_gen: u32,
|
|
+ pub st_lspare: i32,
|
|
+ pub st_birthtime: ::time_t,
|
|
+ pub st_birthtime_nsec: ::c_long,
|
|
+ __unused: [u8; 8],
|
|
}
|
|
|
|
impl ::Copy for ::stat {}
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs
|
|
index 68a8364194607..e416ebf745841 100644
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs
|
|
+++ vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs
|
|
@@ -479,10 +479,11 @@ extern "C" {
|
|
}
|
|
|
|
cfg_if! {
|
|
- if #[cfg(any(target_arch = "x86_64",
|
|
- target_arch = "aarch64",
|
|
- target_arch = "riscv64"))] {
|
|
+ if #[cfg(target_pointer_width = "64")] {
|
|
mod b64;
|
|
pub use self::b64::*;
|
|
+ } else {
|
|
+ mod b32;
|
|
+ pub use self::b32::*;
|
|
}
|
|
}
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
|
|
index 197400ffb4e28..c4431a6458e8f 100644
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
|
|
+++ vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
|
|
@@ -218,6 +218,40 @@ s! {
|
|
/// kthread flag.
|
|
pub ki_tdflags: ::c_long,
|
|
}
|
|
+
|
|
+ pub struct stat {
|
|
+ pub st_dev: ::dev_t,
|
|
+ pub st_ino: ::ino_t,
|
|
+ pub st_nlink: ::nlink_t,
|
|
+ pub st_mode: ::mode_t,
|
|
+ st_padding0: i16,
|
|
+ pub st_uid: ::uid_t,
|
|
+ pub st_gid: ::gid_t,
|
|
+ st_padding1: i32,
|
|
+ pub st_rdev: ::dev_t,
|
|
+ #[cfg(target_arch = "x86")]
|
|
+ st_atim_ext: i32,
|
|
+ pub st_atime: ::time_t,
|
|
+ pub st_atime_nsec: ::c_long,
|
|
+ #[cfg(target_arch = "x86")]
|
|
+ st_mtim_ext: i32,
|
|
+ pub st_mtime: ::time_t,
|
|
+ pub st_mtime_nsec: ::c_long,
|
|
+ #[cfg(target_arch = "x86")]
|
|
+ st_ctim_ext: i32,
|
|
+ pub st_ctime: ::time_t,
|
|
+ pub st_ctime_nsec: ::c_long,
|
|
+ #[cfg(target_arch = "x86")]
|
|
+ st_btim_ext: i32,
|
|
+ pub st_birthtime: ::time_t,
|
|
+ pub st_birthtime_nsec: ::c_long,
|
|
+ pub st_size: ::off_t,
|
|
+ pub st_blocks: ::blkcnt_t,
|
|
+ pub st_blksize: ::blksize_t,
|
|
+ pub st_flags: ::fflags_t,
|
|
+ pub st_gen: u64,
|
|
+ pub st_spare: [u64; 10],
|
|
+ }
|
|
}
|
|
|
|
s_no_extra_traits! {
|
|
@@ -488,15 +522,6 @@ extern "C" {
|
|
pub fn basename(path: *mut ::c_char) -> *mut ::c_char;
|
|
}
|
|
|
|
-cfg_if! {
|
|
- if #[cfg(any(target_arch = "x86_64",
|
|
- target_arch = "aarch64",
|
|
- target_arch = "riscv64"))] {
|
|
- mod b64;
|
|
- pub use self::b64::*;
|
|
- }
|
|
-}
|
|
-
|
|
cfg_if! {
|
|
if #[cfg(target_arch = "x86_64")] {
|
|
mod x86_64;
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs
|
|
deleted file mode 100644
|
|
index 80c6fa1684530..0000000000000
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs
|
|
+++ /dev/null
|
|
@@ -1,34 +0,0 @@
|
|
-#[repr(C)]
|
|
-#[cfg_attr(feature = "extra_traits", derive(Debug, Eq, Hash, PartialEq))]
|
|
-pub struct stat {
|
|
- pub st_dev: ::dev_t,
|
|
- pub st_ino: ::ino_t,
|
|
- pub st_nlink: ::nlink_t,
|
|
- pub st_mode: ::mode_t,
|
|
- st_padding0: i16,
|
|
- pub st_uid: ::uid_t,
|
|
- pub st_gid: ::gid_t,
|
|
- st_padding1: i32,
|
|
- pub st_rdev: ::dev_t,
|
|
- pub st_atime: ::time_t,
|
|
- pub st_atime_nsec: ::c_long,
|
|
- pub st_mtime: ::time_t,
|
|
- pub st_mtime_nsec: ::c_long,
|
|
- pub st_ctime: ::time_t,
|
|
- pub st_ctime_nsec: ::c_long,
|
|
- pub st_birthtime: ::time_t,
|
|
- pub st_birthtime_nsec: ::c_long,
|
|
- pub st_size: ::off_t,
|
|
- pub st_blocks: ::blkcnt_t,
|
|
- pub st_blksize: ::blksize_t,
|
|
- pub st_flags: ::fflags_t,
|
|
- pub st_gen: u64,
|
|
- pub st_spare: [u64; 10],
|
|
-}
|
|
-
|
|
-impl ::Copy for ::stat {}
|
|
-impl ::Clone for ::stat {
|
|
- fn clone(&self) -> ::stat {
|
|
- *self
|
|
- }
|
|
-}
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs
|
|
index d3a77d03c48d0..118404e8b089b 100644
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs
|
|
+++ vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs
|
|
@@ -228,6 +228,40 @@ s! {
|
|
/// kthread flag.
|
|
pub ki_tdflags: ::c_long,
|
|
}
|
|
+
|
|
+ pub struct stat {
|
|
+ pub st_dev: ::dev_t,
|
|
+ pub st_ino: ::ino_t,
|
|
+ pub st_nlink: ::nlink_t,
|
|
+ pub st_mode: ::mode_t,
|
|
+ st_padding0: i16,
|
|
+ pub st_uid: ::uid_t,
|
|
+ pub st_gid: ::gid_t,
|
|
+ st_padding1: i32,
|
|
+ pub st_rdev: ::dev_t,
|
|
+ #[cfg(target_arch = "x86")]
|
|
+ st_atim_ext: i32,
|
|
+ pub st_atime: ::time_t,
|
|
+ pub st_atime_nsec: ::c_long,
|
|
+ #[cfg(target_arch = "x86")]
|
|
+ st_mtim_ext: i32,
|
|
+ pub st_mtime: ::time_t,
|
|
+ pub st_mtime_nsec: ::c_long,
|
|
+ #[cfg(target_arch = "x86")]
|
|
+ st_ctim_ext: i32,
|
|
+ pub st_ctime: ::time_t,
|
|
+ pub st_ctime_nsec: ::c_long,
|
|
+ #[cfg(target_arch = "x86")]
|
|
+ st_btim_ext: i32,
|
|
+ pub st_birthtime: ::time_t,
|
|
+ pub st_birthtime_nsec: ::c_long,
|
|
+ pub st_size: ::off_t,
|
|
+ pub st_blocks: ::blkcnt_t,
|
|
+ pub st_blksize: ::blksize_t,
|
|
+ pub st_flags: ::fflags_t,
|
|
+ pub st_gen: u64,
|
|
+ pub st_spare: [u64; 10],
|
|
+ }
|
|
}
|
|
|
|
s_no_extra_traits! {
|
|
@@ -529,15 +563,6 @@ extern "C" {
|
|
pub fn kvm_kerndisp(kd: *mut ::kvm_t) -> ::kssize_t;
|
|
}
|
|
|
|
-cfg_if! {
|
|
- if #[cfg(any(target_arch = "x86_64",
|
|
- target_arch = "aarch64",
|
|
- target_arch = "riscv64"))] {
|
|
- mod b64;
|
|
- pub use self::b64::*;
|
|
- }
|
|
-}
|
|
-
|
|
cfg_if! {
|
|
if #[cfg(target_arch = "x86_64")] {
|
|
mod x86_64;
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs
|
|
deleted file mode 100644
|
|
index 80c6fa1684530..0000000000000
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs
|
|
+++ /dev/null
|
|
@@ -1,34 +0,0 @@
|
|
-#[repr(C)]
|
|
-#[cfg_attr(feature = "extra_traits", derive(Debug, Eq, Hash, PartialEq))]
|
|
-pub struct stat {
|
|
- pub st_dev: ::dev_t,
|
|
- pub st_ino: ::ino_t,
|
|
- pub st_nlink: ::nlink_t,
|
|
- pub st_mode: ::mode_t,
|
|
- st_padding0: i16,
|
|
- pub st_uid: ::uid_t,
|
|
- pub st_gid: ::gid_t,
|
|
- st_padding1: i32,
|
|
- pub st_rdev: ::dev_t,
|
|
- pub st_atime: ::time_t,
|
|
- pub st_atime_nsec: ::c_long,
|
|
- pub st_mtime: ::time_t,
|
|
- pub st_mtime_nsec: ::c_long,
|
|
- pub st_ctime: ::time_t,
|
|
- pub st_ctime_nsec: ::c_long,
|
|
- pub st_birthtime: ::time_t,
|
|
- pub st_birthtime_nsec: ::c_long,
|
|
- pub st_size: ::off_t,
|
|
- pub st_blocks: ::blkcnt_t,
|
|
- pub st_blksize: ::blksize_t,
|
|
- pub st_flags: ::fflags_t,
|
|
- pub st_gen: u64,
|
|
- pub st_spare: [u64; 10],
|
|
-}
|
|
-
|
|
-impl ::Copy for ::stat {}
|
|
-impl ::Clone for ::stat {
|
|
- fn clone(&self) -> ::stat {
|
|
- *self
|
|
- }
|
|
-}
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs
|
|
index 9d65317d29cb4..e624dd7201b0a 100644
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs
|
|
+++ vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs
|
|
@@ -228,6 +228,40 @@ s! {
|
|
/// kthread flag.
|
|
pub ki_tdflags: ::c_long,
|
|
}
|
|
+
|
|
+ pub struct stat {
|
|
+ pub st_dev: ::dev_t,
|
|
+ pub st_ino: ::ino_t,
|
|
+ pub st_nlink: ::nlink_t,
|
|
+ pub st_mode: ::mode_t,
|
|
+ st_padding0: i16,
|
|
+ pub st_uid: ::uid_t,
|
|
+ pub st_gid: ::gid_t,
|
|
+ st_padding1: i32,
|
|
+ pub st_rdev: ::dev_t,
|
|
+ #[cfg(target_arch = "x86")]
|
|
+ st_atim_ext: i32,
|
|
+ pub st_atime: ::time_t,
|
|
+ pub st_atime_nsec: ::c_long,
|
|
+ #[cfg(target_arch = "x86")]
|
|
+ st_mtim_ext: i32,
|
|
+ pub st_mtime: ::time_t,
|
|
+ pub st_mtime_nsec: ::c_long,
|
|
+ #[cfg(target_arch = "x86")]
|
|
+ st_ctim_ext: i32,
|
|
+ pub st_ctime: ::time_t,
|
|
+ pub st_ctime_nsec: ::c_long,
|
|
+ #[cfg(target_arch = "x86")]
|
|
+ st_btim_ext: i32,
|
|
+ pub st_birthtime: ::time_t,
|
|
+ pub st_birthtime_nsec: ::c_long,
|
|
+ pub st_size: ::off_t,
|
|
+ pub st_blocks: ::blkcnt_t,
|
|
+ pub st_blksize: ::blksize_t,
|
|
+ pub st_flags: ::fflags_t,
|
|
+ pub st_gen: u64,
|
|
+ pub st_spare: [u64; 10],
|
|
+ }
|
|
}
|
|
|
|
s_no_extra_traits! {
|
|
@@ -529,15 +563,6 @@ extern "C" {
|
|
pub fn kvm_kerndisp(kd: *mut ::kvm_t) -> ::kssize_t;
|
|
}
|
|
|
|
-cfg_if! {
|
|
- if #[cfg(any(target_arch = "x86_64",
|
|
- target_arch = "aarch64",
|
|
- target_arch = "riscv64"))] {
|
|
- mod b64;
|
|
- pub use self::b64::*;
|
|
- }
|
|
-}
|
|
-
|
|
cfg_if! {
|
|
if #[cfg(target_arch = "x86_64")] {
|
|
mod x86_64;
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd15/b64.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd15/b64.rs
|
|
deleted file mode 100644
|
|
index 80c6fa1684530..0000000000000
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd15/b64.rs
|
|
+++ /dev/null
|
|
@@ -1,34 +0,0 @@
|
|
-#[repr(C)]
|
|
-#[cfg_attr(feature = "extra_traits", derive(Debug, Eq, Hash, PartialEq))]
|
|
-pub struct stat {
|
|
- pub st_dev: ::dev_t,
|
|
- pub st_ino: ::ino_t,
|
|
- pub st_nlink: ::nlink_t,
|
|
- pub st_mode: ::mode_t,
|
|
- st_padding0: i16,
|
|
- pub st_uid: ::uid_t,
|
|
- pub st_gid: ::gid_t,
|
|
- st_padding1: i32,
|
|
- pub st_rdev: ::dev_t,
|
|
- pub st_atime: ::time_t,
|
|
- pub st_atime_nsec: ::c_long,
|
|
- pub st_mtime: ::time_t,
|
|
- pub st_mtime_nsec: ::c_long,
|
|
- pub st_ctime: ::time_t,
|
|
- pub st_ctime_nsec: ::c_long,
|
|
- pub st_birthtime: ::time_t,
|
|
- pub st_birthtime_nsec: ::c_long,
|
|
- pub st_size: ::off_t,
|
|
- pub st_blocks: ::blkcnt_t,
|
|
- pub st_blksize: ::blksize_t,
|
|
- pub st_flags: ::fflags_t,
|
|
- pub st_gen: u64,
|
|
- pub st_spare: [u64; 10],
|
|
-}
|
|
-
|
|
-impl ::Copy for ::stat {}
|
|
-impl ::Clone for ::stat {
|
|
- fn clone(&self) -> ::stat {
|
|
- *self
|
|
- }
|
|
-}
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs
|
|
index f76208400f324..a299af7d5d53e 100644
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs
|
|
+++ vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs
|
|
@@ -228,6 +228,40 @@ s! {
|
|
/// kthread flag.
|
|
pub ki_tdflags: ::c_long,
|
|
}
|
|
+
|
|
+ pub struct stat {
|
|
+ pub st_dev: ::dev_t,
|
|
+ pub st_ino: ::ino_t,
|
|
+ pub st_nlink: ::nlink_t,
|
|
+ pub st_mode: ::mode_t,
|
|
+ st_padding0: i16,
|
|
+ pub st_uid: ::uid_t,
|
|
+ pub st_gid: ::gid_t,
|
|
+ st_padding1: i32,
|
|
+ pub st_rdev: ::dev_t,
|
|
+ #[cfg(target_arch = "x86")]
|
|
+ st_atim_ext: i32,
|
|
+ pub st_atime: ::time_t,
|
|
+ pub st_atime_nsec: ::c_long,
|
|
+ #[cfg(target_arch = "x86")]
|
|
+ st_mtim_ext: i32,
|
|
+ pub st_mtime: ::time_t,
|
|
+ pub st_mtime_nsec: ::c_long,
|
|
+ #[cfg(target_arch = "x86")]
|
|
+ st_ctim_ext: i32,
|
|
+ pub st_ctime: ::time_t,
|
|
+ pub st_ctime_nsec: ::c_long,
|
|
+ #[cfg(target_arch = "x86")]
|
|
+ st_btim_ext: i32,
|
|
+ pub st_birthtime: ::time_t,
|
|
+ pub st_birthtime_nsec: ::c_long,
|
|
+ pub st_size: ::off_t,
|
|
+ pub st_blocks: ::blkcnt_t,
|
|
+ pub st_blksize: ::blksize_t,
|
|
+ pub st_flags: ::fflags_t,
|
|
+ pub st_gen: u64,
|
|
+ pub st_spare: [u64; 10],
|
|
+ }
|
|
}
|
|
|
|
s_no_extra_traits! {
|
|
@@ -529,15 +563,6 @@ extern "C" {
|
|
pub fn kvm_kerndisp(kd: *mut ::kvm_t) -> ::kssize_t;
|
|
}
|
|
|
|
-cfg_if! {
|
|
- if #[cfg(any(target_arch = "x86_64",
|
|
- target_arch = "aarch64",
|
|
- target_arch = "riscv64"))] {
|
|
- mod b64;
|
|
- pub use self::b64::*;
|
|
- }
|
|
-}
|
|
-
|
|
cfg_if! {
|
|
if #[cfg(target_arch = "x86_64")] {
|
|
mod x86_64;
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/x86.rs b/src/unix/bsd/freebsdlike/freebsd/x86.rs
|
|
index c3c576ed66681..31a660e7d0a22 100644
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/x86.rs
|
|
+++ vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/x86.rs
|
|
@@ -42,31 +42,6 @@ s_no_extra_traits! {
|
|
}
|
|
|
|
s! {
|
|
- pub struct stat {
|
|
- pub st_dev: ::dev_t,
|
|
- pub st_ino: ::ino_t,
|
|
- pub st_mode: ::mode_t,
|
|
- pub st_nlink: ::nlink_t,
|
|
- pub st_uid: ::uid_t,
|
|
- pub st_gid: ::gid_t,
|
|
- pub st_rdev: ::dev_t,
|
|
- pub st_atime: ::time_t,
|
|
- pub st_atime_nsec: ::c_long,
|
|
- pub st_mtime: ::time_t,
|
|
- pub st_mtime_nsec: ::c_long,
|
|
- pub st_ctime: ::time_t,
|
|
- pub st_ctime_nsec: ::c_long,
|
|
- pub st_size: ::off_t,
|
|
- pub st_blocks: ::blkcnt_t,
|
|
- pub st_blksize: ::blksize_t,
|
|
- pub st_flags: ::fflags_t,
|
|
- pub st_gen: u32,
|
|
- pub st_lspare: i32,
|
|
- pub st_birthtime: ::time_t,
|
|
- pub st_birthtime_nsec: ::c_long,
|
|
- __unused: [u8; 8],
|
|
- }
|
|
-
|
|
pub struct ucontext_t {
|
|
pub uc_sigmask: ::sigset_t,
|
|
pub uc_mcontext: ::mcontext_t,
|
|
|
|
|
|
From f381e010b2439579c9f548ef86fb06409c2c55d2 Mon Sep 17 00:00:00 2001
|
|
From: Alan Somers <asomers@gmail.com>
|
|
Date: Mon, 23 Sep 2024 16:03:48 -0600
|
|
Subject: [PATCH] fixup: fix build on powerpc, powerpc64, and arm
|
|
|
|
---
|
|
src/unix/bsd/freebsdlike/freebsd/arm.rs | 30 -------------------
|
|
src/unix/bsd/freebsdlike/freebsd/powerpc.rs | 26 ----------------
|
|
src/unix/bsd/freebsdlike/freebsd/powerpc64.rs | 26 ----------------
|
|
3 files changed, 82 deletions(-)
|
|
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/arm.rs b/src/unix/bsd/freebsdlike/freebsd/arm.rs
|
|
index 300b3dd45ca9d..8ff500c65981c 100644
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/arm.rs
|
|
+++ vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/arm.rs
|
|
@@ -6,36 +6,6 @@ pub type time_t = i64;
|
|
pub type suseconds_t = i32;
|
|
pub type register_t = i32;
|
|
|
|
-s! {
|
|
- pub struct stat {
|
|
- pub st_dev: ::dev_t,
|
|
- pub st_ino: ::ino_t,
|
|
- pub st_mode: ::mode_t,
|
|
- pub st_nlink: ::nlink_t,
|
|
- pub st_uid: ::uid_t,
|
|
- pub st_gid: ::gid_t,
|
|
- pub st_rdev: ::dev_t,
|
|
- pub st_atime: ::time_t,
|
|
- pub st_atime_nsec: ::c_long,
|
|
- pub st_atime_pad: ::c_long,
|
|
- pub st_mtime: ::time_t,
|
|
- pub st_mtime_nsec: ::c_long,
|
|
- pub st_mtime_pad: ::c_long,
|
|
- pub st_ctime: ::time_t,
|
|
- pub st_ctime_nsec: ::c_long,
|
|
- pub st_ctime_pad: ::c_long,
|
|
- pub st_size: ::off_t,
|
|
- pub st_blocks: ::blkcnt_t,
|
|
- pub st_blksize: ::blksize_t,
|
|
- pub st_flags: ::fflags_t,
|
|
- pub st_gen: u32,
|
|
- pub st_lspare: i32,
|
|
- pub st_birthtime: ::time_t,
|
|
- pub st_birthtime_nsec: ::c_long,
|
|
- pub st_birthtime_pad: ::c_long,
|
|
- }
|
|
-}
|
|
-
|
|
// should be pub(crate), but that requires Rust 1.18.0
|
|
cfg_if! {
|
|
if #[cfg(libc_const_size_of)] {
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/powerpc.rs b/src/unix/bsd/freebsdlike/freebsd/powerpc.rs
|
|
index a0120c337e0ad..f84062ba34b93 100644
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/powerpc.rs
|
|
+++ vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/powerpc.rs
|
|
@@ -6,32 +6,6 @@ pub type time_t = i64;
|
|
pub type suseconds_t = i32;
|
|
pub type register_t = i32;
|
|
|
|
-s! {
|
|
- pub struct stat {
|
|
- pub st_dev: ::dev_t,
|
|
- pub st_ino: ::ino_t,
|
|
- pub st_mode: ::mode_t,
|
|
- pub st_nlink: ::nlink_t,
|
|
- pub st_uid: ::uid_t,
|
|
- pub st_gid: ::gid_t,
|
|
- pub st_rdev: ::dev_t,
|
|
- pub st_atime: ::time_t,
|
|
- pub st_atime_nsec: ::c_long,
|
|
- pub st_mtime: ::time_t,
|
|
- pub st_mtime_nsec: ::c_long,
|
|
- pub st_ctime: ::time_t,
|
|
- pub st_ctime_nsec: ::c_long,
|
|
- pub st_size: ::off_t,
|
|
- pub st_blocks: ::blkcnt_t,
|
|
- pub st_blksize: ::blksize_t,
|
|
- pub st_flags: ::fflags_t,
|
|
- pub st_gen: u32,
|
|
- pub st_lspare: i32,
|
|
- pub st_birthtime: ::time_t,
|
|
- pub st_birthtime_nsec: ::c_long,
|
|
- }
|
|
-}
|
|
-
|
|
// should be pub(crate), but that requires Rust 1.18.0
|
|
cfg_if! {
|
|
if #[cfg(libc_const_size_of)] {
|
|
diff --git a/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs b/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs
|
|
index 7f5b9752264e3..69cf4c5fc88c7 100644
|
|
--- vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs
|
|
+++ vendor/libc-0.2.158/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs
|
|
@@ -6,32 +6,6 @@ pub type time_t = i64;
|
|
pub type suseconds_t = i64;
|
|
pub type register_t = i64;
|
|
|
|
-s! {
|
|
- pub struct stat {
|
|
- pub st_dev: ::dev_t,
|
|
- pub st_ino: ::ino_t,
|
|
- pub st_mode: ::mode_t,
|
|
- pub st_nlink: ::nlink_t,
|
|
- pub st_uid: ::uid_t,
|
|
- pub st_gid: ::gid_t,
|
|
- pub st_rdev: ::dev_t,
|
|
- pub st_atime: ::time_t,
|
|
- pub st_atime_nsec: ::c_long,
|
|
- pub st_mtime: ::time_t,
|
|
- pub st_mtime_nsec: ::c_long,
|
|
- pub st_ctime: ::time_t,
|
|
- pub st_ctime_nsec: ::c_long,
|
|
- pub st_size: ::off_t,
|
|
- pub st_blocks: ::blkcnt_t,
|
|
- pub st_blksize: ::blksize_t,
|
|
- pub st_flags: ::fflags_t,
|
|
- pub st_gen: u32,
|
|
- pub st_lspare: i32,
|
|
- pub st_birthtime: ::time_t,
|
|
- pub st_birthtime_nsec: ::c_long,
|
|
- }
|
|
-}
|
|
-
|
|
// should be pub(crate), but that requires Rust 1.18.0
|
|
cfg_if! {
|
|
if #[cfg(libc_const_size_of)] {
|