From owner-cvs-all@FreeBSD.ORG Thu Jan 8 09:07:33 2004 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from green.bikeshed.org (freefall.freebsd.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 8BABD16A4CE; Thu, 8 Jan 2004 09:07:33 -0800 (PST) Received: from green.bikeshed.org (green@localhost [127.0.0.1]) by green.bikeshed.org (8.12.10/8.12.9) with ESMTP id i08H7WnU011598; Thu, 8 Jan 2004 12:07:33 -0500 (EST) (envelope-from green@green.bikeshed.org) Received: from localhost (green@localhost)i08H7Wbh011594; Thu, 8 Jan 2004 12:07:32 -0500 (EST) Message-Id: <200401081707.i08H7Wbh011594@green.bikeshed.org> X-Mailer: exmh version 2.6.3 04/04/2003 with nmh-1.0.4 To: Ruslan Ermilov In-Reply-To: Message from Ruslan Ermilov <20040108165519.GA33759@FreeBSD.org.ua> From: "Brian F. Feldman" Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Thu, 08 Jan 2004 12:07:32 -0500 Sender: green@green.bikeshed.org cc: "Brian F. Feldman" cc: src-committers@FreeBSD.org cc: cvs-all@FreeBSD.org cc: cvs-src@FreeBSD.org Subject: Re: cvs commit: src/share/mk bsd.obj.mk 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: Thu, 08 Jan 2004 17:07:33 -0000 Ruslan Ermilov wrote: > On Thu, Jan 08, 2004 at 11:36:19AM -0500, Brian F. Feldman wrote: > > Ruslan Ermilov wrote: > > > : $ make MAKE='/usr/bin/make -DFOO' print-make > > > : /usr/bin/make -DFOO > > > : $ make MAKE='/usr/bin/make -DFOO' -V MAKE > > > : make > > > > > > If you really need to access command-line arguments, there > > > is the .MAKEFLAGS variable available for that purpose. > > > > > > But why do you need to ``make MAKE='/usr/bin/make -DFOO' bar'' > > > in the first place instead of simple ``make -DFOO bar''? If > > > "bar" is recursive (i.e., runs ${MAKE} subprocesses), then > > > -DFOO will be properly propagated: > > > > Think about this: what options to ${MAKE} are there that have nothing to do > > with setting defines? There's actually quite a few; the one in particular > > that I care about is "-f"; if I want to use bsd.subdir.mk to simply apply > > one BSD Makefile to several directions (which I _do_), I need to use -f, > > i.e.: > > > > MAKE+= -f ${.CURDIR}/drivers/Makefile.subdriver > > > > The only think that broke this was the cleandir target. > > > Then you should be using the .MAKEFLAS variables here, see > sys/modules/Makefile for one working example, and let me > know if it works for you. Since .MAKEFLAGS is doesn't expand variables, I have to do it this (pretty ugly) way: .MAKEFLAGS:= ${.MAKEFLAGS} -f ${.CURDIR}/drivers/Makefile.subdriver But it does at least work (does it definitely always get added to ${MAKE}?). I don't see the bsd.obj.mk change as being anything but slightly more correct, so I wouldn't see a good reason to remove it either way. I'm glad we've clarified the issue. -- Brian Fundakowski Feldman \'[ FreeBSD ]''''''''''\ <> green@FreeBSD.org \ The Power to Serve! \ Opinions expressed are my own. \,,,,,,,,,,,,,,,,,,,,,,\