Subject: Re: bmake-20071008 posted
To: Simon Gerraty <firstname.lastname@example.org>
From: Alan Barrett <email@example.com>
Date: 10/12/2007 11:18:32
On Thu, 11 Oct 2007, Simon Gerraty wrote:
> Joerg Sonnenberger <firstname.lastname@example.org> wrote:
> >Can you please merge in the patches to allow specifying arbitrary
> >shells instead of hard-coding them from a single directory? I've
> >mailed you those earlier with a minor bug. That's important for
> >Solaris :-)
> The shell handling in make was cleaned up a while back by dsl I think
> and probably achieves what you are after (see below). This is all
> included in bmake, I suspect the shell handling in configure.in needs
> an overhaul as a result (not that I had any problems on SunOS).
Several people have done things to the shell handling in make. The
change you are probably thinking of is that I added _BASENAME_DEFSHELL
and changed the order of entries in the shells array (job.c revision
1.121 and config.h revision 1.19 in the NetBSD CVS repository).
Hmm, the defshell handling in pkgsrc/devel/bmake's configure
script doesn't appear to have been updated after my changes. The
mapping from DEFSHELL integers to shell names has changed, and
it's now possible to use any arbitrary POSIX-compatible shell.
See [netbsd]/src/tools/make/configure.ac for how I derived
_BASENAME_DEFSHELL and _PATH_DEFSHELLDIR from BSHELL (which is set by
This should probably all change again now that _BASENAME_DEFSHELL is
allowed to be a full path (and yet again if you follow my suggestion to
rename the _DEFSHELL_BASENAME variable).
Is it desirable to retain the old mapping from DEFSHELL values to shell
names? If so, we'd have to shuffle the order of the shells array
again and re-work the _DEFSHELL_BASENAME stuff to suit.
--apb (Alan Barrett)