diff options
author | Bruce Evans <bde@FreeBSD.org> | 1996-09-05 17:53:13 +0000 |
---|---|---|
committer | Bruce Evans <bde@FreeBSD.org> | 1996-09-05 17:53:13 +0000 |
commit | 833e666181c271cfeeb743e972f6f59d646b2dff (patch) | |
tree | 3304569efe9d898dc67521d556bc9cfff645ca25 /share/mk/bsd.obj.mk | |
parent | 5b963fa12e8baf1eb6f491cfee6b7849d0aa1dba (diff) | |
download | src-833e666181c271cfeeb743e972f6f59d646b2dff.tar.gz src-833e666181c271cfeeb743e972f6f59d646b2dff.zip |
Fixed `make objlink' (and `make obj' in the (non-default) OBJLINK case).
Running them twice usually destroyed the target binary. E.g., the
second `make objlink' in `make objlink; make; make objlink' replaced
the `cat' binary by a symlink cat@ -> /usr/obj/usr/src/bin/cat.
`ln -fs' is unusable when the target might be a symlink that resolves
to a directory. Then -f applies to a file in the directory and not
to the symlink. This seems to be the standard (and sometimes useful)
behaviour.
Notes
Notes:
svn path=/head/; revision=18051
Diffstat (limited to 'share/mk/bsd.obj.mk')
-rw-r--r-- | share/mk/bsd.obj.mk | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/share/mk/bsd.obj.mk b/share/mk/bsd.obj.mk index b2370c36803b..6ca8645fed89 100644 --- a/share/mk/bsd.obj.mk +++ b/share/mk/bsd.obj.mk @@ -1,4 +1,4 @@ -# $Id: bsd.obj.mk,v 1.6 1996/07/12 06:01:55 pst Exp $ +# $Id: bsd.obj.mk,v 1.7 1996/07/14 11:09:12 peter Exp $ # # The include file <bsd.obj.mk> handles creating 'obj' directory # and cleaning up object files, log files etc. @@ -55,7 +55,8 @@ obj: _SUBDIR ${ECHO} "Unable to create ${.TARGETOBJDIR}."; \ exit 1; \ fi; \ - ln -fs ${.TARGETOBJDIR} ${.CURDIR}/obj; \ + rm -f ${.CURDIR}/obj; \ + ln -s ${.TARGETOBJDIR} ${.CURDIR}/obj; \ ${ECHO} "${.CURDIR} -> ${.TARGETOBJDIR}"; \ fi .endif @@ -65,7 +66,8 @@ obj: _SUBDIR .if !target(objlink) objlink: _SUBDIR @if test -d ${.TARGETOBJDIR}; then \ - ln -fs ${.TARGETOBJDIR} ${.CURDIR}/obj; \ + rm -f ${.CURDIR}/obj; \ + ln -s ${.TARGETOBJDIR} ${.CURDIR}/obj; \ else \ echo "No ${.TARGETOBJDIR} to link to - do a make obj."; \ fi |