NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/55997: lang/perl5 fails to build in compat_netbsd32 chroot



The following reply was made to PR kern/55997; it has been noted by GNATS.

From: Rin Okuyama <rokuyama.rk%gmail.com@localhost>
To: gnats-bugs%netbsd.org@localhost, kern-bug-people%netbsd.org@localhost,
 gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost, martin%NetBSD.org@localhost
Cc: 
Subject: Re: kern/55997: lang/perl5 fails to build in compat_netbsd32 chroot
Date: Sun, 14 Mar 2021 21:28:22 +0900

 Ah, I just remembered perl5 vs tmpfs on COMPAT_NETBSD32 problem; I believe
 this is a bug of perl5 bootstrap rather than ours.
 
 Support for 64-bit integer is not built in miniperl for ILP32 environments,
 unless it is explicitly enabled by 64bitint option (and similar ones?).
 This is problematic since ino_t is uint64_t for NetBSD.
 
 For most cases, inode number is within 32-bit width. But tmpfs on LP64
 machines uses inode number larger than UINT32_MAX frequently. In this case,
 miniperl cannot handle that file/directory at all, which results in build
 failure.
 
 This problem can be worked around by something like
 
 ----
 .if ${MACHINE_ARCH} != alpha && \
      !(!empty(MACHINE_ARCH:M*64*) && empty(MACHINE_ARCH:Mmips*))
 PKG_OPTIONS.perl=       -64bitauto 64bitint
 .endif
 ----
 
 in /etc/mk.conf. Probably we can add a similar hack to pkgsrc/lang/perl5.
 
 Again, this is a bug in perl5. Since ino_t is uint64_t, we can freely use
 inode number larger than UINT32_MAX. miniperl should handle such an inode
 regardless of options (except for 64bitnone?).
 
 Thanks,
 rin
 


Home | Main Index | Thread Index | Old Index