Re: Re: [UnixOS2] libc

Ilya Zakharevich <[email protected]> Fri, 18 Jul 2003 03:51:20 -0700
Newsgroups gmane.comp.ide.emx.devel
Message-ID <[email protected]>
On Thu, Jul 17, 2003 at 06:11:30PM +0200, Stefan Neis wrote:
> > I repeat: this makes no sense.  Most cases where one *can* be fully
> > compatible are already in EMX.
> str(n)casecmp, usleep, nanosleep, special cases of almost any mathematical
> function are just the exceptions I can think of within the first 15
> seconds and without having a list of functions before my eyes.

Yes, I said "most", not all.  But note that what you started to do is
exactly what I started my pleas with: sort the functions into different layers.

> > If ./configure is able to detect that something is missing, then it
> > should be able to substitute something else (otherwise why check for
> > it)?

> Sure. But what is it supposed to do if e.g. both usleep and nanosleep
> are missing?

??? It would use select(), of course.  But I do not see how all this
is relevant, given that one can use

  LIBS="-lshm -ldlopen" ./configure

if one knows that the application will not work without shm*() and
dl*() subsystems present.  [*For the sake of argument* I assume here
that implementations of shm*() and dl*() are not complete, so it is
not safe to include them into a C library.]

> Typically, you get a link error after compiling for a couple
> of hours. Great.

Error with a descriptive error message is much better that an
application which silently compiles, then "just does not work".

> library (and yes, it was really easy to recompile gcc.exe to add cExt to
> the list of libraries to be used to make configure happy, but I really 
> would have appreciated to not be forced to waste my time with this).

Agreed.  Is it possible to make this settable via an

> But then, I don't care much about debugging EMX DLL's as I can
> override any buggy function with a different implementation, anyway.

LOL!  How would you find *which* function to override?

Ilya