Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 31 May 2002 14:40:21 -0700
From:      Terry Lambert <tlambert2@mindspring.com>
To:        jos@catnook.com
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: Improving GNU make compatibility in BSD make (+ patch)
Message-ID:  <3CF7EDC5.CF27B997@mindspring.com>
References:  <20020531024250.GA90997@lizzy.catnook.com> <3CF73679.A5AB7886@mindspring.com> <20020531170746.GA93242@lizzy.catnook.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Jos Backus wrote:
> On Fri, May 31, 2002 at 01:38:17AM -0700, Terry Lambert wrote:
> > The biggest problem with GNU make that I've seen is re-expansion
> > of variable variables.
> >
> > The suggested fix doesn't address that, so it won't fix the most
> > common "compatability problem".
> 
> So what? It fixes (in a backward-compatible way because ``$^'' isn't used in
> BSD make) one incompatibility without which I have to have two different
> Makefiles in the simple case I am thinking about. It's at least an incremental
> improvement that doesn't break anything afaIcs.

1)	Please see the references I cited.  I believe "$^" is used in
	a BSD make, even if it's not in the FreeBSD make, and that in
	a future version of FreeNSD make, it ought to have the function
	of the BSD make that uses it, not GNU make.

2)	I am not comfortable with changing FreeBSD make into GNU make.

3)	I am not comfortable adding features to FreeBSD make which
	render makefiles, which are then written to use these newly
	added features, non-portable to other BSD systems.

4)	There are *already* enough cases where people have written
	"sh" scripts with "bash" syntax, so that they *claim* they
	are "sh" scripts, but are in fact "bash" scripts.  I would
	hate to see the same thing happen to "makefiles" to turn
	them into "gmakefiles".

5)	What you've added is a synonym for something that's already
	there; it is better to change the makefile to use the existing
	syntax, then it is to change the "make" to add new syntax.

6)	What are you going to do, when you need to compile on Solaris?

7)	What are you going to do when you need to compile on AIX?

8)	How is "make" different from "cc" or "tar"?  If we are going
	to add the features, why not "just use GNU make instead"?

9)	Why not "just use Linux instead"?

That last is a reductio ad absurdum... but I really don't see what
making this change accomplishes, other than making FreeBSD "toe the
GNU line".

-- Terry

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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3CF7EDC5.CF27B997>