From: sof Date: Thu, 16 Apr 1998 12:05:48 +0000 (+0000) Subject: [project @ 1998-04-16 12:05:48 by sof] X-Git-Tag: Approx_2487_patches~792 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=e55388ee0ac898aa781342e74dab5b412a6b08b4;p=ghc-hetmet.git [project @ 1998-04-16 12:05:48 by sof] Handle the case where already exists (as a file) --- diff --git a/mk/target.mk b/mk/target.mk index a89f1b0..44093a5 100644 --- a/mk/target.mk +++ b/mk/target.mk @@ -413,8 +413,18 @@ endif ifneq "$(SCRIPT_LINK)" "" all :: $(SCRIPT_LINK) +# The use of -L is non-standard, but I've yet to find +# an implementation of `test' that doesn't like it. $(SCRIPT_LINK) : $(SCRIPT_PROG) - $(LN_S) $(SCRIPT_PROG) $(SCRIPT_LINK) + @if ( test ! -f $(SCRIPT_LINK) -o -L $(SCRIPT_LINK) ); then \ + echo "Creating a symbol link from $(SCRIPT_PROG) to $(SCRIPT_LINK)"; \ + $(RM) $(SCRIPT_LINK); \ + $(LN_S) $(SCRIPT_PROG) $(SCRIPT_LINK); \ + else \ + echo "Creating a symbol link from $(SCRIPT_PROG) to $(SCRIPT_LINK) failed: \`$(SCRIPT_LINK)' already exists"; \ + echo "Perhaps remove \`$(SCRIPT_LINK)' manually?"; \ + exit 1; \ + fi; endif