On Wed, Nov 25, 2020 at 11:57:38AM +0100, Florian Weimer wrote:
- Jan Pazdziora:
it seems that both fakeroot and fakechroot fail to build in Fedora rawhide (at least partially) because _STAT_VER is no longer declared in the current glibc (or rather, its headers):
https://bugzilla.redhat.com/show_bug.cgi?id=1889862 https://bugzilla.redhat.com/show_bug.cgi?id=1901049
The bugzillas are filed against their respective components but I wonder if we have any guidance from the glibc point of view about how these components should proceed. Or is the loss of _STAT_VER an omission and will it come back?
_STAT_VER will not come back, these packages have to define the value locally. glibc won't add any _STAT_VER values.
Thank you.
So do you recommend for fakechroot to hardcode something like
--- a/src/libfakechroot.h +++ b/src/libfakechroot.h @@ -224,4 +224,14 @@ int fakechroot_try_cmd_subst (char *, const char *, char *); int snprintf(char *, size_t, const char *, ...); #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 + #endif
for all the arches?
There's a Fedora-specific hack in rawhide glibc to bring back the __xstat and related symbols for linking. This in the process of being upstreamed.
Does that include __fxstatat64? And is the hack already in glibc-2.32.9000-16.fc34 or is it on the way to rawhide?