Subject: Re: CVS commit: src: mips droppped ldconfig
To: Jonathan Stone <jonathan@DSG.Stanford.EDU>
From: Todd Vierling <tv@pobox.com>
List: current-users
Date: 10/16/1998 16:17:04
On Mon, 12 Oct 1998, Jonathan Stone wrote:

: Some developers -- notably cgd -- have expressed very strong opinions
: against `ldconfig'.  I dont pretend to speak for Chris, but I dont see
: any signficant architectural difference between the symlink farms in
: each directory, as we use now, and keeping the same info about ELF
: shlib versions in a *local, per directory only* `cache file'. 

The arguments over ldconfig had *nothing* to do with the versioning of the
libraries, or the caching of those version numbers.  We'll be stuck with the
symlink farms, because that's what ELF specifies as law, AFAIK.

However, ld.so.conf has one benefit to people who don't want/don't care to
use the "correct" -R (rpath) method of finding shared libraries on ELF.
Technically, even a.out ports could switch to using rpath and no ldconfig,
as a.out ld/ld.so has that capability.

A supposed "backwards com[bp]atibility" hook for ld.so.conf could
conceivably be added to ld.elf_so without even a ldconfig, because ELF needs
zero library caching; it would only need some list of directories to search.
Of course, a program that _pretends_ to do the same thing as a.out's
ldconfig probably wouldn't be bad if such hook were in place, to give the
appearance of compatibility.

: I thought the big architectural issue over ELF was whether or not to
: provide a `ld.so.conf' or moral equivalent.  To allow a sysadmin to
: provide sytsem-wide defaults which override compiled-in rpath
: directives without clobbering everybody and anybody's
: LD_LIBRARY_PATH-- say, for people who need to install packages into
: /usr/local but who still want to use the precompiled binary pkgs.

Yes, but we have rpath.  On both ELF and a.out.  (In fact, none of my a.out
systems have a ld.so.conf, yet they find pkg and X11R6 stuff fine.  ;)

I'm in favor of having ld.so.conf as a fallback, only because some users
have been used to it for a very, very long time and are quite likely to
bitch loudly if that changes with a port's migration from a.out to ELF.  Of
course, our pkgsrc system is almost completely rpath-aware (mostly thanks to
Tim Rightnour), so even with the next a.out release, it will be possible to
install pkgs without ld.so.conf on all systems.

-- 
-- Todd Vierling (Personal tv@pobox.com; Bus. todd_vierling@xn.xerox.com)