Subject: Re: new snapshot
To: Todd Vierling <tv@wasabisystems.com>
From: Frederick Bruckman <fredb@immanent.net>
List: port-mac68k
Date: 01/14/2002 11:19:14
On Mon, 14 Jan 2002, Todd Vierling wrote:

> On Sun, 13 Jan 2002, Frederick Bruckman wrote:
>
> : Actually, I think we should be following i386's example, and have both
> : EXEC_AOUT and EXEC_ELF32 in std.mac68k, and nuke COMPAT_AOUT from
> : GENERIC and GENERICSBC. "/usr/libexec/ld.so" already looks in
> : "/emul/aout" for shared libraries and "ld.so.conf", so all COMPAT_AOUT
> : can do is confuse shells.
>
> COMPAT_AOUT != COMPAT_AOUT_M68K.
>
> a.out binaries on m68k have a different struct-alignment value from ELF, so
> syscalls on a.out really *are* different from those on ELF for m68k.
> There's an honest-to-goodness translation going on; see
> src/sys/compat/aoutm68k.

Ahh... that's very different, then. :-)

So let me see if I understand something... You could enable EXEC_ELF32
on an a.out kernel, and it would be harmless to a.out binaries,
because all the old syscalls still have a.out struct alignment -- but
you can't really run ELF binaries until you've *built* and *booted* an
ELF kernel, because there is no COMPAT_ELF_M68K? (Catch-22?) And once
you do that, build and boot an ELF kernel, then you must have built it
with COMPAT_AOUT_M68K in order for a.out binaries to work right?

I am seeing some wierdness, now, with the elfnt-20020105 snapshot.
Shell scripts (not binaries) are disappearing before my eyes. I
thought there was some huge break in pkgsrc because "make deinstall"
deleted "/bin/true" twice in a row, but it's not reproducible. And now
"lorder" disappeared in the middle of a kernel build. I reinstalled
it, and the build finished fine. Anyone else seeing this?

> : Right. "mv iwm.s iwm.S; cvs rm iwm.s; cvs add iwm.S; cvs diff" should
> : produce a patch that'll do the right thing. I'll post a complete patch
> : here, once I've seen it all build once.
>
> s/cvs diff/& -N/

Of course. I'd forgotten about that, because I'd added "diff -u -N"
to my ~/.cvsrc some time ago.

Frederick