summaryrefslogtreecommitdiff
path: root/repo/fakeroot/do-not-redefine-id_t.patch
diff options
context:
space:
mode:
Diffstat (limited to 'repo/fakeroot/do-not-redefine-id_t.patch')
-rw-r--r--repo/fakeroot/do-not-redefine-id_t.patch21
1 files changed, 21 insertions, 0 deletions
diff --git a/repo/fakeroot/do-not-redefine-id_t.patch b/repo/fakeroot/do-not-redefine-id_t.patch
new file mode 100644
index 0000000..4d3bab1
--- /dev/null
+++ b/repo/fakeroot/do-not-redefine-id_t.patch
@@ -0,0 +1,21 @@
+musl defines id_t as unsigned but doesn't use the _ID_T to detect its
+definition. This causes the type to be redefined as an int by fakeroot
+which causes a compilation error.
+
+diff -upr fakeroot-1.27.orig/libfakeroot.c fakeroot-1.27/libfakeroot.c
+--- fakeroot-1.27.orig/libfakeroot.c 2022-01-30 11:30:25.198506844 +0100
++++ fakeroot-1.27/libfakeroot.c 2022-01-30 11:30:41.928524429 +0100
+@@ -133,13 +133,6 @@
+ #define INT_SEND_STAT(a,b) SEND_STAT(a,b,_STAT_VER)
+ #define INT_SEND_GET_XATTR(a,b) SEND_GET_XATTR(a,b,_STAT_VER)
+ #define INT_SEND_GET_STAT(a,b) SEND_GET_STAT(a,b)
+-
+-/* 10.10 uses id_t in getpriority/setpriority calls, so pretend
+- id_t is used everywhere, just happens to be int on some OSes */
+-#ifndef _ID_T
+-#define _ID_T
+-typedef int id_t;
+-#endif
+ #endif
+
+ #include <sys/types.h>