

This is a first take of starting a libnsl.so such that we
never need to recompile any binaries and can switch between the
standard libc.so functions and the real libnsl.so transparently.

Mitch Dsouza has taken the nys directory and my changes and rolled them
into this library.

Stage One:
----------

The "make" command should build a libnsl.so.0.4.6 and a symbolic links
libnsl.so.0, libnsl.so in the toplevel directory. You need to move
these somewhere like /lib and rerun ldconfig. Then copy the
libnsl/include files to /usr/include and just add -lnsl to your
compilation flags for all binaries. Now you could recompile
all your programs with -lnsl. Or use LD_PRELOAD=/lib/libnsl.so.0,
to make your libc 5 binaries NIS+ aware.


Stage Two:
----------

Compile a libc 5.4.38 which is linked against libnsl.so.0, so that
all your old binaries are NIS/NIS+ aware:

 * get libc-5.4.38.tar.gz
 * create a new directory (maybe libc5)
 * untar libc-5.4.38.tar.gz and libnsl-0.4.6.tar.gz
 * Add the patch: patch -p1 < libnsl/libc-5.4.38-nsl.diff
 * Add the linux and asm link in libc5/include
 * goto libc5/libc, run configure and enable libnsl support
 * run "make"
 * run "make install" in libc5/libc

All your binaries are now NIS/NIS+ aware.

When new patches appear, all you need to is replace libnsl.so.0.4.6 and
all your binaries automatically get the fixes from the new libnsl.so.0.
You only need to patch and recompile your libc 5 once, if there is a new
libnsl, you do not have to recompile libc 5.4.38 anymore.

Thorsten
<kukuk@vt.uni-paderborn.de>
