From a162fe9a96fc83cb890944d40dadaf1091084f98 Mon Sep 17 00:00:00 2001 From: Ruslan Isaev Date: Mon, 10 May 2021 14:56:59 +0000 Subject: [PATCH] fakeroot: Alpine linux libc.musl build error fix Prevent build error on Alpine Linux host: libfakeroot.c error: conflicting types for 'id_t' Error relocating openwrt/staging_dir/host/lib/libfakeroot.so: SEND_GET_XATTR: symbol not found Signed-off-by: Ruslan Isaev (cherry picked from commit 7a70f78fb7da4dc3e8c58e7662f4dc623274a78b) --- .../patches/400-alpine-libc.musl-fix.patch | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 tools/fakeroot/patches/400-alpine-libc.musl-fix.patch diff --git a/tools/fakeroot/patches/400-alpine-libc.musl-fix.patch b/tools/fakeroot/patches/400-alpine-libc.musl-fix.patch new file mode 100644 index 0000000000..619b092ca9 --- /dev/null +++ b/tools/fakeroot/patches/400-alpine-libc.musl-fix.patch @@ -0,0 +1,34 @@ +Alpine linux libc.musl build error fix + +Prevent build error on Alpine Linux host: +libfakeroot.c error: conflicting types for 'id_t' +Error relocating openwrt/staging_dir/host/lib/libfakeroot.so: SEND_GET_XATTR: symbol not found + +--- a/libfakeroot.c ++++ b/libfakeroot.c +@@ -81,12 +81,14 @@ + #define SEND_STAT64(a,b,c) send_stat64(a,b,c) + #define SEND_GET_STAT(a,b) send_get_stat(a,b) + #define SEND_GET_STAT64(a,b) send_get_stat64(a,b) ++#define SEND_GET_XATTR(a,b,c) send_get_xattr(a,b,c) + #define SEND_GET_XATTR64(a,b,c) send_get_xattr64(a,b,c) + #else + #define SEND_STAT(a,b,c) send_stat(a,b) + #define SEND_STAT64(a,b,c) send_stat64(a,b) + #define SEND_GET_STAT(a,b) send_get_stat(a) + #define SEND_GET_STAT64(a,b) send_get_stat64(a) ++#define SEND_GET_XATTR(a,b,c) send_get_xattr(a,b) + #define SEND_GET_XATTR64(a,b,c) send_get_xattr64(a,b) + #endif + +@@ -125,8 +127,9 @@ + + /* 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 ++#if !defined(_ID_T) && !defined(__DEFINED_id_t) + #define _ID_T ++#define __DEFINED_id_t + typedef int id_t; + #endif + #endif -- 2.30.2