Hi Jeff and Junio, [Others touched this file too, but it appears Jeff wrote the affected functionality.] I hit a glitch with t7006-pager while testing the 1.7.10 rc1/rc2 builds for OpenCSW/Solaris that turned out to be a problem with the way run-command.c:prepare_shell_cmd was setting up external utilities. It was hard coded to fork 'sh -c' instead of honouring the SHELL_PATH as set at build time. In this case, the failing test was t7006-pager:command-specific pager. That test (and some subsequent ones) were setting the pager command used by git log to "sed s/^/foo:/ >actual" which is fine in a POSIX-compliant sh, but not in Solaris' sh. If the user PATH at runtime happened to allow the broken system sh used instead of a sane sh, the ^ is interpreted the same as[1] | and this caused sed to fail with incomplete s/ command and a "command not found: /foo:" from the other forked process. To mitigate this, the following patches introduce the macro SHELL_PATH for use in run-command.c, defaulting to "sh" to preserve the current behaviour and then cause the build system to provide the SHELL_PATH as set by the builder. This means that all processed forked by run-command will use the same interpreter as the shell scripts in the git suite. I considered implementing a dynamically generated .h file for this, similar to common-cmds.h, but thought that was overkill at the current time. If you think that (or something else) is a better fit for the change, let me know and I'll make the required adjustments. Thanks -Ben [1] http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/cmd/sh/cmd.c#184 Ben Walton (2): run-command.c: Define SHELL_PATH macro for use in prepare_shell_cmd Makefile: Set EXTRA_CPPFLAGS during the compilation of run-command Makefile | 2 ++ run-command.c | 6 +++++- 2 files changed, 7 insertions(+), 1 deletions(-) -- 1.7.5.4 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html