summaryrefslogtreecommitdiff
path: root/poky/meta/recipes-devtools/rust/files/0001-Do-not-use-LFS64-on-linux-with-musl.patch
diff options
context:
space:
mode:
Diffstat (limited to 'poky/meta/recipes-devtools/rust/files/0001-Do-not-use-LFS64-on-linux-with-musl.patch')
-rw-r--r--poky/meta/recipes-devtools/rust/files/0001-Do-not-use-LFS64-on-linux-with-musl.patch164
1 files changed, 0 insertions, 164 deletions
diff --git a/poky/meta/recipes-devtools/rust/files/0001-Do-not-use-LFS64-on-linux-with-musl.patch b/poky/meta/recipes-devtools/rust/files/0001-Do-not-use-LFS64-on-linux-with-musl.patch
deleted file mode 100644
index 7f8d62a256..0000000000
--- a/poky/meta/recipes-devtools/rust/files/0001-Do-not-use-LFS64-on-linux-with-musl.patch
+++ /dev/null
@@ -1,164 +0,0 @@
-From 3ecce665198e3420d70139d86ed22e74804c9379 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 28 Dec 2022 22:35:55 -0800
-Subject: [PATCH] Do not use LFS64 on linux with musl
-
-glibc is providing open64 and other lfs64 functions but musl aliases
-them to normal equivalents since off_t is always 64-bit on musl,
-therefore check for target env along when target OS is linux before
-using open64, this is more available. Latest Musl has made these
-namespace changes [1]
-
-[1] https://git.musl-libc.org/cgit/musl/commit/?id=246f1c811448f37a44b41cd8df8d0ef9736d95f4
-
-Upstream-Status: Submitted [https://github.com/rust-lang/rust/pull/106246]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- library/std/src/os/linux/fs.rs | 9 ++++++++-
- library/std/src/sys/unix/fd.rs | 14 ++++++++++----
- library/std/src/sys/unix/fs.rs | 27 ++++++++++++++++++++-------
- 3 files changed, 38 insertions(+), 12 deletions(-)
-
-Index: rustc-1.70.0-src/library/std/src/os/linux/fs.rs
-===================================================================
---- rustc-1.70.0-src.orig/library/std/src/os/linux/fs.rs
-+++ rustc-1.70.0-src/library/std/src/os/linux/fs.rs
-@@ -329,7 +329,14 @@ pub trait MetadataExt {
- impl MetadataExt for Metadata {
- #[allow(deprecated)]
- fn as_raw_stat(&self) -> &raw::stat {
-- unsafe { &*(self.as_inner().as_inner() as *const libc::stat64 as *const raw::stat) }
-+ #[cfg(target_env = "musl")]
-+ unsafe {
-+ &*(self.as_inner().as_inner() as *const libc::stat as *const raw::stat)
-+ }
-+ #[cfg(not(target_env = "musl"))]
-+ unsafe {
-+ &*(self.as_inner().as_inner() as *const libc::stat64 as *const raw::stat)
-+ }
- }
- fn st_dev(&self) -> u64 {
- self.as_inner().as_inner().st_dev as u64
-Index: rustc-1.70.0-src/library/std/src/sys/unix/fd.rs
-===================================================================
---- rustc-1.70.0-src.orig/library/std/src/sys/unix/fd.rs
-+++ rustc-1.70.0-src/library/std/src/sys/unix/fd.rs
-@@ -121,9 +121,12 @@ impl FileDesc {
- }
-
- pub fn read_at(&self, buf: &mut [u8], offset: u64) -> io::Result<usize> {
-- #[cfg(not(any(target_os = "linux", target_os = "android")))]
-+ #[cfg(not(any(
-+ all(target_os = "linux", not(target_env = "musl")),
-+ target_os = "android"
-+ )))]
- use libc::pread as pread64;
-- #[cfg(any(target_os = "linux", target_os = "android"))]
-+ #[cfg(any(all(target_os = "linux", not(target_env = "musl")), target_os = "android"))]
- use libc::pread64;
-
- unsafe {
-@@ -276,9 +279,12 @@ impl FileDesc {
- }
-
- pub fn write_at(&self, buf: &[u8], offset: u64) -> io::Result<usize> {
-- #[cfg(not(any(target_os = "linux", target_os = "android")))]
-+ #[cfg(not(any(
-+ all(target_os = "linux", not(target_env = "musl")),
-+ target_os = "android"
-+ )))]
- use libc::pwrite as pwrite64;
-- #[cfg(any(target_os = "linux", target_os = "android"))]
-+ #[cfg(any(all(target_os = "linux", not(target_env = "musl")), target_os = "android"))]
- use libc::pwrite64;
-
- unsafe {
-Index: rustc-1.70.0-src/library/std/src/sys/unix/fs.rs
-===================================================================
---- rustc-1.70.0-src.orig/library/std/src/sys/unix/fs.rs
-+++ rustc-1.70.0-src/library/std/src/sys/unix/fs.rs
-@@ -47,9 +47,13 @@ use libc::{c_int, mode_t};
- all(target_os = "linux", target_env = "gnu")
- ))]
- use libc::c_char;
--#[cfg(any(target_os = "linux", target_os = "emscripten", target_os = "android"))]
-+#[cfg(any(
-+ all(target_os = "linux", not(target_env = "musl")),
-+ target_os = "emscripten",
-+ target_os = "android"
-+))]
- use libc::dirfd;
--#[cfg(any(target_os = "linux", target_os = "emscripten"))]
-+#[cfg(any(not(target_env = "musl"), target_os = "emscripten"))]
- use libc::fstatat64;
- #[cfg(any(
- target_os = "android",
-@@ -58,9 +62,10 @@ use libc::fstatat64;
- target_os = "redox",
- target_os = "illumos",
- target_os = "nto",
-+ target_env = "musl",
- ))]
- use libc::readdir as readdir64;
--#[cfg(target_os = "linux")]
-+#[cfg(all(target_os = "linux", not(target_env = "musl")))]
- use libc::readdir64;
- #[cfg(any(target_os = "emscripten", target_os = "l4re"))]
- use libc::readdir64_r;
-@@ -81,7 +86,13 @@ use libc::{
- dirent as dirent64, fstat as fstat64, fstatat as fstatat64, ftruncate64, lseek64,
- lstat as lstat64, off64_t, open as open64, stat as stat64,
- };
-+#[cfg(target_env = "musl")]
-+use libc::{
-+ dirent as dirent64, fstat as fstat64, ftruncate as ftruncate64, lseek as lseek64,
-+ lstat as lstat64, off_t as off64_t, open as open64, stat as stat64,
-+};
- #[cfg(not(any(
-+ target_env = "musl",
- target_os = "linux",
- target_os = "emscripten",
- target_os = "l4re",
-@@ -91,7 +102,7 @@ use libc::{
- dirent as dirent64, fstat as fstat64, ftruncate as ftruncate64, lseek as lseek64,
- lstat as lstat64, off_t as off64_t, open as open64, stat as stat64,
- };
--#[cfg(any(target_os = "linux", target_os = "emscripten", target_os = "l4re"))]
-+#[cfg(any(not(target_env = "musl"), target_os = "emscripten", target_os = "l4re"))]
- use libc::{dirent64, fstat64, ftruncate64, lseek64, lstat64, off64_t, open64, stat64};
-
- pub use crate::sys_common::fs::try_exists;
-@@ -278,6 +289,7 @@ unsafe impl Sync for Dir {}
- #[cfg(any(
- target_os = "android",
- target_os = "linux",
-+ not(target_env = "musl"),
- target_os = "solaris",
- target_os = "illumos",
- target_os = "fuchsia",
-@@ -312,6 +324,7 @@ struct dirent64_min {
- }
-
- #[cfg(not(any(
-+ target_env = "musl",
- target_os = "android",
- target_os = "linux",
- target_os = "solaris",
-@@ -787,7 +800,7 @@ impl DirEntry {
- }
-
- #[cfg(all(
-- any(target_os = "linux", target_os = "emscripten", target_os = "android"),
-+ any(not(target_env = "musl"), target_os = "emscripten", target_os = "android"),
- not(miri)
- ))]
- pub fn metadata(&self) -> io::Result<FileAttr> {
-@@ -811,7 +824,7 @@ impl DirEntry {
- }
-
- #[cfg(any(
-- not(any(target_os = "linux", target_os = "emscripten", target_os = "android")),
-+ not(any(not(target_env = "musl"), target_os = "emscripten", target_os = "android")),
- miri
- ))]
- pub fn metadata(&self) -> io::Result<FileAttr> {