From e88717b61d6e9f633f55ab99c6815b9da60d0b63 Mon Sep 17 00:00:00 2001 From: bde Date: Thu, 5 Sep 1996 17:53:13 +0000 Subject: [PATCH] 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. --- share/mk/bsd.obj.mk | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/share/mk/bsd.obj.mk b/share/mk/bsd.obj.mk index b2370c36803..6ca8645fed8 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 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 -- 2.45.2