Subject: New snapshot coming soon...
To: None <port-pmax@NetBSD.ORG>
From: Jonathan Stone <jonathan@DSG.Stanford.EDU>
List: port-pmax
Date: 03/05/1997 19:43:44
I reworked share/mk/bsd.lib.mk to produce cleaner shared libraries.
One thing I (finally) understood from doing this is that the
shared-libraries  in the snapshots until now are sub-optimal.

Any dynamicaly-linked binary has a reference to the *exact* library
against which it was linked -- e.g., libc.so.12.11 for the current
snapshot.  The dynamic linker (ld.so) can't use newer versions of
libraries to resolve those references (eg., 12.11.x or 12.12), like
the SunOS-style  ld.so used on a.out platforms can.

The upshot of all this is that if  you install a pmax shared-lib
sanpshot, make your own shared binaries, and then update the system
to a newer snapshot *and throw away the old lib<foo>.so.x.y files*,
then binaries that linked against the old shared libraries won't run.

We don't have a ld.so that can do SunOS-style version searching (which
AFAIK is based solely on file names and is therefore deprecated), and
there's no prospect of one in the near term.  So the fix is to change
bsd.lib.mk, so that it only labels .so libraries with the major number
of the library version (e.g. libc.so.12 instead of libc.so.12.7 or
libc.so.12.11).

I should have a snapshot linked that way out this weekend.
The  bsd.lib.mk used to make it will be available, too.

--Jonathan