aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Ryan Barnett <ryanbarnett3@gmail.com>2021-02-27 13:43:38 -0600
committerGravatar Peter Korsgaard <peter@korsgaard.com>2021-02-28 18:00:19 +0100
commit5904d13b90ac3e50ed801587fdf717550daa62e9 (patch)
tree2bf6e5f963cfac23119ca7dcf5c905ec4268b24d
parent4f55b56463f92684c5bd988169654ab84489d399 (diff)
downloadbuildroot-5904d13b90ac3e50ed801587fdf717550daa62e9.tar.gz
buildroot-5904d13b90ac3e50ed801587fdf717550daa62e9.tar.bz2
package/fakeroot: fix glibc detection on patch for new wrappers
Commit f45925a951318e9e53bead80b363e004301adc6f add the patch: 0003-libfakeroot.c-add-wrappers-for-new-glibc-2.33-symbol.patch which allowed fakeroot to be compiled with GLIBC 2.33 or above. However, this introduce a bug for building with a non-GLIBC based toolchain as a GLIBC macro - __GLIBC_PREREQ - is used on the same line as the detection of GLIBC. Fix this by backporting the fix to this incorrect macro from upstream commit: https://salsa.debian.org/clint/fakeroot/-/commit/8090dffdad8fda86dccd47ce7a7db8840bdf7d7b CC: Peter Korsgaard <peter@korsgaard.com> Signed-off-by: Ryan Barnett <ryanbarnett3@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
-rw-r--r--package/fakeroot/0008-fix-build-regression-on-macOS.patch63
1 files changed, 63 insertions, 0 deletions
diff --git a/package/fakeroot/0008-fix-build-regression-on-macOS.patch b/package/fakeroot/0008-fix-build-regression-on-macOS.patch
new file mode 100644
index 0000000000..480e2b3d6d
--- /dev/null
+++ b/package/fakeroot/0008-fix-build-regression-on-macOS.patch
@@ -0,0 +1,63 @@
+From dc910b81378b5fb8b4e851d5deb9755e6969dad5 Mon Sep 17 00:00:00 2001
+From: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
+Date: Mon, 15 Feb 2021 11:07:56 -0800
+Subject: [PATCH] fix build regression on macOS
+
+Signed-off-by: Felix Fietkau <nbd@nbd.name>
+Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
+[Ryan: backported from 8090dffdad8fda86dccd47ce7a7db8840bdf7d7b]
+Signed-off-by: Ryan Barnett <ryanbarnett3@gmail.com>
+---
+ configure.ac | 6 ++++++
+ libfakeroot.c | 4 +++-
+ 2 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 71f90ff..0ad1da0 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -181,6 +181,9 @@ AC_MSG_CHECKING([for type of arg of __xmknod])
+ #include <fcntl.h>
+ #include <unistd.h>
+ ]], [[
++#ifndef __GLIBC__
++#error no extra *
++#endif
+ int __xmknod ( int ver,
+ const char *pathname ,
+ mode_t mode , dev_t *dev);
+@@ -207,6 +210,9 @@ AC_MSG_CHECKING([for type of arg of __xmknodat])
+ #include <fcntl.h>
+ #include <unistd.h>
+ ]], [[
++#ifndef __GLIBC__
++#error no extra *
++#endif
+ int __xmknodat ( int ver,
+ int dirfd,
+ const char *pathname ,
+diff --git a/libfakeroot.c b/libfakeroot.c
+index 3eedd99..6e49618 100644
+--- a/libfakeroot.c
++++ b/libfakeroot.c
+@@ -1351,7 +1351,8 @@ int renameat(int olddir_fd, const char *oldpath,
+ #endif /* HAVE_FSTATAT */
+
+
+-#if defined(__GLIBC__) && __GLIBC_PREREQ(2,33)
++#if defined(__GLIBC__)
++#if __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);
+@@ -1396,6 +1397,7 @@ int renameat(int olddir_fd, const char *oldpath,
+ return WRAP_MKNODAT MKNODAT_ARG(_STAT_VER, dir_fd, pathname, mode, &dev);
+ }
+ #endif
++#endif /* __GLIBC__ */
+ #endif /* GLIBC_PREREQ */
+
+
+--
+2.25.1
+