diff options
author | Piotr Kubaj <pkubaj@FreeBSD.org> | 2021-06-28 19:35:01 +0000 |
---|---|---|
committer | Piotr Kubaj <pkubaj@FreeBSD.org> | 2021-06-28 19:35:01 +0000 |
commit | d5ca695b55b1a19a95e85c2870a25362273fcea9 (patch) | |
tree | f6aa879a13a7c4c924f5e6e119d9faf01dce216b /shells | |
parent | databases/mysql80-server: use libunwind on armv7 now that it works (diff) |
*/*: fix all ports using Rust on powerpc that fail due to libc
This commit backports https://github.com/rust-lang/libc/commit/a66f7c1eb26ad890c8169d8395e3042bcf776f01 to various ports.
It doesn't bring that backport to ports that fail to build anyway.
Diffstat (limited to 'shells')
-rw-r--r-- | shells/ion/files/patch-powerpc | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/shells/ion/files/patch-powerpc b/shells/ion/files/patch-powerpc new file mode 100644 index 000000000000..707fe64ed420 --- /dev/null +++ b/shells/ion/files/patch-powerpc @@ -0,0 +1,62 @@ +--- cargo-crates/libc-0.2.60/src/unix/bsd/freebsdlike/freebsd/mod.rs.orig 2020-03-17 20:35:43 UTC ++++ cargo-crates/libc-0.2.60/src/unix/bsd/freebsdlike/freebsd/mod.rs +@@ -1486,6 +1486,9 @@ cfg_if! { + } else if #[cfg(target_arch = "powerpc64")] { + mod powerpc64; + pub use self::powerpc64::*; ++ } else if #[cfg(target_arch = "powerpc")] { ++ mod powerpc; ++ pub use self::powerpc::*; + } else { + // Unknown target_arch + } +--- cargo-crates/libc-0.2.60/src/unix/bsd/freebsdlike/freebsd/powerpc.rs.orig 2021-06-23 22:40:24 UTC ++++ cargo-crates/libc-0.2.60/src/unix/bsd/freebsdlike/freebsd/powerpc.rs +@@ -0,0 +1,47 @@ ++pub type c_char = u8; ++pub type c_long = i32; ++pub type c_ulong = u32; ++pub type wchar_t = i32; ++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)] { ++ #[doc(hidden)] ++ pub const _ALIGNBYTES: usize = ::mem::size_of::<::c_int>() - 1; ++ } else { ++ #[doc(hidden)] ++ pub const _ALIGNBYTES: usize = 4 - 1; ++ } ++} ++ ++pub const MAP_32BIT: ::c_int = 0x00080000; ++pub const MINSIGSTKSZ: ::size_t = 2048; // 512 * 4 |