diff options
author | bde <bde@FreeBSD.org> | 1997-04-09 16:10:27 +0000 |
---|---|---|
committer | bde <bde@FreeBSD.org> | 1997-04-09 16:10:27 +0000 |
commit | b531e6bb86952d3985923b1181488c61fd5f03cc (patch) | |
tree | 83968417cf50d710239768ef7bb6ef4882a59793 /share/mk/bsd.lib.mk | |
parent | f9744710975755477aadbb88db162e4d0bca1982 (diff) | |
download | FreeBSD-src-b531e6bb86952d3985923b1181488c61fd5f03cc.zip FreeBSD-src-b531e6bb86952d3985923b1181488c61fd5f03cc.tar.gz |
Use `ld -f' (actually `cc -Wl,-f') at `make depend' time to generate
almost perfect dependencies on crt0's and libraries. DPADD and
bsd.libnames.mk should go away soon. Use a new _EXTRADEPEND target
to implement this and to avoid editing of .depend when .depend isn;t
being rebuilt. The afterdepend target doesn't seem to be good for
anything and is now unused.
Fixed LDDESTDIR for the DESTDIR case when ${SHLIBDIR} != /usr/lib.
Added commented-out -nostdlib to LDDESTDIR for the DESTDIR case.
The wrong libraries may be used without this; however it breaks
linkage to crt0 and libc.
Diffstat (limited to 'share/mk/bsd.lib.mk')
-rw-r--r-- | share/mk/bsd.lib.mk | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/share/mk/bsd.lib.mk b/share/mk/bsd.lib.mk index 0a23ef0..66245fb 100644 --- a/share/mk/bsd.lib.mk +++ b/share/mk/bsd.lib.mk @@ -1,5 +1,5 @@ # from: @(#)bsd.lib.mk 5.26 (Berkeley) 5/2/91 -# $Id$ +# $Id: bsd.lib.mk,v 1.50 1997/02/22 13:56:11 peter Exp $ # .if exists(${.CURDIR}/../Makefile.inc) @@ -143,7 +143,8 @@ lib${LIB}_p.a:: ${POBJS} .endif .if defined(DESTDIR) -LDDESTDIR?= -L${DESTDIR}/usr/lib +LDDESTDIR?= -L${DESTDIR}${SHLIBDIR} -L${DESTDIR}/usr/lib +# LDDESTDIR+= -nostdlib .endif .if !defined(NOPIC) @@ -182,10 +183,16 @@ clean: _SUBDIR .endif .if defined(SRCS) -afterdepend: - @(TMP=_depend$$$$; \ - sed -e 's/^\([^\.]*\).o[ ]*:/\1.o \1.po \1.so:/' < .depend > $$TMP; \ - mv $$TMP .depend) +_EXTRADEPEND:: + @TMP=_depend$$$$; \ + sed -e 's/^\([^\.]*\).o[ ]*:/\1.o \1.po \1.so:/' < ${DEPENDFILE} \ + > $$TMP; \ + mv $$TMP ${DEPENDFILE} +.endif +.if defined(LDADD) +_EXTRADEPEND:: + echo lib${LIB}.so.${SHLIB_MAJOR}.${SHLIB_MINOR}: \ + `ld -Bshareable -x -f ${LDDESTDIR} ${LDADD}` >> ${DEPENDFILE} .endif .if !target(install) |