summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Alex Riesen <raa.lkml@gmail.com>2008-08-28 15:57:32 +0200
committerLibravatar Junio C Hamano <gitster@pobox.com>2008-08-29 22:37:04 -0700
commit4e3ae59ef63475411f4c073ba3a1478b1ef73b9a (patch)
tree261cb427b65f224847ab90654ca8082942b9d863
parentMakefile: always provide a fallback when hardlinks fail (diff)
downloadtgif-4e3ae59ef63475411f4c073ba3a1478b1ef73b9a.tar.xz
Fix use of hardlinks in "make install"
The code failed to filter-out git-add properly on platforms were $X is not empty (ATM there is only one such a platform). Than it tried to create a hardlink to the file ($execdir/git-add) it just removed (because git-add is first in the BUILT_INS), 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@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--Makefile2
1 files changed, 1 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index 588bf5aee5..b6df1e9d8b 100644
--- a/Makefile
+++ b/Makefile
@@ -1370,7 +1370,7 @@ endif
{ $(RM) "$$execdir/git-add$X" && \
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" && \
+ { $(foreach p,$(filter-out git-add$X,$(BUILT_INS)), $(RM) "$$execdir/$p" && \
ln "$$execdir/git-add$X" "$$execdir/$p" 2>/dev/null || \
ln -s "git-add$X" "$$execdir/$p" 2>/dev/null || \
cp "$$execdir/git-add$X" "$$execdir/$p" || exit;) } && \