Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 20 Aug 2000 17:39:20 +1000 (EST)
From:      Bruce Evans <bde@zeta.org.au>
To:        Brian Fundakowski Feldman <green@FreeBSD.org>
Cc:        "Andrey A. Chernov" <ache@nagual.pp.ru>, Marcel Moolenaar <marcel@cup.hp.com>, cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/usr.bin/make Makefile config.h job.c main.c
Message-ID:  <Pine.BSF.4.21.0008201718200.1042-100000@besplex.bde.org>
In-Reply-To: <Pine.BSF.4.21.0008192335330.95612-100000@green.dyndns.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 19 Aug 2000, Brian Fundakowski Feldman wrote:

> On Sun, 20 Aug 2000, Andrey A. Chernov wrote:
> 
> > On Sun, Aug 20, 2000 at 07:55:20AM +1000, Bruce Evans wrote:
> > > They seem to be remarkably broken.  A POSIX.2 draft specifies that make
> > > shall support the SHELL variable, but our make doesn't.  (SHELL has the
> > > [deleted]

The "[deleted]" part was mostly wrong.  The SHELL environment variable
is required not to affect the shell used by `make'.  Only definitions
of SHELL in makefiles and on the command line affect the shell used
by make.  SHELL must be set to a default by `make'.

> > > I'm not sure if .SHELL has any advantages over SHELL.  Anyway, SHELL should
> > > be fixed first since it is standard.  The fix may be as simple as setting
> > 
> > Thanks, Bruce, it is what I try to say from the very beginning of this
> > thread.
> 
> So we should make pmake support ${SHELL}?  This would allow me to
> change it on all compiles easily, but it would break things all over
> the place because things set SHELL without expecting make(1) to be
> using that shell.

No problem, since make is not permitted to use these.  There is a minor
problem with implementing the default setting of SHELL in sys.mk.  The
current "SHELL ?= sh" usually gives the environment value.

> The only functionality I really need is the ability
> to override the default shell value.  Even the variable ${SHELL} does
> not provide that.

I think

	.SHELL: path=ksh

in /etc/make.conf.local is supposed to do this, but it currently gives
core dumps for freeing of a bad pointer.

Bruce



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0008201718200.1042-100000>