From owner-freebsd-ports@FreeBSD.ORG Sat Jan 1 19:04:23 2011 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BDC9F1065674 for ; Sat, 1 Jan 2011 19:04:23 +0000 (UTC) (envelope-from dougb@FreeBSD.org) Received: from mail2.fluidhosting.com (mx21.fluidhosting.com [204.14.89.4]) by mx1.freebsd.org (Postfix) with ESMTP id 67EA18FC12 for ; Sat, 1 Jan 2011 19:04:22 +0000 (UTC) Received: (qmail 19033 invoked by uid 399); 1 Jan 2011 19:04:22 -0000 Received: from localhost (HELO doug-optiplex.ka9q.net) (dougb@dougbarton.us@127.0.0.1) by localhost with ESMTPAM; 1 Jan 2011 19:04:22 -0000 X-Originating-IP: 127.0.0.1 X-Sender: dougb@dougbarton.us Message-ID: <4D1F7AB4.6030903@FreeBSD.org> Date: Sat, 01 Jan 2011 11:04:20 -0800 From: Doug Barton Organization: http://SupersetSolutions.com/ User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.9.2.13) Gecko/20101212 Thunderbird/3.1.7 MIME-Version: 1.0 To: Matthew Seaman References: <20101231091044.GA98464@lordsith.net> <4D1E8866.7050509@FreeBSD.org> <4D1F3F4A.5060708@infracaninophile.co.uk> In-Reply-To: <4D1F3F4A.5060708@infracaninophile.co.uk> X-Enigmail-Version: 1.1.2 OpenPGP: id=1A1ABC84 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: marco , freebsd-ports Subject: Re: ports-mgmt/portconf , ports-mgmt/portmaster and make args X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Jan 2011 19:04:23 -0000 On 01/01/2011 06:50, Matthew Seaman wrote: > On 01/01/2011 01:50, Doug Barton wrote: >> If someone can come up with a programmatic way of determining if such >> settings exist in ports.conf I'd be willing to consider adding the >> support, but given the wide variety of syntax that is supported I think >> such a thing would be difficult. > > There's a NO_PACKAGE variable used to prevent the build cluster from > generating packages, or at least, from uploading packages to the FTP > servers. You could (ab)use this to mark packages you always want to > install from source -- so, choosing apache22 as an example, you could > put something like this in /etc/make.conf: > > .if ${.CURDIR:M*/www/apache22} > NO_PACKAGE= yes > .endif > > or you could put NO_PACKAGE=yes into > /usr/ports/www/apache22/Makefile.local or use portconf or various other > ways. > > portmaster would then have to run something on the lines of: > > cd ${PORTSDIR}/www/apache22 ; make -V NO_PACKAGE > > to detect the setting. I wouldn't want to use the same knob, but I think testing for PT_NO_INSTALL_PACKAGE=true would be quite acceptable, and has the benefit of also working without portconf. I suggest PT_ for "Ports Tool" in case any of the other tool authors want to use the same convention. The downside of this is that every make variable I test for adds anywhere from 0.2 to 0.5 seconds per port that I have to test (which relative to the other things that portmaster does per-port is an eternity). However given that this would only apply when the port needs updating, and only if one of the packages options is in use, I think the cost is acceptable. Marco, does this sound like it would meet your needs? Matthew, another great idea, as always. :) Doug -- Nothin' ever doesn't change, but nothin' changes much. -- OK Go Breadth of IT experience, and depth of knowledge in the DNS. Yours for the right price. :) http://SupersetSolutions.com/