Module Name: src
Committed By: joerg
Date: Thu Aug 23 21:21:17 UTC 2012
Modified Files:
src/compat: Makefile.compat
src/lib/i18n_module: Makefile.inc
src/libexec/ld.elf_so: Makefile
src/sbin/ldconfig: Makefile
src/share/mk: bsd.README bsd.lib.mk bsd.prog.mk bsd.shlib.mk
Log Message:
Revert last, it breaks the tricks xsrc uses.
To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.9 src/compat/Makefile.compat
cvs rdiff -u -r1.13 -r1.14 src/lib/i18n_module/Makefile.inc
cvs rdiff -u -r1.113 -r1.114 src/libexec/ld.elf_so/Makefile
cvs rdiff -u -r1.24 -r1.25 src/sbin/ldconfig/Makefile
cvs rdiff -u -r1.299 -r1.300 src/share/mk/bsd.README
cvs rdiff -u -r1.323 -r1.324 src/share/mk/bsd.lib.mk
cvs rdiff -u -r1.276 -r1.277 src/share/mk/bsd.prog.mk
cvs rdiff -u -r1.7 -r1.8 src/share/mk/bsd.shlib.mk
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/compat/Makefile.compat
diff -u src/compat/Makefile.compat:1.8 src/compat/Makefile.compat:1.9
--- src/compat/Makefile.compat:1.8 Thu Aug 23 15:45:02 2012
+++ src/compat/Makefile.compat Thu Aug 23 21:21:14 2012
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.compat,v 1.8 2012/08/23 15:45:02 joerg Exp $
+# $NetBSD: Makefile.compat,v 1.9 2012/08/23 21:21:14 joerg Exp $
#
# Makefile fragment to help implement a multilib set of libraries
@@ -11,6 +11,7 @@ _COMPAT_OPTIONS_MK_=1
LIBDIR= /usr/lib/${MLIBDIR}
SHLIBDIR= /usr/lib/${MLIBDIR}
+SHLIBINSTALLDIR= /usr/lib/${MLIBDIR}
_GCC_CRTBEGIN= ${DESTDIR}/usr/lib/${MLIBDIR}/crtbegin.o
_GCC_CRTBEGINS= ${DESTDIR}/usr/lib/${MLIBDIR}/crtbeginS.o
@@ -26,4 +27,7 @@ NOMAN= # defined
NOINFO= # defined
NOCHECKVER= # defined
+# ld.elf_so
+SHLINKINSTALLDIR= /libexec
+
.endif # _COMPAT_OPTIONS_MK_ }
Index: src/lib/i18n_module/Makefile.inc
diff -u src/lib/i18n_module/Makefile.inc:1.13 src/lib/i18n_module/Makefile.inc:1.14
--- src/lib/i18n_module/Makefile.inc:1.13 Thu Aug 23 15:45:02 2012
+++ src/lib/i18n_module/Makefile.inc Thu Aug 23 21:21:15 2012
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.inc,v 1.13 2012/08/23 15:45:02 joerg Exp $
+# $NetBSD: Makefile.inc,v 1.14 2012/08/23 21:21:15 joerg Exp $
NOLINT= # defined
NOPICINSTALL= # defined
@@ -12,9 +12,11 @@ SHLIB_VERSION_FILE= ${NETBSDSRCDIR}/lib/
.if defined(MLIBDIR)
LIBDIR= /usr/lib/${MLIBDIR}/i18n
SHLIBDIR= /usr/lib/${MLIBDIR}/i18n
+SHLIBINSTALLDIR=/usr/lib/${MLIBDIR}/i18n
.else
LIBDIR= /usr/lib/i18n
SHLIBDIR= /usr/lib/i18n
+SHLIBINSTALLDIR=/usr/lib/i18n
.endif
CPPFLAGS+= -I${NETBSDSRCDIR}/lib/libc/citrus
CPPFLAGS+= -DLOCALEMOD_MAJOR=${SHLIB_MAJOR}
Index: src/libexec/ld.elf_so/Makefile
diff -u src/libexec/ld.elf_so/Makefile:1.113 src/libexec/ld.elf_so/Makefile:1.114
--- src/libexec/ld.elf_so/Makefile:1.113 Thu Aug 23 15:45:02 2012
+++ src/libexec/ld.elf_so/Makefile Thu Aug 23 21:21:15 2012
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.113 2012/08/23 15:45:02 joerg Exp $
+# $NetBSD: Makefile,v 1.114 2012/08/23 21:21:15 joerg Exp $
#
# NOTE: when changing ld.so, ensure that ldd still compiles.
#
@@ -14,6 +14,7 @@ WARNS?=4
PIE_CFLAGS=
PIE_LDFLAGS=
.include <bsd.init.mk> # for MKPIC definition
+.include <bsd.shlib.mk> # for SHLINKINSTALLDIR definition
.if defined(LDELFSO_MACHINE_CPU) && !empty(LDELFSO_MACHINE_CPU) && \
exists(${.CURDIR}/arch/${LDELFSO_MACHINE_CPU})
@@ -80,6 +81,8 @@ xprintf.c: errlist_concat.h
CLEANFILES+= errlist_concat.h
+BINDIR= ${SHLINKINSTALLDIR}
+
CPPFLAGS+= -DLIBDIR=\"${LIBDIR}\" -D_PATH_RTLD=\"${BINDIR}/${PROG}\"
CPPFLAGS+= -I${.CURDIR} -I.
CPPFLAGS+= -DRTLD_LOADER
@@ -95,6 +98,11 @@ COPTS= -O3 -fomit-frame-pointer
COPTS+= -mno-3dnow -mno-mmx -mno-sse -mno-sse2 -mno-sse3
.endif
+
+.if ${SHLIBDIR} != ${LIBDIR}
+CPPFLAGS+= -DRTLD_DEFAULT_LIBRARY_PATH=\"${SHLIBDIR}:${LIBDIR}\"
+.endif
+
# rtld.c and symbol.c use alloca, so disable SSP warnings.
COPTS.rtld.c+= -Wno-stack-protector
COPTS.symbol.c+=-Wno-stack-protector
@@ -125,15 +133,8 @@ ${PROG}: ${OBJS} ${DPADD}
${_MKMSG_LINK} ${PROG}
${CC} ${LDFLAGS} -o ${PROG} ${OBJS} ${LDADD}
-.if ${MKDYNAMICROOT} == "no"
-BINDIR= /usr/libexec
-.else
-BINDIR= /libexec
-.endif
-SHLINKDIR= ${BINDIR}
-
-.if ${SHLINKDIR} != "/usr/libexec"
-SYMLINKS+= ${SHLINKDIR}/${PROG} /usr/libexec/${PROG}
+.if ${SHLINKINSTALLDIR} != "/usr/libexec"
+SYMLINKS+= ${SHLINKINSTALLDIR}/${PROG} /usr/libexec/${PROG}
.endif
.include <bsd.prog.mk>
Index: src/sbin/ldconfig/Makefile
diff -u src/sbin/ldconfig/Makefile:1.24 src/sbin/ldconfig/Makefile:1.25
--- src/sbin/ldconfig/Makefile:1.24 Thu Aug 23 15:45:03 2012
+++ src/sbin/ldconfig/Makefile Thu Aug 23 21:21:16 2012
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.24 2012/08/23 15:45:03 joerg Exp $
+# $NetBSD: Makefile,v 1.25 2012/08/23 21:21:16 joerg Exp $
.include <bsd.own.mk> # For MKPIC
.include <bsd.shlib.mk>
@@ -13,6 +13,10 @@
PROG= ldconfig
SRCS= ldconfig.c shlib.c
+.if ${SHLIBINSTALLDIR} != ${LIBDIR}
+CPPFLAGS+=-DSTANDARD_SEARCH_DIRS=\"${SHLIBINSTALLDIR}\",\"${LIBDIR}\"
+.endif
+
.endif
MAN= ldconfig.8
Index: src/share/mk/bsd.README
diff -u src/share/mk/bsd.README:1.299 src/share/mk/bsd.README:1.300
--- src/share/mk/bsd.README:1.299 Thu Aug 23 15:45:03 2012
+++ src/share/mk/bsd.README Thu Aug 23 21:21:16 2012
@@ -1,4 +1,4 @@
-# $NetBSD: bsd.README,v 1.299 2012/08/23 15:45:03 joerg Exp $
+# $NetBSD: bsd.README,v 1.300 2012/08/23 21:21:16 joerg Exp $
# @(#)bsd.README 8.2 (Berkeley) 4/2/94
This is the README file for the make "include" files for the NetBSD
@@ -1068,11 +1068,14 @@ MKARZERO Normally, ar(1) sets the timest
permissions to be set to 644. This allows .a files
from different builds to be bit identical.
+SHLIBINSTALLDIR Target directory for shared libraries if ${USE_SHLIBDIR}
+ is not "no".
+
SHLIB_MAJOR
SHLIB_MINOR
SHLIB_TEENY Major, minor, and teeny version numbers of shared library
-USE_SHLIBDIR If not "no", use ${SHLIBDIR} instead of ${LIBDIR}
+USE_SHLIBDIR If not "no", use ${SHLIBINSTALLDIR} instead of ${LIBDIR}
as the path to install shared libraries to.
USE_SHLIBDIR must be defined before <bsd.own.mk> is included.
Default: no
@@ -1610,13 +1613,19 @@ included before <bsd.shlib.mk>.
<bsd.own.mk> sets the following variables, if they are not already defined
(defaults are in brackets):
+SHLIBINSTALLDIR If ${USE_SHLIBDIR} is not "no", use ${SHLIBINSTALLDIR}
+ instead of ${LIBDIR} as the base path for shared library
+ installation. [/lib]
+
SHLIBDIR The path to USE_SHLIBDIR shared libraries to use when building
a program. [/lib for programs in /bin and /sbin, /usr/lib
for all others.]
-_LIBSODIR Set to ${SHLIBDIR} if ${USE_SHLIBDIR} is not "no",
+_LIBSODIR Set to ${SHLIBINSTALLDIR} if ${USE_SHLIBDIR} is not "no",
otherwise set to ${LIBDIR}
+SHLINKINSTALLDIR Base path for shared linker. [/libexec]
+
SHLINKDIR Path to use for shared linker when building a program.
[/libexec for programs in /bin and /sbin, /usr/libexec for
all others.]
Index: src/share/mk/bsd.lib.mk
diff -u src/share/mk/bsd.lib.mk:1.323 src/share/mk/bsd.lib.mk:1.324
--- src/share/mk/bsd.lib.mk:1.323 Thu Aug 23 15:45:03 2012
+++ src/share/mk/bsd.lib.mk Thu Aug 23 21:21:16 2012
@@ -1,4 +1,4 @@
-# $NetBSD: bsd.lib.mk,v 1.323 2012/08/23 15:45:03 joerg Exp $
+# $NetBSD: bsd.lib.mk,v 1.324 2012/08/23 21:21:16 joerg Exp $
# @(#)bsd.lib.mk 8.3 (Berkeley) 4/22/94
.include <bsd.init.mk>
@@ -540,7 +540,11 @@ lib${LIB}_g.a:: ${GOBJS} __archivebuild
_LIBLDOPTS=
.if ${SHLIBDIR} != "/usr/lib"
-_LIBLDOPTS+= -Wl,-rpath,${SHLIBDIR} -L=${SHLIBDIR}
+_LIBLDOPTS+= -Wl,-rpath,${SHLIBDIR} \
+ -L=${SHLIBDIR}
+.elif ${SHLIBINSTALLDIR} != "/usr/lib"
+_LIBLDOPTS+= -Wl,-rpath-link,${DESTDIR}${SHLIBINSTALLDIR} \
+ -L=${SHLIBINSTALLDIR}
.endif
# gcc -shared now adds -lc automatically. For libraries other than libc and
Index: src/share/mk/bsd.prog.mk
diff -u src/share/mk/bsd.prog.mk:1.276 src/share/mk/bsd.prog.mk:1.277
--- src/share/mk/bsd.prog.mk:1.276 Thu Aug 23 15:45:03 2012
+++ src/share/mk/bsd.prog.mk Thu Aug 23 21:21:16 2012
@@ -1,4 +1,4 @@
-# $NetBSD: bsd.prog.mk,v 1.276 2012/08/23 15:45:03 joerg Exp $
+# $NetBSD: bsd.prog.mk,v 1.277 2012/08/23 21:21:16 joerg Exp $
# @(#)bsd.prog.mk 8.2 (Berkeley) 4/2/94
.ifndef HOSTPROG
@@ -271,6 +271,9 @@ _PROGLDOPTS+= -Wl,-dynamic-linker=${_SHL
.if ${SHLIBDIR} != "/usr/lib"
_PROGLDOPTS+= -Wl,-rpath,${SHLIBDIR} \
-L=${SHLIBDIR}
+.elif ${SHLIBINSTALLDIR} != "/usr/lib"
+_PROGLDOPTS+= -Wl,-rpath-link,${DESTDIR}${SHLIBINSTALLDIR} \
+ -L=${SHLIBINSTALLDIR}
.endif
__proginstall: .USE
Index: src/share/mk/bsd.shlib.mk
diff -u src/share/mk/bsd.shlib.mk:1.7 src/share/mk/bsd.shlib.mk:1.8
--- src/share/mk/bsd.shlib.mk:1.7 Thu Aug 23 15:45:03 2012
+++ src/share/mk/bsd.shlib.mk Thu Aug 23 21:21:17 2012
@@ -1,8 +1,14 @@
-# $NetBSD: bsd.shlib.mk,v 1.7 2012/08/23 15:45:03 joerg Exp $
+# $NetBSD: bsd.shlib.mk,v 1.8 2012/08/23 21:21:17 joerg Exp $
.if !defined(_BSD_SHLIB_MK_)
_BSD_SHLIB_MK_=1
+.if ${MKDYNAMICROOT} == "no"
+SHLIBINSTALLDIR?= /usr/lib
+.else
+SHLIBINSTALLDIR?= /lib
+.endif
+
.if ${MKDYNAMICROOT} == "no" || \
(${BINDIR:Ux} != "/bin" && ${BINDIR:Ux} != "/sbin" && \
${BINDIR:Ux} != "/libexec" && ${USE_SHLIBDIR:Uno} == "no")
@@ -11,7 +17,17 @@ SHLIBDIR?= /usr/lib
SHLIBDIR?= /lib
.endif
-_LIBSODIR?= ${SHLIBDIR}
+.if ${USE_SHLIBDIR:Uno} != "no"
+_LIBSODIR?= ${SHLIBINSTALLDIR}
+.else
+_LIBSODIR?= ${LIBDIR}
+.endif
+
+.if ${MKDYNAMICROOT} == "no"
+SHLINKINSTALLDIR?= /usr/libexec
+.else
+SHLINKINSTALLDIR?= /libexec
+.endif
.if ${MKDYNAMICROOT} == "no" || \
(${BINDIR:Ux} != "/bin" && ${BINDIR:Ux} != "/sbin" && \