git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] Makefile: set PERL_PATH and SHELL_PATH unconditionally

From
MKMatt Kraai <kraai@ftbfs.org>
Date
Oct 20, 2009, 09:06 UTC
Message-ID
<1256029588-24128-1-git-send-email-kraai@ftbfs.org>
In-Reply-To
<7vr5syshat.fsf@alter.siamese.dyndns.org>

Do not check whether PERL_PATH and SHELL_PATH are undefined before setting their default values. This prevents them from being set via environment variables.

Signed-off-by: Matt Kraai <kraai@ftbfs.org>
---
 On Mon, Oct 19, 2009 at 11:36:26PM -0700, Junio C Hamano wrote:
 > Matt Kraai <kraai@ftbfs.org> writes:
 > 
 > > The top-level Makefile currently contains
 > >
 > >> ifndef SHELL_PATH
 > >> 	SHELL_PATH = /bin/sh
 > >> endif
 > >> ifndef PERL_PATH
 > >> 	PERL_PATH = /usr/bin/perl
 > >> endif
 > >
 > > The checks are only necessary if these variables need to be overridden
 > > by environment variables, not just via the make command line.  Is this
 > > the case?
 > 
 > It may not have been the original intention, but the above would mean that
 > some people may have learned to run "SHELL_PATH=/bin/ksh make" and
 > changing it would break things for them, no?
 Yes, that's what I was concerned about.  This appears to be possible
 for PERL_PATH on all platforms and for SHELL_PATH on platforms other
 than SCO UnixWare, SunOS, and IRIX.
 > I do not think changing them is bad per-se, but we would need to add extra
 > warnings in the release note to explain this change, that's all.  This
 > would only affect people who build from the source (including distro
 > people) so it is not really a big deal.
 I hope this patch is OK.
 Documentation/RelNotes-1.6.6.txt |    3 +++
 Makefile                         |    8 ++------
 2 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/Documentation/RelNotes-1.6.6.txt b/Documentation/RelNotes-1.6.6.txt
index 5f1fecb..bfda14c 100644
--- a/Documentation/RelNotes-1.6.6.txt
+++ b/Documentation/RelNotes-1.6.6.txt
@@ -58,3 +58,6 @@ release, unless otherwise noted.
    whitespace attribute).  The 'trailing-space' whitespace error class has
    become a short-hand to cover both of these and there is no behaviour
    change for existing set-ups.
+
+ * PERL_PATH and SHELL_PATH may not be overridden using environment
+   variables during the build.
diff --git a/Makefile b/Makefile
index 42b7d60..5bac305 100644
--- a/Makefile
+++ b/Makefile
@@ -392,12 +392,8 @@ ALL_PROGRAMS = $(PROGRAMS) $(SCRIPTS)
 OTHER_PROGRAMS = git$X
 
 # Set paths to tools early so that they can be used for version tests.
-ifndef SHELL_PATH
-	SHELL_PATH = /bin/sh
-endif
-ifndef PERL_PATH
-	PERL_PATH = /usr/bin/perl
-endif
+SHELL_PATH = /bin/sh
+PERL_PATH = /usr/bin/perl
 
 export PERL_PATH
 
-- 
1.6.5
Previous: Junio C HamanoNext: Junio C Hamano
Message 3 of 5 in “Extra checks for PERL_PATH and SHELL_PATH?”
  1. Matt KraaiOct 20, 2009
  2. Junio C HamanoOct 20, 2009
  3. Makefile: set PERL_PATH and SHELL_PATH unconditionallyMatt Kraai, Oct 20, 2009
  4. Junio C HamanoOct 20, 2009
  5. Matt KraaiOct 20, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.