> > right
> > socket() not in libc
> > solaris is still in the 70's on this one
> Well, maybe one argument could be that most small applications do not
> need networking... but I do not know the exact argumentation.
> Maybe Casper Dik can explain why libsocket/libnsl were not integrated
> into libc yet (other stuff such as threading support was integrated for
> Solaris 10 - why didn't that happen with networking, too ?) ...
its my dig at keeping separate what most systems lump in libc
seems like just another gratuitous difference to keep portable sw off kilter
the ksh93 makefile adds references to -lsocket and -lnsl if they exist
these end up in the generated -lshell library requirement file shell.req
which gets installed as $INSTALLROOT/lib/lib/shell
the problem is in the bootstrap Mamfile which drops the check for
-lsocket and -lnsl
I checked into this and the reason semms to be that the only system
requiring -lsocket -lnsl is solaris *and* there exists at least
one non-solaris system where including -lsocket and/or -lnsl brings
in bogus code (or at least inferior socket/network code that
interferes with the libc code -- perhaps for sysv vs. bsd semantics?)
I'll have to figure out how to handle this in the generated
bootstrap Mamfile -- for now you can work around by chainging
shell dll cmd ast m jobs i secdb intl dl
to
shell dll cmd ast m jobs i socket nsl secdb intl dl
in src/cmd/ksh93/Mamfile, rm'ing shell.req and FEATURE/poll,
and rebuilding
-- Glenn Fowler -- AT&T Research, Florham Park NJ --