Re: [PATCH] Correct references to /usr/bin/python which may not exist on certain systems
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:48:28
"R. Tyler Ballance" [off-list ref] writes:
quoted hunk
FreeBSD for example does not ship with a /usr/bin/python such that Python installed from ports will be located by default in /usr/local/bin ---diff --git a/Makefile b/Makefile index 3a6c6ea..2b248b4 100644 --- a/Makefile +++ b/Makefile@@ -444,7 +444,7 @@ ifndef PERL_PATH PERL_PATH = /usr/bin/perl endif ifndef PYTHON_PATH - PYTHON_PATH = /usr/bin/python + PYTHON_PATH = /usr/bin/env python endif
This wouldn't work very well, as XYZ_PATH is expected to point at full
path to the executable. You should be able to say:
test -f '$(XYZ_PATH_SQ)'
Yes, TCL_PATH and TCLTK_PATH may already be broken the same way, but I
don't think we want to make things worse.
I think setting PYTHON_PATH to /usr/local/bin/python inside
ifeq ($(uname_S),FreeBSD)
...
endif
block would be more in-line with the current design of the Makefile.
quoted hunk
diff --git a/contrib/fast-import/import-zips.py b/contrib/fast-import/import-zips.py index 7051a83..82f5ed3 100755 --- a/contrib/fast-import/import-zips.py +++ b/contrib/fast-import/import-zips.py@@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/env python
These changes to contrib/ are correct and necessary, as we don't replace them with Makefile targets like we do for the scripted Porcelains, if people want to run them directly (or copy them out literally) out of contrib/ area. .