fakeroot/fakeroot-upstream-1.25.2-sw.patch
2022-11-14 16:34:29 +08:00

125 lines
3.4 KiB
Diff
Executable File

diff -ruN fakeroot/configure.ac fakeroot-upstream-1.30.1/configure.ac
--- fakeroot/configure.ac 2022-11-14 03:31:24.575795452 +0800
+++ fakeroot-upstream-1.30.1/configure.ac 2022-11-14 03:42:12.116973388 +0800
@@ -499,7 +499,7 @@
LDPRELOADABS=0
LDEXTRAVAR=""
case $target_cpu:$target_os in
- (alpha*:linux*|ia64*:linux*)
+ (sw_64*:linux|alpha*:linux*|ia64*:linux*)
libcpath="/lib/libc.so.6.1"
;;
(*:linux*)
@@ -666,6 +666,21 @@
],
[AC_MSG_RESULT([no]);])
;;
+esac
+
+case "$target_cpu:$target_os" in
+ (sw_64*:linux*)
+ AH_TEMPLATE([STUPID_ALPHA_HACK], [stat-struct conversion hackery])
+ AC_MSG_CHECKING([if we need to do stat-struct conversion hackery])
+ AC_EGREP_CPP([3:3],[
+#include <sys/stat.h>
+_STAT_VER:_STAT_VER_GLIBC2_3_4
+],
+ [AC_MSG_RESULT([yes]); AC_DEFINE(STUPID_ALPHA_HACK)
+CPPFLAGS="$CPPFLAGS -I\$(srcdir)/statconv/glibc/linux/sw_64"
+],
+ [AC_MSG_RESULT([no]);])
+ ;;
esac
dnl AH_TEMPLATE([MACOSX], [is __APPLE__ defined by the compiler])
diff -ruN fakeroot/statconv/glibc/linux/sw_64/stats.h fakeroot-upstream-1.30.1/statconv/glibc/linux/sw_64/stats.h
--- fakeroot/statconv/glibc/linux/sw_64/stats.h 1970-01-01 08:00:00.000000000 +0800
+++ fakeroot-upstream-1.30.1/statconv/glibc/linux/sw_64/stats.h 2022-11-14 03:42:12.116973388 +0800
@@ -0,0 +1,86 @@
+/* Definition of `struct stat' used in the kernel. */
+struct fakeroot_kernel_stat
+ {
+ unsigned int st_dev;
+ unsigned int st_ino;
+ unsigned int st_mode;
+ unsigned int st_nlink;
+ unsigned int st_uid;
+ unsigned int st_gid;
+ unsigned int st_rdev;
+ long int st_size;
+ unsigned long int st_atime;
+ unsigned long int st_mtime;
+ unsigned long int st_ctime;
+ unsigned int st_blksize;
+ int st_blocks;
+ unsigned int st_flags;
+ unsigned int st_gen;
+ };
+
+/* Definition of `struct stat64' used in the kernel. */
+struct fakeroot_kernel_stat64
+ {
+ unsigned long st_dev;
+ unsigned long st_ino;
+ unsigned long st_rdev;
+ long st_size;
+ unsigned long st_blocks;
+
+ unsigned int st_mode;
+ unsigned int st_uid;
+ unsigned int st_gid;
+ unsigned int st_blksize;
+ unsigned int st_nlink;
+ unsigned int __pad0;
+
+ unsigned long st_atime;
+ unsigned long st_atimensec;
+ unsigned long st_mtime;
+ unsigned long st_mtimensec;
+ unsigned long st_ctime;
+ unsigned long st_ctimensec;
+ long __unused[3];
+ };
+
+/* Definition of `struct stat' used by glibc 2.0. */
+struct fakeroot_glibc2_stat
+ {
+ __dev_t st_dev;
+ __ino_t st_ino;
+ __mode_t st_mode;
+ __nlink_t st_nlink;
+ __uid_t st_uid;
+ __gid_t st_gid;
+ __dev_t st_rdev;
+ __off_t st_size;
+ __time_t st_atime;
+ __time_t st_mtime;
+ __time_t st_ctime;
+ unsigned int st_blksize;
+ int st_blocks;
+ unsigned int st_flags;
+ unsigned int st_gen;
+ };
+
+/* Definition of `struct stat' used by glibc 2.1. */
+struct fakeroot_glibc21_stat
+ {
+ __dev_t st_dev;
+ __ino64_t st_ino;
+ __mode_t st_mode;
+ __nlink_t st_nlink;
+ __uid_t st_uid;
+ __gid_t st_gid;
+ __dev_t st_rdev;
+ __off_t st_size;
+ __time_t st_atime;
+ __time_t st_mtime;
+ __time_t st_ctime;
+ __blkcnt64_t st_blocks;
+ __blksize_t st_blksize;
+ unsigned int st_flags;
+ unsigned int st_gen;
+ int __pad3;
+ long __unused[4];
+ };