From: Charles Bailey <cbaile...@bloomberg.net>

Signed-off-by: Charles Bailey <cbaile...@bloomberg.net>
---
The main Git Makefile does this, but not the contrib/subtree Makefile.
SHELL_PATH should be respected if set (especially on Solaris where
/bin/sh is very legacy).

The sed command is a copy of one of the ones used for installing .sh
files by the main Git Makefile.

 contrib/subtree/Makefile | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/contrib/subtree/Makefile b/contrib/subtree/Makefile
index d888d45..d9a0ce2 100644
--- a/contrib/subtree/Makefile
+++ b/contrib/subtree/Makefile
@@ -18,6 +18,11 @@ RM       ?= rm -f
 ASCIIDOC = asciidoc
 XMLTO    = xmlto
 
+ifndef SHELL_PATH
+       SHELL_PATH = /bin/sh
+endif
+SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))
+
 ASCIIDOC_CONF = ../../Documentation/asciidoc.conf
 MANPAGE_XSL   = ../../Documentation/manpage-normal.xsl
 
@@ -32,7 +37,8 @@ GIT_SUBTREE_HTML := git-subtree.html
 all: $(GIT_SUBTREE)
 
 $(GIT_SUBTREE): $(GIT_SUBTREE_SH)
-       cp $< $@ && chmod +x $@
+       sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' $< >$@
+       chmod +x $@
 
 doc: $(GIT_SUBTREE_DOC) $(GIT_SUBTREE_HTML)
 
-- 
2.0.2.611.g8c85416

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to