Subject: re: Removing compat/aout
To: Todd Vierling <tv@wasabisystems.com>
From: matthew green <mrg@eterna.com.au>
List: tech-kern
Date: 03/09/2002 12:56:33
   
   :    "Because it doesn't do anything useful for you" doesn't mean "throw it out"
   :    -- some other people may find utility in it.  I've needed COMPAT_AOUT a
   :    total of 6 times already for migration purposes.
   
   : perhaps if uucp and rcs were broken and unmaintained this argument
   : would be valid.
   
   They're certainly unmaintained, or at least RCS is.  Besides, we don't use
   RCS in any of our source tree; CVS is there.  RCS should be ejected with
   extreme prejudice (to catch a phrase)....

RCS is unmaintained because it doesn't need it.  it certainly
isn't broken and it is used by the base system.  be sure you
don't break anything by removing it.
   
   : the fact is that COMPAT_AOUT f*cks you over and it should be ejected with
   : extreme prejudice.
   
   In its current form, it has problems with some things, but only if it's
   enabled.  It doesn't "f*ck you over", or at least, it doesn't mess you up if
   you know that it's part of the NetBSD emulation system (see below).

big "if".  lots of well versed netbsd developers have cursed at
COMPAT_AOUT because of the stupid things it ends up doing.
   
   : anyone running a system with a.out binaries that they *USE* really
   : doesn't want to have COMPAT_AOUT.  why?  say your shell is aout..
   : you type "cd /usr" in it.  where do you end up?  "/emul/aout/usr".
   
   The same thing happens with Linux, SVR4, and all others.  I've given
   solutions to this problem in the past (>2 years ago, when I didn't have the
   knowledge on how to fix it properly).  I may revisit that.

lesse, aout, freebsd, hpux, linux and ibcs2 do.  everything else
does not (irix, netbsd32, osf1, sunos, sunos32, svr4, svr4_32,
ultrix, and maybe something i missed).
   
   However, this is not an artifact of only COMPAT_AOUT, so don't try to paint
   it as such.

true.  it's a bug in all of a.out, freebsd, hpux, linux and ibcs2.  



.mrg.