Browse Source

v1.29

master
Worty 2 years ago
parent
commit
01886875cd
  1. 17
      .SRCINFO
  2. 18
      PKGBUILD
  3. 37
      fakeroot-1.25.3-glibc-2.33-fix-1.patch
  4. 72
      fakeroot-1.25.3-glibc-2.33-fix-2.patch
  5. 60
      fakeroot-1.25.3-glibc-2.33-fix-3.patch

17
.SRCINFO

@ -1,7 +1,7 @@
pkgbase = fakeroot-tcp pkgbase = fakeroot-tcp
pkgdesc = Tool for simulating superuser privileges,with tcp ipc pkgdesc = Tool for simulating superuser privileges,with tcp ipc
pkgver = 1.25.3 pkgver = 1.29
pkgrel = 2 pkgrel = 1
url = https://tracker.debian.org/pkg/fakeroot url = https://tracker.debian.org/pkg/fakeroot
install = fakeroot.install install = fakeroot.install
arch = i686 arch = i686
@ -17,16 +17,9 @@ pkgbase = fakeroot-tcp
depends = sed depends = sed
depends = util-linux depends = util-linux
depends = sh depends = sh
provides = fakeroot=1.25.3-2 provides = fakeroot=1.29-1
conflicts = fakeroot conflicts = fakeroot
source = http://ftp.debian.org/debian/pool/main/f/fakeroot/fakeroot_1.25.3.orig.tar.gz source = http://ftp.debian.org/debian/pool/main/f/fakeroot/fakeroot_1.29.orig.tar.gz
source = fakeroot-1.25.3-glibc-2.33-fix-1.patch sha256sums = 8fbbafb780c9173e3ace4a04afbc1d900f337f3216883939f5c7db3431be7c20
source = fakeroot-1.25.3-glibc-2.33-fix-2.patch
source = fakeroot-1.25.3-glibc-2.33-fix-3.patch
sha256sums = 8e903683357f7f5bcc31b879fd743391ad47691d4be33d24a76be3b6c21e956c
sha256sums = 7b1ea49a4123a6d95329b370cc9edb51dc0c292ee3eeaa034757b555607026ea
sha256sums = 1d2b3c9de24a4249f71e4ed1465ccac462c4ae36bd0a72c796cbfc51fb88a5e6
sha256sums = 669dc27fc4a63d265adffbd7fe04521d9e91f46fdba5465c55c6b2d281aae0dc
pkgname = fakeroot-tcp pkgname = fakeroot-tcp

18
PKGBUILD

