From owner-cvs-all@FreeBSD.ORG Mon Aug 9 05:12:32 2004 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CC22F16A4CE; Mon, 9 Aug 2004 05:12:32 +0000 (GMT) Received: from black.imgsrc.co.jp (black.imgsrc.co.jp [210.226.20.147]) by mx1.FreeBSD.org (Postfix) with ESMTP id 32EBE43D31; Mon, 9 Aug 2004 05:12:32 +0000 (GMT) (envelope-from kuriyama@imgsrc.co.jp) Received: from localhost (localhost [127.0.0.1]) by black.imgsrc.co.jp (Postfix) with ESMTP id 212B150B81; Mon, 9 Aug 2004 14:12:29 +0900 (JST) Received: from black.imgsrc.co.jp (black.imgsrc.co.jp [IPv6:2001:218:422:2::9999]) by black.imgsrc.co.jp (Postfix) with ESMTP id 6320450BBD; Mon, 9 Aug 2004 14:12:27 +0900 (JST) Date: Mon, 09 Aug 2004 14:12:27 +0900 Message-ID: <7mllgolwsk.wl@black.imgsrc.co.jp> From: Jun Kuriyama To: Hartmut Brandt In-Reply-To: <200408031856.i73IuV8c082723@repoman.freebsd.org> References: <200408031856.i73IuV8c082723@repoman.freebsd.org> User-Agent: Wanderlust/2.10.1 (Watching The Wheels) SEMI/1.14.6 (Maruoka) FLIM/1.14.6 (Marutamachi) APEL/10.6 Emacs/21.3 (i386--freebsd) MULE/5.0 (SAKAKI) MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII X-Virus-Scanned: by amavisd 0.1 cc: cvs-src@FreeBSD.org cc: src-committers@FreeBSD.org cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/usr.bin/make Makefile main.c nonints.h var.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 09 Aug 2004 05:12:33 -0000 At Tue, 3 Aug 2004 18:56:31 +0000 (UTC), Hartmut Brandt wrote: > Log: > Put variable assignments from the command line into the MAKEFLAGS > variable as required by POSIX. This causes such variables to be > pushed into all sub-makes called by the make (except when the MAKEFLAGS > variable is explicitely changed in the sub-make's environment). > This makes them also mostly un-overrideable in sub-makes except on the > sub-make's command line. Therefor specifying 'make CC=icc' will cause > icc to be used as C compiler in all sub-makes no matter what the Makefiles > itself try to do to the CC variable. > > This patch also corrects the handling of the MFLAGS variable. MFLAGS > contains all the command line flags but not the command line variable > assignments. The evaluation of the .MFLAGS or .MAKEFLAGS target now > changes both MFLAGS and MAKEFLAGS (they used to change MAKEFLAGS only). > Makefiles can use MFLAGS for their own purposes given that they do not > except MFLAGS to be undefined at the beginning and that they don't evaluate > .MFLAGS or .MAKEFLAGS. MFLAGS should be removed for POSIX compliance, > but it is unfortunately heavily used by the X makefiles. I'm using MAKEOBJDIRPREFIX as a make argument to build the world. Please help about new make. Firstly, my host environment has the latest make(1), and it is used to start buildworld as: # cd /work/HEAD/src # make MAKEOBJDIRPREFIX=/work/HEAD/obj buildworld In this situation, ${BMAKE} in src/Makefile.inc1 includes this assignment: > MAKEFLAGS="-m /work/HEAD/src/tools/build/mk -m /work/HEAD/src/share/mk MAKEOBJDIRPREFIX=/work/HEAD/obj" But before your modification, this was: > MAKEFLAGS="-m /work/HEAD/src/tools/build/mk -m /work/HEAD/src/share/mk " Then now, stage 1.1 of buildworld is failing because installation of libegacy.a was changed from: > sh /work/HEAD/src/tools/install.sh -C -o root -g wheel -m 444 libegacy.a /work/HEAD/obj/work/HEAD/src/i386/legacy/usr/lib to: > sh /work/HEAD/src/tools/install.sh -C -o root -g wheel -m 444 libegacy.a /work/HEAD/obj/legacy/usr/lib which is destination directory was changed by passing $MAKEOBJDIRPREFIX to submake. I don't know how Makefile.inc1 should be fixed, and how this affects to the upgrading path for old environment users. -- Jun Kuriyama // IMG SRC, Inc. // FreeBSD Project