On Wed, 06 Feb 2008, Joerg Sonnenberger wrote: > attached is the core of a patch from pkgsrc that complements and extends > the DEFSHELL_CUSTOM handling. The patch allows the default location for > each of the shells (sh, ksh, csh) to be set individually via > environment. Getting rid of the assumption behind _PATH_DEFSHELLDIR (that all shells live in the same directory) is very appealing. Once you do that, you can probably rip out the existing DEFSHELL_CUSTOM stuff, letting the new DEFAULT_SH stuff do the same work instead. However, I have never understod why make has built-in knowledge of multiple shells. Why doesn't it just have knowledge of how to drive "sh", along with knowledge of where to find the local system's idea of a good version of "sh"? Does anybody actually put ".SHELL: name=ksh" or ".SHELL: name=csh" in Makefiles, and if so, why can't they start putting ".SHELL: name=csh path=/wherever/bin/csh foo=bar baz=quux" instead? --apb (Alan Barrett)