tech-toolchain archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
fat binaries
I really like the concept of the mach fat binaries and have always
thought that NetBSD could benefit from their use more than any other
operating system.
While NetBSD supports fat binaries containing macho executables, I
did a proof-of-concept to put native ELF executables inside the fat
container. I wrote a lipo(1) tool based on the same tool on OS X.
You can find patches at http://ftp.netbsd.org/pub/NetBSD/misc/
gmcgarry/fat. It's a grotty hack, but it proves that the concept is
not difficult. The diff is against an 8-month-old version of -
current. The cat.fat binary supports amd64, i386 and arm.
What's the general feeling about such a feature? I think it would be
great for universal boot cds. It would be nice to boot a "netbsd
desktop" between an amd64 and i386 kernel using the same userland.
Further changes would be required to the toolchain before widespread
adoption. gdb works, but will only recognise the ELF binaries
extracted from the fat binary. ld would need to grok shared libs
inside the fat container.
If there is enthusiasm for the feature, I'll try to factor common
code between ELF and macho for a clean patch. I'll also look into
modifying pcc to build fat binaries.
Home |
Main Index |
Thread Index |
Old Index