From owner-cvs-src@FreeBSD.ORG Mon Aug 9 16:08:25 2004 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BBD8B16A4CE; Mon, 9 Aug 2004 16:08:25 +0000 (GMT) Received: from harmony.village.org (rover.village.org [168.103.84.182]) by mx1.FreeBSD.org (Postfix) with ESMTP id EE04243D49; Mon, 9 Aug 2004 16:08:24 +0000 (GMT) (envelope-from imp@bsdimp.com) Received: from localhost (warner@rover2.village.org [10.0.0.1]) by harmony.village.org (8.12.11/8.12.11) with ESMTP id i79G5A7p060181; Mon, 9 Aug 2004 10:05:10 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Mon, 09 Aug 2004 10:05:09 -0600 (MDT) Message-Id: <20040809.100509.63410124.imp@bsdimp.com> To: harti@FreeBSD.org From: "M. Warner Losh" In-Reply-To: <20040809174540.U32590@beagle.kn.op.dlr.de> References: <20040809.092824.11587387.imp@bsdimp.com> <20040809.094110.04712576.imp@bsdimp.com> <20040809174540.U32590@beagle.kn.op.dlr.de> X-Mailer: Mew version 3.3 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit cc: kuriyama@imgsrc.co.jp cc: src-committers@FreeBSD.org cc: cvs-all@FreeBSD.org cc: johan@FreeBSD.org cc: cvs-src@FreeBSD.org Subject: Re: cvs commit: src/usr.bin/make Makefile main.c nonints.h var.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 09 Aug 2004 16:08:26 -0000 In message: <20040809174540.U32590@beagle.kn.op.dlr.de> Harti Brandt writes: : On Mon, 9 Aug 2004, M. Warner Losh wrote: : : MWL>In message: <20040809.092824.11587387.imp@bsdimp.com> : MWL> "M. Warner Losh" writes: : MWL>: In message: <20040809061817.GA53369@numeri.campus.luth.se> : MWL>: Johan Karlsson writes: : MWL>: : On Mon, Aug 09, 2004 at 14:12 (+0900), Jun Kuriyama wrote: : MWL>: : > At Tue, 3 Aug 2004 18:56:31 +0000 (UTC), : MWL>: : > Hartmut Brandt wrote: : MWL>: : > > Log: : MWL>: : > > Put variable assignments from the command line into the MAKEFLAGS : MWL>: : > > variable as required by POSIX. This causes such variables to be : MWL>: : > > pushed into all sub-makes called by the make (except when the MAKEFLAGS : MWL>: : > > variable is explicitely changed in the sub-make's environment). : MWL>: : > > This makes them also mostly un-overrideable in sub-makes except on the : MWL>: : > > sub-make's command line. Therefor specifying 'make CC=icc' will cause : MWL>: : > > icc to be used as C compiler in all sub-makes no matter what the Makefiles : MWL>: : > > itself try to do to the CC variable. : MWL>: : > > : MWL>: : > > This patch also corrects the handling of the MFLAGS variable. MFLAGS : MWL>: : > > contains all the command line flags but not the command line variable : MWL>: : > > assignments. The evaluation of the .MFLAGS or .MAKEFLAGS target now : MWL>: : > > changes both MFLAGS and MAKEFLAGS (they used to change MAKEFLAGS only). : MWL>: : > > Makefiles can use MFLAGS for their own purposes given that they do not : MWL>: : > > except MFLAGS to be undefined at the beginning and that they don't evaluate : MWL>: : > > .MFLAGS or .MAKEFLAGS. MFLAGS should be removed for POSIX compliance, : MWL>: : > > but it is unfortunately heavily used by the X makefiles. : MWL>: : > : MWL>: : > I'm using MAKEOBJDIRPREFIX as a make argument to build the world. : MWL>: : : MWL>: : Don't. : MWL>: : According to make(1) it is an environment variable. : MWL>: : MWL>: The current man page is stunningly vague about this. It says that it : MWL>: respects these environment variables, but it doesn't say they have to : MWL>: be set in the enviornment to the exclusion of setting them on the : MWL>: command line. : MWL> : MWL>So either we can make it work, or document that the variables listed : MWL>in the environment section must be set as environment variables only. : : There is nothing to be made work. Both variables are intended to be used : as environment variables. That they happend to work from the command line : was a side effect of make putting its variables into the environment. : Does the following clarify things enough? Yes. That's great! Warner