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

Re: difftool uses hardcoded perl shebang

From
Jeff King <peff@peff.net>
Date
Dec 19, 2017, 16:45 UTC
Message-ID
<20171219164532.GA6745@sigill.intra.peff.net>
In-Reply-To
<xmqqlghywuct.fsf@gitster.mtv.corp.google.com>
On Tue, Dec 19, 2017 at 08:33:22AM -0800, Junio C Hamano wrote:
Show 16 quoted lines
> Jeff King <peff@peff.net> writes:
> 
> > This is a build-time knob. When you build git, try:
> >
> >   make PERL_PATH='/usr/bin/env perl'
> >
> > (If you don't build your own git, then you might raise the issue with
> > whomever packages your binary).
> 
> I somehow thought ANYTHING_PATH was meant to point at the exact path
> (as opposed to ANYTHING_COMMAND which is a command line), so it is
> within our rights to do
> 
>     test -x "$GIT_EXEC_PATH" || die "Your Git installation is broken"
> 
> but your suggestion above makes such a sanity check impossible.

Hmm, you're right. Though it looks like it is only the test scripts which actually use this feature. It would be nice if we supported this. Unfortunately it's hard to make both of these work:

  make PERL_PATH='/usr/bin/env perl'
  make PERL_PATH='/path with spaces/perl'

We must protect the spaces in the latter case and treat it as a single unit, but would not want to in the former.

In the meantime, pointing to the actual build-time perl is a workaround (but obviously not if it's being done by a third-party packager who has no idea where your perl is).

-Peff
Previous: Junio C HamanoNext: Junio C Hamano
Message 6 of 9 in “difftool uses hardcoded perl shebang”
  1. Jakub ZaverkaDec 19, 2017
  2. Junio C HamanoDec 19, 2017
  3. Jakub ZaverkaDec 19, 2017
  4. Jeff KingDec 19, 2017
  5. Junio C HamanoDec 19, 2017
  6. Jeff KingDec 19, 2017
  7. Junio C HamanoDec 19, 2017
  8. Jeff KingDec 19, 2017
  9. Junio C HamanoDec 19, 2017

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.