From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Fri, 06 Jan 2023 17:03:20 +0100 Received: from metis.ext.pengutronix.de ([2001:67c:670:201:290:27ff:fe1d:cc33]) by lore.white.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1pDpBh-003d6v-FC for lore@lore.pengutronix.de; Fri, 06 Jan 2023 17:03:20 +0100 Received: from localhost ([127.0.0.1] helo=metis.ext.pengutronix.de) by metis.ext.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1pDpBf-0001R2-2N; Fri, 06 Jan 2023 17:03:19 +0100 Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.ext.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pDp9z-000485-RG; Fri, 06 Jan 2023 17:01:35 +0100 Received: from [2a0a:edc0:0:1101:1d::54] (helo=dude05.red.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtp (Exim 4.94.2) (envelope-from ) id 1pDp9z-004ErW-7Q; Fri, 06 Jan 2023 17:01:35 +0100 Received: from mol by dude05.red.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1pDp9y-00CuGN-EU; Fri, 06 Jan 2023 17:01:34 +0100 From: Michael Olbrich To: ptxdist@pengutronix.de Date: Fri, 6 Jan 2023 17:01:34 +0100 Message-Id: <20230106160134.3076168-1-m.olbrich@pengutronix.de> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230105113304.3493454-1-christian.melki@t2data.com> References: <20230105113304.3493454-1-christian.melki@t2data.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: Re: [ptxdist] [APPLIED] fakeroot: Version bump. 1.29.0 -> 1.30.1 X-BeenThere: ptxdist@pengutronix.de X-Mailman-Version: 2.1.29 Precedence: list List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Cc: Christian Melki Sender: "ptxdist" X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: ptxdist-bounces@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false Thanks, applied as 84fc4374287c1f664b085f59da4b60979ec71d71. Michael [sent from post-receive hook] On Fri, 06 Jan 2023 17:01:34 +0100, Christian Melki wrote: > Minor bugfix release. > > * Drop the stat hack patch for glibc-2.33+. > Afaiu, it's not needed anymore? > * Drop the openat patch, it's included. > * Forward the ptxdist specific relocateable patch. > > Signed-off-by: Christian Melki > Message-Id: <20230105113304.3493454-1-christian.melki@t2data.com> > Signed-off-by: Michael Olbrich > > diff --git a/patches/fakeroot-1.29/0001-Also-wrap-the-stat-library-call.patch b/patches/fakeroot-1.29/0001-Also-wrap-the-stat-library-call.patch > deleted file mode 100644 > index daff7f347744..000000000000 > --- a/patches/fakeroot-1.29/0001-Also-wrap-the-stat-library-call.patch > +++ /dev/null > @@ -1,71 +0,0 @@ > -From: Christian Melki > -Date: Wed, 11 May 2022 10:23:40 +0200 > -Subject: [PATCH] Also wrap the "stat" library call > - > -Patch by: Christoph Biedl > -Bug-Debian: https://bugs.debian.org/1001961 > - > -Seems changes in glibc 2.33 caused the stat() function to be mapped > -into a stat() library call instead of __xstat() as it used to be. > - > -However, fakeroot does not wrap this, causing files to be reported > -with the real owner, not 0 as expected. > - > -The fix for this got a bit ugly as the abstraction in configure.ac > -would not allow wrapping both "stat" and "__xstat". So enhance the > -search list capabilities with an optional symbol how the wrapped > -function is named internally. Also hack the parser so "stat" gets > -actually probed and not mistaken for __xstat. > - > -Using "realstat" as a symbol is not the best choice as it might be > -confusing, but "statstat" seemed even worse. > - > -Signed-off-by: Christian Melki > ---- > - configure.ac | 18 ++++++++++++++---- > - 1 file changed, 14 insertions(+), 4 deletions(-) > - > -diff --git a/configure.ac b/configure.ac > -index e7c1c7c484f3..3fa4756557af 100644 > ---- a/configure.ac > -+++ b/configure.ac > -@@ -362,9 +362,13 @@ dnl Digital Unix: stat > - > - :>fakerootconfig.h.tmp > - > --for SEARCH in %stat f%stat l%stat f%statat %stat64 f%stat64 l%stat64 f%statat64 %mknod %mknodat; do > -- FUNC=`echo $SEARCH|sed -e 's/.*%//'` > -+for SEARCH in %stat s%tat@realstat f%stat l%stat f%statat %stat64 f%stat64 l%stat64 f%statat64 %mknod %mknodat; do > -+ FUNC=`echo $SEARCH|sed -e 's/.*%// ; s/@.*//'` > - PRE=`echo $SEARCH|sed -e 's/%.*//'` > -+ SYMBOL=`echo $SEARCH|sed -e 's/.*@//'` > -+ if test "$SYMBOL" = "$SEARCH" ; then > -+ SYMBOL="${PRE}${FUNC}" > -+ fi > - FOUND= > - for WRAPPED in __${PRE}x${FUNC} _${PRE}x${FUNC} __${PRE}${FUNC}13 ${PRE}${FUNC}; do > - AC_CHECK_FUNCS($WRAPPED,FOUND=$WRAPPED) > -@@ -375,8 +379,8 @@ dnl > - dnl for WRAPPED in _${PRE}${FUNC}; do > - dnl FOUND=$WRAPPED > - if test -n "$FOUND"; then > -- PF=[`echo ${PRE}${FUNC}| tr '[a-z]' '[A-Z]'`] > -- DEFINE_WRAP=[`echo wrap_${PRE}${FUNC}| tr '[a-z]' '[A-Z]'`] > -+ PF=[`echo $SYMBOL | tr '[a-z]' '[A-Z]'`] > -+ DEFINE_WRAP=[`echo wrap_${SYMBOL}| tr '[a-z]' '[A-Z]'`] > - DEFINE_NEXT=[`echo wrap_${FOUND}| tr '[a-z]' '[A-Z]'`] > - DEFINE_ARG=[`echo wrap_${FOUND}| tr '[a-z]' '[A-Z]'`] > - AC_DEFINE_UNQUOTED(WRAP_${PF}, $FOUND) > -@@ -518,6 +522,12 @@ AH_VERBATIM([WRAP_STAT], > - #define TMP_STAT __astat > - #define NEXT_STAT_NOARG next___astat > - > -+#define WRAP_REALSTAT __astat > -+#define WRAP_REALSTAT_QUOTE __astat > -+#define WRAP_REALSTAT_RAW __astat > -+#define TMP_REALSTAT __astat > -+#define NEXT_REALSTAT_NOARG next___astat > -+ > - #define WRAP_LSTAT_QUOTE __astat > - #define WRAP_LSTAT __astat > - #define WRAP_LSTAT_RAW __astat > diff --git a/patches/fakeroot-1.29/0002-Fix-prototype-generation-for-openat.patch b/patches/fakeroot-1.29/0002-Fix-prototype-generation-for-openat.patch > deleted file mode 100644 > index 3e091379da0e..000000000000 > --- a/patches/fakeroot-1.29/0002-Fix-prototype-generation-for-openat.patch > +++ /dev/null > @@ -1,70 +0,0 @@ > -From: Christian Melki > -Date: Wed, 11 May 2022 10:25:59 +0200 > -Subject: [PATCH] Fix prototype generation for openat > - > -Patch by: Christoph Biedl > -Bug-Debian: https://bugs.debian.org/995393 > - > -As jrtc27 pointed out in IRC, ppc64el is more strict than other > -architectures when it comes to va_arg handling: > - > - it's that ppc64le uses the elfv2 abi, and for variadic calls you > - must reserve space for a parameter save area > - > -So enhance wrapawk to create a proper prototype and argument > -handling although it's specific to the openat call. Also add the > -missing documentation for the sixth column to wrapfunc.inp. > - > -Signed-off-by: Christian Melki > ---- > - wrapawk | 20 +++++++++++++++++++- > - wrapfunc.inp | 4 +++- > - 2 files changed, 22 insertions(+), 2 deletions(-) > - > -diff --git a/wrapawk b/wrapawk > -index a2fd220a6fcb..9b2c285c257b 100644 > ---- a/wrapawk > -+++ b/wrapawk > -@@ -37,7 +37,25 @@ BEGIN{ > - argtype=$3; > - argname=$4; > - MACRO=$5; > -- if(MACRO){ > -+ openat_extra=$6; > -+ if(openat_extra){ > -+ print " {(void(*))&next_" name ", \"" name "\"}," > structfile; > -+ print "extern " ret " (*next_" name ")" openat_extra ";" > headerfile; > -+ print ret " (*next_" name ")" openat_extra "=tmp_" name ";"> deffile; > -+ > -+ print ret " tmp_" name, openat_extra "{" > tmpffile; > -+ print " mode_t mode = 0;" > tmpffile; > -+ print " if (flags & O_CREAT) {" > tmpffile; > -+ print " va_list args;" > tmpffile; > -+ print " va_start(args, flags);" > tmpffile; > -+ print " mode = va_arg(args, int);" > tmpffile; > -+ print " va_end(args);" > tmpffile; > -+ print " }" > tmpffile; > -+ print " load_library_symbols();" > tmpffile; > -+ print " return next_" name, argname ";" > tmpffile; > -+ print "}" > tmpffile; > -+ print "" > tmpffile; > -+ } else if(MACRO){ > - print " {(void(*))&NEXT_" MACRO "_NOARG, " name "_QUOTE}," > structfile; > - print "extern " ret " (*NEXT_" MACRO "_NOARG)" argtype ";" > headerfile; > - print ret " (*NEXT_" MACRO "_NOARG)" argtype "=TMP_" MACRO ";"> deffile; > -diff --git a/wrapfunc.inp b/wrapfunc.inp > -index 556af34579b0..f5bd4063152c 100644 > ---- a/wrapfunc.inp > -+++ b/wrapfunc.inp > -@@ -9,8 +9,10 @@ > - /**/ */ > - /* each line of this file lists 4 fields, seperated by a ";". */ > - /* The first field is the name of the wrapped function, then it's return */ > --/* value. After that come the function arguments with types, and the last */ > -+/* value. After that come the function arguments with types, and the fifth */ > - /* field contains the function arguments without types. */ > -+/* A sixth field is a special needed when wrapping the openat syscall. */ > -+/* Otherwise it's like the third (function arguments with types). */ > - /**/ > - > - /* __*xstat are used on glibc systems instead of just *xstat. */ > diff --git a/patches/fakeroot-1.29/series b/patches/fakeroot-1.29/series > deleted file mode 100644 > index 7cc751cd490a..000000000000 > --- a/patches/fakeroot-1.29/series > +++ /dev/null > @@ -1,6 +0,0 @@ > -# generated by git-ptx-patches > -#tag:base --start-number 1 > -0001-Also-wrap-the-stat-library-call.patch > -0002-Fix-prototype-generation-for-openat.patch > -0003-make-fakeroot-relocatable.patch > -# a15acfb9f130741fa53186998a6f6ee3 - git-ptx-patches magic > diff --git a/patches/fakeroot-1.29/0003-make-fakeroot-relocatable.patch b/patches/fakeroot-1.30.1/0001-make-fakeroot-relocatable.patch > similarity index 100% > rename from patches/fakeroot-1.29/0003-make-fakeroot-relocatable.patch > rename to patches/fakeroot-1.30.1/0001-make-fakeroot-relocatable.patch > diff --git a/patches/fakeroot-1.29/autogen.sh b/patches/fakeroot-1.30.1/autogen.sh > similarity index 100% > rename from patches/fakeroot-1.29/autogen.sh > rename to patches/fakeroot-1.30.1/autogen.sh > diff --git a/patches/fakeroot-1.30.1/series b/patches/fakeroot-1.30.1/series > new file mode 100644 > index 000000000000..bf6039484aa5 > --- /dev/null > +++ b/patches/fakeroot-1.30.1/series > @@ -0,0 +1,4 @@ > +# generated by git-ptx-patches > +#tag:base --start-number 1 > +0001-make-fakeroot-relocatable.patch > +# 997aab71aab23715410e9573ed7fb092 - git-ptx-patches magic > diff --git a/rules/host-fakeroot.make b/rules/host-fakeroot.make > index 2436f99d0d4d..b0764f0da54b 100644 > --- a/rules/host-fakeroot.make > +++ b/rules/host-fakeroot.make > @@ -15,12 +15,12 @@ HOST_PACKAGES-$(PTXCONF_HOST_FAKEROOT) += host-fakeroot > # > # Paths and names > # > -HOST_FAKEROOT_VERSION := 1.29 > -HOST_FAKEROOT_MD5 := cab9604a7dc1d58346e0d15bb285bd0f > +HOST_FAKEROOT_VERSION := 1.30.1 > +HOST_FAKEROOT_MD5 := ddbdacf3844cd26bd05e34346bb2f524 > HOST_FAKEROOT_SUFFIX := tar.gz > HOST_FAKEROOT := fakeroot-$(HOST_FAKEROOT_VERSION) > HOST_FAKEROOT_TARBALL := fakeroot_$(HOST_FAKEROOT_VERSION).orig.$(HOST_FAKEROOT_SUFFIX) > -HOST_FAKEROOT_URL := https://snapshot.debian.org/archive/debian/20220522T213641Z/pool/main/f/fakeroot/$(HOST_FAKEROOT_TARBALL) > +HOST_FAKEROOT_URL := https://snapshot.debian.org/archive/debian/20221120T030258Z/pool/main/f/fakeroot/$(HOST_FAKEROOT_TARBALL) > HOST_FAKEROOT_SOURCE := $(SRCDIR)/$(HOST_FAKEROOT_TARBALL) > HOST_FAKEROOT_DIR := $(HOST_BUILDDIR)/$(HOST_FAKEROOT) > HOST_FAKEROOT_LICENSE := GPL-3.0-or-later