From 2e07b629e7537114246fc17f42b958294dc77840 Mon Sep 17 00:00:00 2001 From: git-bruh Date: Tue, 10 Oct 2023 23:38:03 +0530 Subject: [PATCH] rust: 1.73.0 --- extra/rust/build | 28 +----- extra/rust/checksums | 10 +- extra/rust/files/liblfs64.c | 44 --------- extra/rust/patches/lfs64-rust.patch | 143 ---------------------------- extra/rust/sources | 10 +- extra/rust/version | 2 +- 6 files changed, 11 insertions(+), 226 deletions(-) delete mode 100644 extra/rust/files/liblfs64.c delete mode 100644 extra/rust/patches/lfs64-rust.patch diff --git a/extra/rust/build b/extra/rust/build index 61a50dae..05d611a8 100755 --- a/extra/rust/build +++ b/extra/rust/build @@ -2,31 +2,7 @@ export DESTDIR="$1" -for p in *.patch; do - patch -p1 < "$p" -done - -: "${AR:=ar}" -: "${CC:=cc}" - -mkdir _lib - -( - cd _lib - - $CC ../liblfs64.c -c -fPIC -o liblfs64.o - $AR rcs liblfs64.a liblfs64.o - - cat > cc < -#include -#include -#include - -int stat64(char *pathname, struct stat *statbuf) { - return stat(pathname, statbuf); -} - -int fstat64(int fd, struct stat *statbuf) { return fstat(fd, statbuf); } - -int fstatat64(int dirfd, char *pathname, struct stat *statbuf, int flags) { - return fstatat(dirfd, pathname, statbuf, flags); -} - -int lstat64(char *restrict pathname, struct stat *statbuf) { - return lstat(pathname, statbuf); -} - -int truncate64(char *path, off_t length) { return truncate(path, length); } - -int ftruncate64(int fd, off_t length) { return ftruncate(fd, length); } - -off_t lseek64(int fd, off_t offset, int whence) { - return lseek(fd, offset, whence); -} - -int open64(const char *pathname, int flags, - /* Technically this is undefined behaviour, but the `mode` - * value is only checked if the relevant flag is set in `flags` - * so a garbage value will never be read */ - mode_t mode) { - return open(pathname, flags, mode); -} - -struct dirent *readdir64(DIR *dirp) { return readdir(dirp); } - -ssize_t pread64(int fd, void *buf, size_t count, off_t offset) { - return pread(fd, buf, count, offset); -} - -ssize_t pwrite64(int fd, void *buf, size_t count, off_t offset) { - return pwrite(fd, buf, count, offset); -} diff --git a/extra/rust/patches/lfs64-rust.patch b/extra/rust/patches/lfs64-rust.patch deleted file mode 100644 index d2b2f752..00000000 --- a/extra/rust/patches/lfs64-rust.patch +++ /dev/null @@ -1,143 +0,0 @@ -diff --git a/library/std/src/os/linux/fs.rs b/library/std/src/os/linux/fs.rs -index 479bbcc1..ab0b2a3e 100644 ---- a/library/std/src/os/linux/fs.rs -+++ b/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 -diff --git a/library/std/src/sys/unix/fd.rs b/library/std/src/sys/unix/fd.rs -index 85e020ae..7489d5d2 100644 ---- a/library/std/src/sys/unix/fd.rs -+++ b/library/std/src/sys/unix/fd.rs -@@ -124,9 +124,12 @@ impl FileDesc { - } - - pub fn read_at(&self, buf: &mut [u8], offset: u64) -> io::Result { -- #[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 { -@@ -281,9 +284,12 @@ impl FileDesc { - } - - pub fn write_at(&self, buf: &[u8], offset: u64) -> io::Result { -- #[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 { -diff --git a/library/std/src/sys/unix/fs.rs b/library/std/src/sys/unix/fs.rs -index fbc7f04c..f6034155 100644 ---- a/library/std/src/sys/unix/fs.rs -+++ b/library/std/src/sys/unix/fs.rs -@@ -50,9 +50,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", -@@ -62,9 +66,10 @@ use libc::fstatat64; - target_os = "illumos", - target_os = "nto", - target_os = "vita", -+ 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; -@@ -86,7 +91,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", -@@ -96,7 +107,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; -@@ -283,6 +294,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", -@@ -324,6 +336,7 @@ struct dirent64_min { - } - - #[cfg(not(any( -+ target_env = "musl", - target_os = "android", - target_os = "linux", - target_os = "solaris", -@@ -832,7 +845,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 { -@@ -856,7 +869,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 { diff --git a/extra/rust/sources b/extra/rust/sources index 18abbc12..ed27e04b 100644 --- a/extra/rust/sources +++ b/extra/rust/sources @@ -1,7 +1,5 @@ -https://static.rust-lang.org/dist/rustc-1.72.1-src.tar.xz -https://static.rust-lang.org/dist/2023-07-13/rust-std-1.71.0-x86_64-unknown-linux-musl.tar.xz?no-extract -https://static.rust-lang.org/dist/2023-07-13/rustc-1.71.0-x86_64-unknown-linux-musl.tar.xz?no-extract -https://static.rust-lang.org/dist/2023-07-13/cargo-1.71.0-x86_64-unknown-linux-musl.tar.xz?no-extract -files/liblfs64.c +https://static.rust-lang.org/dist/rustc-1.73.0-src.tar.xz +https://static.rust-lang.org/dist/2023-09-19/rust-std-1.72.1-x86_64-unknown-linux-musl.tar.xz?no-extract +https://static.rust-lang.org/dist/2023-09-19/rustc-1.72.1-x86_64-unknown-linux-musl.tar.xz?no-extract +https://static.rust-lang.org/dist/2023-09-19/cargo-1.72.1-x86_64-unknown-linux-musl.tar.xz?no-extract patches/fix-curl.patch -patches/lfs64-rust.patch diff --git a/extra/rust/version b/extra/rust/version index ce7e9b9f..05aca9b8 100644 --- a/extra/rust/version +++ b/extra/rust/version @@ -1 +1 @@ -1.72.1 1 +1.73.0 1