https://man.netbsd.org/compat_netbsd32.8 seems to hint that /emul is a thing of the past, but doesn't elaborate. The guide doesn't seem to cover this topic either. Do we have this documented somewhere besides RTFS?
We now build compat32 libs for the base system as part of the build. Are those librararies intended to be used for 1) code compiled with -m32 on the 64-bit system, 2) binaries brought over from the 32-bit system to be run as-is on the 64-bit system, 3) both of the above? Case in point: port-sparc/58975. Support for -m32 on 64-bit is nice (I'm using amd64 and sparc64 to play with some older software that is 32-bit only, e.g. self (the language) and inferno-os), but it's not as seamless when librararies besides the base are involved. When x11 libs are involved you cannot just add -m32, you need to also change/add -L/-R options, or you need to create one large pile of libraries in /usr/lib/$arch32. Phone says that -m32 does special magic for /usr/lib/$arch32. Would it make sense to apply that magic to all -L paths (and ld.so runpath), so that -L/usr/X11R7/lib in a makefile would JFW when you change cc to cc -m32 and copy over 32-bit X11 libs to /usr/X11R7/lib/$arch32? Did someone investigate our options here or prior art in multiarch debian and whatever else supports this? TIA. -uwe