From owner-cvs-all Tue Mar 26 11: 1:22 2002 Delivered-To: cvs-all@freebsd.org Received: from mail.musha.org (daemon.musha.org [218.44.187.2]) by hub.freebsd.org (Postfix) with ESMTP id 71DDF37B405; Tue, 26 Mar 2002 11:01:14 -0800 (PST) Received: from archon.local.idaemons.org (archon.local.idaemons.org [192.168.1.32]) by mail.musha.org (Postfix) with ESMTP id C07AD4D8F6; Wed, 27 Mar 2002 04:01:09 +0900 (JST) Date: Wed, 27 Mar 2002 04:01:09 +0900 Message-ID: <86d6xrgnm2.wl@archon.local.idaemons.org> From: "Akinori MUSHA" To: Maxim Sobolev Cc: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: ports/Mk bsd.port.mk In-Reply-To: <200203250848.g2P8mlf77991@freefall.freebsd.org> References: <200203250848.g2P8mlf77991@freefall.freebsd.org> User-Agent: Wanderlust/2.9.8 (Unchained Melody) SEMI/1.14.3 (Ushinoya) LIMIT/1.14.7 (Fujiidera) APEL/10.3 MULE XEmacs/21.1 (patch 14) (Cuyahoga Valley) (i386--freebsd) Organization: Associated I. Daemons X-PGP-Public-Key: finger knu@FreeBSD.org X-PGP-Fingerprint: 081D 099C 1705 861D 4B70 B04A 920B EFC7 9FD9 E1EE MIME-Version: 1.0 (generated by SEMI 1.14.3 - "Ushinoya") Content-Type: text/plain; charset=US-ASCII Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG At Mon, 25 Mar 2002 00:48:47 -0800 (PST), sobomax wrote: > sobomax 2002/03/25 00:48:47 PST > > Modified files: > Mk bsd.port.mk > Log: > - Significantly reduce overhead associated with bsd.port.mk by replacing .USE > macro, which was invoking separate make(1) process for each of the main > targets, with explicit make(1) targets and specifying the dependencies on > those targets in normal Makefile way. This gives up to 4x speedup. For the > ports relying on the old functionality (i.e. each main target in a separate > make(1) process) provide a USE_SUBMAKE knob, which provides old behaviour; > > - speed-up dependency registration process by the factor of two, which > could be a great win especially for things like GNOME and KDE with very long > dependency chains; > > - clean-up internal structure of the file, so that it is easier to understand > and extend it when necessary. While the performance increase is really great, I found a problem which violates POLA where you can no longer make multiple targets in one invocation of make(1). For example, `make clean build' does not work as expected, and something like `make reinstall package clean' seems to fail sometimes, although I don't know if it depends on the port's dependencies or on the state of the ports' working directories (cookie files). So, unless this is a trivial bug you just missed which can be fixed shortly, I think you'd better back the change out for the moment pending investigation and solution because 5.0-DP1 is coming soon and we don't have enough time to make sure we get all the ports and scripts happy. Regards, -- / /__ __ Akinori.org / MUSHA.org / ) ) ) ) / FreeBSD.org / Ruby-lang.org Akinori MUSHA aka / (_ / ( (__( @ iDaemons.org / and.or.jp "Somewhere out of a memory.. of lighted streets on quiet nights.." To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message