On Mon, Oct 23, 2017 at 01:01:42PM +0200, Johannes Schindelin wrote: > On Fri, 20 Oct 2017, Jeff King wrote: > > > @@ -2350,6 +2357,7 @@ GIT-LDFLAGS: FORCE > > # and the first level quoting from the shell that runs "echo". > > GIT-BUILD-OPTIONS: FORCE > > @echo SHELL_PATH=\''$(subst ','\'',$(SHELL_PATH_SQ))'\' >$@+ > > + @echo TEST_SHELL_PATH=\''$(subst ','\'',$(TEST_SHELL_PATH_SQ))'\' >$@+ > > Do we really want to force the test shell path to be hardcoded at runtime? > It may be a better idea not to write this into GIT-BUILD-OPTIONS. My intent was to make it work "out of the box" in the same way as SHELL_PATH does now. So that: echo TEST_SHELL_PATH=whatever >>config.mak make test cd t && ./t1234-* both respect it. Without going through BUILD-OPTIONS, I don't think it makes it into the environment via config.mak (it _does_ if you specify it on the command-line of "make", though). For my purposes it would be fine to just use the environment, but I was trying to have it match the other variables for consistency. > Or alternatively we could prefix the assignment by > > test -n "$TEST_SHELL_PATH" || > > or use the pattern > > TEST_SHELL_PATH="${TEST_SHELL_PATH:-[...]}" I'm not quite sure what this is fixing. Is there a case where we wouldn't have TEST_SHELL_PATH set when running the tests? I think there are already other bits that assume that "make" has been run (including the existing reference to $SHELL_PATH, I think). -Peff