0
0
mirror of https://github.com/termux/termux-packages.git synced 2025-05-09 21:35:36 +00:00
Files
termux-packages/packages/fish/libc-src-unix-linux_like-android.diff
TomIO 3c04053efa bump(main/fish): 4.0.0 (#22609)
- build ctermid
- add custom libc crate patch for 32bit android builds
- avoid using POSIX_SPAWN for spawning processes
- backport FindRust.cmake rustup fix
This backports: b38551dde9
Co-authored-by: Jia Yuan Lo <jylo06g@gmail.com>
Co-authored-by: Yaksh Bariya <yakshbari4@gmail.com>
Co-authored-by: Robert Kirkman <misternumberone@live.com>
Co-authored-by: AminurAlam <64137875+AminurAlam@users.noreply.github.com>
2025-03-08 17:09:02 +01:00

154 lines
5.2 KiB
Diff

diff --git a/src/unix/linux_like/android/b32/mod.rs b/src/unix/linux_like/android/b32/mod.rs
index 42be94d42..53e2f7687 100644
--- a/src/unix/linux_like/android/b32/mod.rs
+++ b/src/unix/linux_like/android/b32/mod.rs
@@ -3,7 +3,9 @@ use crate::prelude::*;
// The following definitions are correct for arm and i686,
// but may be wrong for mips
-pub type mode_t = u16;
+pub type mode_t = c_ushort;
+pub type ino_t = u64;
+pub type off_t = i32;
pub type off64_t = c_longlong;
pub type sigset_t = c_ulong;
pub type socklen_t = i32;
@@ -28,7 +30,7 @@ s! {
pub st_dev: c_ulonglong,
__pad0: [c_uchar; 4],
__st_ino: crate::ino_t,
- pub st_mode: c_uint,
+ pub st_mode: crate::mode_t,
pub st_nlink: crate::nlink_t,
pub st_uid: crate::uid_t,
pub st_gid: crate::gid_t,
@@ -50,7 +52,7 @@ s! {
pub st_dev: c_ulonglong,
__pad0: [c_uchar; 4],
__st_ino: crate::ino_t,
- pub st_mode: c_uint,
+ pub st_mode: crate::mode_t,
pub st_nlink: crate::nlink_t,
pub st_uid: crate::uid_t,
pub st_gid: crate::gid_t,
diff --git a/src/unix/linux_like/android/b64/aarch64/mod.rs b/src/unix/linux_like/android/b64/aarch64/mod.rs
index b678eb8da..5bf8edcdb 100644
--- a/src/unix/linux_like/android/b64/aarch64/mod.rs
+++ b/src/unix/linux_like/android/b64/aarch64/mod.rs
@@ -9,7 +9,7 @@ s! {
pub struct stat {
pub st_dev: crate::dev_t,
pub st_ino: crate::ino_t,
- pub st_mode: c_uint,
+ pub st_mode: crate::mode_t,
pub st_nlink: crate::nlink_t,
pub st_uid: crate::uid_t,
pub st_gid: crate::gid_t,
@@ -32,7 +32,7 @@ s! {
pub struct stat64 {
pub st_dev: crate::dev_t,
pub st_ino: crate::ino_t,
- pub st_mode: c_uint,
+ pub st_mode: crate::mode_t,
pub st_nlink: crate::nlink_t,
pub st_uid: crate::uid_t,
pub st_gid: crate::gid_t,
diff --git a/src/unix/linux_like/android/b64/mod.rs b/src/unix/linux_like/android/b64/mod.rs
index cc407e113..3185af39b 100644
--- a/src/unix/linux_like/android/b64/mod.rs
+++ b/src/unix/linux_like/android/b64/mod.rs
@@ -4,6 +4,8 @@ use crate::prelude::*;
// but may be wrong for mips64
pub type mode_t = u32;
+pub type ino_t = c_ulong;
+pub type off_t = i64;
pub type off64_t = i64;
pub type socklen_t = u32;
diff --git a/src/unix/linux_like/android/b64/riscv64/mod.rs b/src/unix/linux_like/android/b64/riscv64/mod.rs
index c4dc98e01..cb0a281cc 100644
--- a/src/unix/linux_like/android/b64/riscv64/mod.rs
+++ b/src/unix/linux_like/android/b64/riscv64/mod.rs
@@ -10,7 +10,7 @@ s! {
pub struct stat {
pub st_dev: crate::dev_t,
pub st_ino: crate::ino_t,
- pub st_mode: c_uint,
+ pub st_mode: crate::mode_t,
pub st_nlink: c_uint,
pub st_uid: crate::uid_t,
pub st_gid: crate::gid_t,
@@ -33,7 +33,7 @@ s! {
pub struct stat64 {
pub st_dev: crate::dev_t,
pub st_ino: crate::ino_t,
- pub st_mode: c_uint,
+ pub st_mode: crate::mode_t,
pub st_nlink: c_uint,
pub st_uid: crate::uid_t,
pub st_gid: crate::gid_t,
diff --git a/src/unix/linux_like/android/b64/x86_64/mod.rs b/src/unix/linux_like/android/b64/x86_64/mod.rs
index ce2d70999..874913aff 100644
--- a/src/unix/linux_like/android/b64/x86_64/mod.rs
+++ b/src/unix/linux_like/android/b64/x86_64/mod.rs
@@ -11,7 +11,7 @@ s! {
pub st_dev: crate::dev_t,
pub st_ino: crate::ino_t,
pub st_nlink: c_ulong,
- pub st_mode: c_uint,
+ pub st_mode: crate::mode_t,
pub st_uid: crate::uid_t,
pub st_gid: crate::gid_t,
pub st_rdev: crate::dev_t,
@@ -31,7 +31,7 @@ s! {
pub st_dev: crate::dev_t,
pub st_ino: crate::ino_t,
pub st_nlink: c_ulong,
- pub st_mode: c_uint,
+ pub st_mode: crate::mode_t,
pub st_uid: crate::uid_t,
pub st_gid: crate::gid_t,
pub st_rdev: crate::dev_t,
diff --git a/src/unix/linux_like/android/mod.rs b/src/unix/linux_like/android/mod.rs
index 5debbe8fb..44a39aa87 100644
--- a/src/unix/linux_like/android/mod.rs
+++ b/src/unix/linux_like/android/mod.rs
@@ -5,7 +5,6 @@ use crate::prelude::*;
pub type clock_t = c_long;
pub type time_t = c_long;
pub type suseconds_t = c_long;
-pub type off_t = c_long;
pub type blkcnt_t = c_ulong;
pub type blksize_t = c_ulong;
pub type nlink_t = u32;
@@ -21,7 +20,6 @@ pub type fsblkcnt_t = c_ulong;
pub type nfds_t = c_uint;
pub type rlim_t = c_ulong;
pub type dev_t = c_ulong;
-pub type ino_t = c_ulong;
pub type ino64_t = u64;
pub type __CPU_BITTYPE = c_ulong;
pub type idtype_t = c_int;
@@ -528,16 +526,16 @@ s_no_extra_traits! {
}
pub struct dirent {
- pub d_ino: u64,
- pub d_off: i64,
+ pub d_ino: crate::ino_t,
+ pub d_off: crate::off_t,
pub d_reclen: c_ushort,
pub d_type: c_uchar,
pub d_name: [c_char; 256],
}
pub struct dirent64 {
- pub d_ino: u64,
- pub d_off: i64,
+ pub d_ino: crate::ino64_t,
+ pub d_off: crate::off_t,
pub d_reclen: c_ushort,
pub d_type: c_uchar,
pub d_name: [c_char; 256],