Re: List of packages that fail to build with 4 byte alignment
Izumi Tsutsui <[email protected]> Fri, 14 Mar 2025 22:03:54 +0900
| Newsgroups | gmane.os.netbsd.ports.m68k |
|---|---|
| Message-ID | <[email protected]> |
> Since NetBSD/m68k has been using 4-byte alignment for a long time already, I was > wondering whether there were any packages that had to be patched in order to build > with the 4-byte alignment on NetBSD/m68k? I don't think any application specific patches for 4-byte alignment are necessary. At least python 3.12 from pkgsrc builds on NetBSD/m68k 10.1 without (m68k specific) patches. > Also, if there is anything else that comes to your mind that had to be taken care of > when NetBSD/m68k switched from 2- to 4-bytes alignment, please let me know. On NetBSD/m68k, alignment change was done on a.out -> ELF migration. We cannot link a.out libraries against ELF binaries, so there was no compatibility issue on userland (IIUC). The only issue was kernel and userland ABI, i.e. old a.out binaries used 2-byte alignment and newer ELF kernels assume 4-byte alignment. We had to prepare compat layer that converted all system call arguments that contain structures, but it was unlikely so only limited conversions were prepared: https://github.com/NetBSD/src/blob/a1680574/sys/compat/aoutm68k/aoutm68k_stat.h#L39 and most old a.out binaries (including SunOS and HP-UX ones with compat layers) no longer worked on ELF kernels. In debian case, I'm afraid some versioning methods are necessary to avoid mixing different alignment binaries. --- Izumi Tsutsui