The code tried to create a hardlink to the file ($execdir/git-add) it just removed, so ln failed (but because stderr was redirected into /dev/null the error was never seen), and the whole install ended up using "ln -s" instead. Signed-off-by: Alex Riesen <raa.lkml@xxxxxxxxx> --- It created endless symlink loops on cygwin, but obviously nowhere else. Makefile | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
From 943e0824b9fd1a8c2798ae9fd341b6a9b7429cc1 Mon Sep 17 00:00:00 2001 From: Alex Riesen <raa.lkml@xxxxxxxxx> Date: Thu, 28 Aug 2008 15:57:32 +0200 Subject: [PATCH] Fix use of hardlinks in "make install" The code tried to create a hardlink to the file ($execdir/git-add) it just removed, so ln failed (but because stderr was redirected into /dev/null the error was never seen), and the whole install ended up using "ln -s" instead. Signed-off-by: Alex Riesen <raa.lkml@xxxxxxxxx> --- Makefile | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/Makefile b/Makefile index bf400e6..20a1704 100644 --- a/Makefile +++ b/Makefile @@ -1380,7 +1380,7 @@ endif ln git-add$X "$$execdir/git-add$X" 2>/dev/null || \ cp git-add$X "$$execdir/git-add$X"; } && \ { $(foreach p,$(filter-out git-add,$(BUILT_INS)), $(RM) "$$execdir/$p" && \ - ln "$$execdir/git-add$X" "$$execdir/$p" 2>/dev/null || \ + ln "git-add$X" "$$execdir/$p" || \ ln -s "git-add$X" "$$execdir/$p" 2>/dev/null || \ cp "$$execdir/git-add$X" "$$execdir/$p" || exit;) } && \ ./check_bindir "z$$bindir" "z$$execdir" "$$bindir/git-add$X" -- 1.6.0.1.150.g8307.dirty