FreeBSD: Fix bootstrapping tools under Linux/musl

musl libc has deprecated LFS64 aliases, so bootstrapping FreeBSD tools
under musl distros has been failing with stat64 errors.

Apply the aliases under non-glibc Linux to fix this problem.

Reviewed-by: Richard Yao <richard.yao@alumni.stonybrook.edu>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Val Packett <val@packett.cool>
Closes #15780
This commit is contained in:
Val Packett 2024-01-19 18:01:26 -03:00 committed by GitHub
parent a0b2a93c41
commit d9cb42da99
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -76,8 +76,12 @@ fstat64_blk(int fd, struct stat64 *st)
/*
* Only Intel-based Macs have a separate stat64; Arm-based Macs are like
* FreeBSD and have a full 64-bit stat from the start.
*
* On Linux, musl libc is full 64-bit too and has deprecated its own version
* of these defines since version 1.2.4.
*/
#if defined(__APPLE__) && !(defined(__i386__) || defined(__x86_64__))
#if (defined(__APPLE__) && !(defined(__i386__) || defined(__x86_64__))) || \
(defined(__linux__) && !defined(__GLIBC__))
#define stat64 stat
#define fstat64 fstat
#endif