[comp.sys.nsc.32k] Merging estdio with 1.4 Minix libc

jkh@meepmeep.pcs.com (Jordan K. Hubbard) (02/27/91)

No, that's not a typo. Getting sick of referring to "1.3/1.5 hybrid
minix" I figured I'd take the cowardly way out, average the two, and
refer to it as minix "1.4." Since there has never (to my knowledge) been
a 1.4 version of Minix, it should work, no?

Last night I built estdio 2.1 with Jyrki's patches and installed
the resulting stdio.a as /lib/libstdio.a. However, since one really
also needs the estdio /usr/include/stdio.h to use it transparently
from applications, there remains a conflict between it and the stdio
stuff in libc. What I'm wondering is how folks have integrated estdio
into the minix 1.4 library structure so that it completely replaces
the libc stdio. I tried a simple overlay-merge, which worked for
most things, but still left a few dangling references to the old
libc that cropped up when I tried to recompile the "touch" command
in GNU fileutils 1.4. I did write a estdio version of "cleanup()",
so I know that's not the problem, but I can't seem to find any other
libc stdio routines that wouldn't be found first in the estdio lib
(I'm linking with "-lstdio -lc").

Any ideas?

The new estdio is definately *faster*. I'm quite happy with it and
would like to just nuke the old stuff in favor of the new.
Bruce/Phil: Would you guys be willing to consider shipping the complete
1.5 port (when that's done) with estdio as the stock stdio?

Now to go try this on my Amiga 1.5 minix and see if I can't beef up
the screen I/O a bit. It's not so good at the moment.


					Jordan

sverre@lev.Seri.GOV (Sverre Froyen) (02/28/91)

>Last night I built estdio 2.1 with Jyrki's patches and installed
>the resulting stdio.a as /lib/libstdio.a. However, since one really
>also needs the estdio /usr/include/stdio.h to use it transparently
>from applications, there remains a conflict between it and the stdio
>stuff in libc. What I'm wondering is how folks have integrated estdio
>...
>Any ideas?

I followed the instructions in the INSTALL directory, replaced stdio.h
with the estdio version, recompiled some of the libc routines, replaced
several more with estdio versions, and generated a new libc.  In fact,
I wrote a script, modelled after yminix.sh, to do this.  I also had to
write a couple of floating point routines to get floating point to work.
I plan to send out a set of patches for estdio once I get the last bit
of floating point numbers to come out correctly.  Hopefully in a couple of
days...

Sverre

-- 
Sverre Froyen
sverre@seri.gov, sunpeaks!seri!sverre

jkp@sauna.hut.fi (Jyrki Kuoppala) (02/28/91)

(Using estdio and Minix stdio side by side)

>Any ideas?

I have 'gcc' which uses gas syntax for assembly, /usr/include for
includes, libraries from /usr/gnu/lib (which have estdio in libc.a).
Then I have 'cc' which uses WBC syntax, WBC assembler and linker, and
the original Minix libs with the original stdio.  I've put <stdio.h>
in cc's gcc-include dir.  I know, this requires keeping two copies of
gcc front end and cpp, but they're not that big.

//Jyrki