@ -6,8 +6,8 @@
pkgname=fakeroot-tcp pkgname=fakeroot-tcp
_pkgname=fakeroot _pkgname=fakeroot
pkgver=1.25.3 pkgver=1.29
pkgrel=2 pkgrel=1
pkgdesc='Tool for simulating superuser privileges,with tcp ipc' pkgdesc='Tool for simulating superuser privileges,with tcp ipc'
arch=('i686' 'x86_64' 'armv7h' 'aarch64') arch=('i686' 'x86_64' 'armv7h' 'aarch64')
license=('GPL') license=('GPL')
@ -17,22 +17,12 @@ depends=('glibc' 'filesystem' 'sed' 'util-linux' 'sh')
makedepends=('po4a' 'automake' 'autoconf') makedepends=('po4a' 'automake' 'autoconf')
provides=("${_pkgname}=${pkgver}-${pkgrel}") provides=("${_pkgname}=${pkgver}-${pkgrel}")
conflicts=("${_pkgname}") conflicts=("${_pkgname}")
source=(http://ftp.debian.org/debian/pool/main/f/$_pkgname/${_pkgname}_${pkgver}.orig.tar.gz source=(http://ftp.debian.org/debian/pool/main/f/$_pkgname/${_pkgname}_${pkgver}.orig.tar.gz)
fakeroot-1.25.3-glibc-2.33-fix-1.patch sha256sums=('8fbbafb780c9173e3ace4a04afbc1d900f337f3216883939f5c7db3431be7c20')
fakeroot-1.25.3-glibc-2.33-fix-2.patch
fakeroot-1.25.3-glibc-2.33-fix-3.patch)
sha256sums=('8e903683357f7f5bcc31b879fd743391ad47691d4be33d24a76be3b6c21e956c'
'7b1ea49a4123a6d95329b370cc9edb51dc0c292ee3eeaa034757b555607026ea'
'1d2b3c9de24a4249f71e4ed1465ccac462c4ae36bd0a72c796cbfc51fb88a5e6'
'669dc27fc4a63d265adffbd7fe04521d9e91f46fdba5465c55c6b2d281aae0dc')
prepare() { prepare() {
cd $_pkgname-$pkgver cd $_pkgname-$pkgver
patch -p1 -i $srcdir/fakeroot-1.25.3-glibc-2.33-fix-1.patch
patch -p1 -i $srcdir/fakeroot-1.25.3-glibc-2.33-fix-2.patch
patch -p1 -i $srcdir/fakeroot-1.25.3-glibc-2.33-fix-3.patch
} }
build() { build() {

37
fakeroot-1.25.3-glibc-2.33-fix-1.patch

@ -1,37 +0,0 @@
From 03bc0ee07fb6e293d081ffd8af1654788b434f6a Mon Sep 17 00:00:00 2001
From: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
Date: Thu, 11 Feb 2021 20:59:25 -0800
Subject: [PATCH] libfakeroot.c: define _STAT_VER if not already defined
Based on patch from Jan Pazdziora:
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/SMQ3RYXEYTVZH6PLQMKNB3NM4XLPMNZO/
Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
---
libfakeroot.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/libfakeroot.c b/libfakeroot.c
index 3e80e38..14cdbc4 100644
--- a/libfakeroot.c
+++ b/libfakeroot.c
@@ -90,6 +90,16 @@
#define SEND_GET_XATTR64(a,b,c) send_get_xattr64(a,b)
#endif
+#ifndef _STAT_VER
+ #if defined (__aarch64__)
+ #define _STAT_VER 0
+ #elif defined (__x86_64__)
+ #define _STAT_VER 1
+ #else
+ #define _STAT_VER 3
+ #endif
+#endif
+
/*
These INT_* (which stands for internal) macros should always be used when
the fakeroot library owns the storage of the stat variable.
--
GitLab

72
fakeroot-1.25.3-glibc-2.33-fix-2.patch

@ -1,72 +0,0 @@
From feda578ca3608b7fc9a28a3a91293611c0ef47b7 Mon Sep 17 00:00:00 2001
From: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
Date: Thu, 11 Feb 2021 21:00:04 -0800
Subject: [PATCH] libfakeroot.c: add wrappers for new glibc 2.33+ symbols
Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
---
libfakeroot.c | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 48 insertions(+)
diff --git a/libfakeroot.c b/libfakeroot.c
index 14cdbc4..d75c51f 100644
--- a/libfakeroot.c
+++ b/libfakeroot.c
@@ -1352,6 +1352,54 @@ int renameat(int olddir_fd, const char *oldpath,
#endif /* HAVE_FSTATAT */
+#if defined(__GLIBC__) && __GLIBC_PREREQ(2,33)
+/* Glibc 2.33 exports symbols for these functions in the shared lib */
+ int lstat(const char *file_name, struct stat *statbuf) {
+ return WRAP_LSTAT LSTAT_ARG(_STAT_VER, file_name, statbuf);
+ }
+ int stat(const char *file_name, struct stat *st) {
+ return WRAP_STAT STAT_ARG(_STAT_VER, file_name, st);
+ }
+ int fstat(int fd, struct stat *st) {
+ return WRAP_FSTAT FSTAT_ARG(_STAT_VER, fd, st);
+ }
+
+ #ifdef HAVE_FSTATAT
+ int fstatat(int dir_fd, const char *path, struct stat *st, int flags) {
+ return WRAP_FSTATAT FSTATAT_ARG(_STAT_VER, dir_fd, path, st, flags);
+ }
+ #endif
+
+ #ifdef STAT64_SUPPORT
+ int lstat64(const char *file_name, struct stat64 *st) {
+ return WRAP_LSTAT64 LSTAT64_ARG(_STAT_VER, file_name, st);
+ }
+ int stat64(const char *file_name, struct stat64 *st) {
+ return WRAP_STAT64 STAT64_ARG(_STAT_VER, file_name, st);
+ }
+ int fstat64(int fd, struct stat64 *st) {
+ return WRAP_FSTAT64 FSTAT64_ARG(_STAT_VER, fd, st);
+ }
+
+ #ifdef HAVE_FSTATAT
+ int fstatat64(int dir_fd, const char *path, struct stat64 *st, int flags) {
+ return WRAP_FSTATAT64 FSTATAT64_ARG(_STAT_VER, dir_fd, path, st, flags);
+ }
+ #endif
+ #endif
+
+ int mknod(const char *pathname, mode_t mode, dev_t dev) {
+ return WRAP_MKNOD MKNOD_ARG(_STAT_VER, pathname, mode, &dev);
+ }
+
+ #if defined(HAVE_FSTATAT) && defined(HAVE_MKNODAT)
+ int mknodat(int dir_fd, const char *pathname, mode_t mode, dev_t dev) {
+ return WRAP_MKNODAT MKNODAT_ARG(_STAT_VER, dir_fd, pathname, mode, &dev);
+ }
+ #endif
+#endif /* GLIBC_PREREQ */
+
+
#ifdef FAKEROOT_FAKENET
pid_t fork(void)
{
--
GitLab

60
fakeroot-1.25.3-glibc-2.33-fix-3.patch

@ -1,60 +0,0 @@
From c3eebec293e35b997bb46c22fb5a4e114afb5e7f Mon Sep 17 00:00:00 2001
From: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
Date: Sat, 13 Feb 2021 19:32:08 -0800
Subject: [PATCH] configure.ac: fix __xmknod{,at} pointer argument
Switch default to assume * and not the absence of *.
On glibc 2.33+, there is no definition for these functions in header
files, so the compile test doesn't work. But, we can default to using
the pointer (as is the case with newer glibc), and use the header file
on older platforms to fail the test and use no pointer.
Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
---
configure.ac | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/configure.ac b/configure.ac
index 73415d2..d85566f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -183,13 +183,13 @@ AC_MSG_CHECKING([for type of arg of __xmknod])
]], [[
int __xmknod ( int ver,
const char *pathname ,
- mode_t mode , dev_t dev);
+ mode_t mode , dev_t *dev);
]])],[
- AC_DEFINE(XMKNOD_FRTH_ARG,)
- AC_MSG_RESULT([no extra *])
- ],[
AC_DEFINE(XMKNOD_FRTH_ARG,[*])
AC_MSG_RESULT([needs *])
+ ],[
+ AC_DEFINE(XMKNOD_FRTH_ARG,)
+ AC_MSG_RESULT([no extra *])
])
@@ -210,13 +210,13 @@ AC_MSG_CHECKING([for type of arg of __xmknodat])
int __xmknodat ( int ver,
int dirfd,
const char *pathname ,
- mode_t mode , dev_t dev);
+ mode_t mode , dev_t *dev);
]])],[
- AC_DEFINE(XMKNODAT_FIFTH_ARG,)
- AC_MSG_RESULT([no extra *])
- ],[
AC_DEFINE(XMKNODAT_FIFTH_ARG,[*])
AC_MSG_RESULT([needs *])
+ ],[
+ AC_DEFINE(XMKNODAT_FIFTH_ARG,)
+ AC_MSG_RESULT([no extra *])
])
--
GitLab
Loading…
Cancel
Save