Subject: CVS commit: sharesrc/share/mk
To: None <source-changes@netbsd.org>
From: Luke Mewburn <lukem@netbsd.org>
List: source-changes
Date: 12/28/2001 03:32:41
Module Name:	sharesrc
Committed By:	lukem
Date:		Fri Dec 28 01:32:41 UTC 2001

Modified Files:
	basesrc/lib/libc: Makefile
	basesrc/lib/libcrypt: Makefile
	basesrc/lib/libcrypto: Makefile
	basesrc/lib/libedit: Makefile
	basesrc/lib/libipsec: Makefile
	basesrc/lib/libkvm: Makefile
	basesrc/lib/libm: Makefile
	basesrc/lib/libm/arch/i387: Makefile
	basesrc/lib/libterm: Makefile
	basesrc/lib/libutil: Makefile
	basesrc/lib/libz: Makefile
	basesrc/libexec/ld.elf_so: Makefile
	basesrc/sbin/init: Makefile
	gnusrc/gnu/lib/libstdc++/config: Makefile
	sharesrc/share/mk: bsd.README bsd.lib.mk bsd.own.mk bsd.prog.mk

Log Message:
* Add user-controlled mk.conf variables
	- SHLIBDIR	Location to install shared libraries if ${USE_SHLIBDIR}
			is "yes".  Defaults to "/usr/lib".

	- USE_SHLIBDIR	If "yes", install shared libraries in ${SHLIBDIR}
			instead of ${LIBDIR}.  Defaults to "no".
			Sets ${_LIBSODIR} to the appropriate value.
			This may be set by individual Makefiles as well.

	- SHLINKDIR	Location of shared linker.  Defaults to "/usr/libexec".
			If != "/usr/libexec", change the dynamic-linker
			encoded in shared programs

* Set USE_SHLIBDIR for libraries used by /bin and /sbin:
	libc libcrypt libcrypto libedit libipsec libkvm libm libmi387
	libtermcap libutil libz

* If ${_LIBSODIR} != ${LIBDIR}, add symlinks from ${LIBDIR}/${LIB}.so*
  to ${_LIBSODIR}/${LIB}.so* for compatibility.

* Always install /sbin/init statically (for now)

The net effect of these changes depends on how the variables are set:

  1.)	If nothing is set or changed, there is no change from the
	current behaviour:
		- Static /bin, /sbin, and bits of /usr/*
		- Dynamic rest
		- Shared linker is /usr/libexec/ld*so

  2.)	If the following make variables are set:
		LDSTATIC=
		SHLINKDIR=/lib
		SHLIBDIR=/lib
	Then the behaviour becomes:
		- Dynamic tools
		- .so libraries used by /bin and /sbin are installed to /lib,
		  with symlinks from /usr/lib/lib*so to -> /lib/lib*so
		  where appropriate
		- Shared linker is /lib/ld*so

  3.)	As per 2.), but add the following variable:
		USE_SHLIBDIR=yes
	This forces all .so's to be instaleld in /lib (with compat
	symlinks), not just those tagged by their Makefiles to be.
	Again, compat symlinks are installed


To generate a diff of this commit:
cvs rdiff -r1.99 -r1.100 basesrc/lib/libc/Makefile
cvs rdiff -r1.10 -r1.11 basesrc/lib/libcrypt/Makefile
cvs rdiff -r1.12 -r1.13 basesrc/lib/libcrypto/Makefile
cvs rdiff -r1.20 -r1.21 basesrc/lib/libedit/Makefile
cvs rdiff -r1.5 -r1.6 basesrc/lib/libipsec/Makefile
cvs rdiff -r1.36 -r1.37 basesrc/lib/libkvm/Makefile
cvs rdiff -r1.55 -r1.56 basesrc/lib/libm/Makefile
cvs rdiff -r1.2 -r1.3 basesrc/lib/libm/arch/i387/Makefile
cvs rdiff -r1.24 -r1.25 basesrc/lib/libterm/Makefile
cvs rdiff -r1.31 -r1.32 basesrc/lib/libutil/Makefile
cvs rdiff -r1.15 -r1.16 basesrc/lib/libz/Makefile
cvs rdiff -r1.40 -r1.41 basesrc/libexec/ld.elf_so/Makefile
cvs rdiff -r1.24 -r1.25 basesrc/sbin/init/Makefile
cvs rdiff -r1.7 -r1.8 gnusrc/gnu/lib/libstdc++/config/Makefile
cvs rdiff -r1.84 -r1.85 sharesrc/share/mk/bsd.README
cvs rdiff -r1.194 -r1.195 sharesrc/share/mk/bsd.lib.mk
cvs rdiff -r1.240 -r1.241 sharesrc/share/mk/bsd.own.mk
cvs rdiff -r1.143 -r1.144 sharesrc/share/mk/bsd.prog.mk

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.