fakeroot does not intercept *stat and mknod on musl
fakeroot’s configure script detects the ABI-compat symbols __xstat, etc. in musl and wrongly assumes they are the mechanism by which apps call these functions (like in glibc). The attached patch fixes the issue on musl but is not acceptable for upstream because it would break fakeroot on glibc. The right fix is either:
First check that STAT_VER is defined, and only do the_xstat, etc. checks if it’s defined; otherwise use the normal stat API.
Check for declarations of __xstat, etc. provided by sys/stat.h rather than just symbol definitions.
But I don’t know how to do those right in configure. It would be nice to get this fixed right upstream so other distros benefit too; in particular, use of buildroot (which builds its own fakeroot) on Alpine-based build systems is broken.
(from redmine: issue id 4701, created on 2015-09-30, closed on 2017-04-07)
- Revision 23214819 by Timo Teräs on 2016-01-08T12:54:28Z:
main/fakeroot: use patch instead of sed The sed replacement is more vulnerable to breaking if something changes in upstream source tarball. Apply the change as a patch instead. fixes #4701