From owner-freebsd-ports@FreeBSD.ORG Wed Feb 4 02:37:00 2004 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5FC3216A4CE for ; Wed, 4 Feb 2004 02:37:00 -0800 (PST) Received: from mail.lovett.com (core.lovett.com [216.168.8.20]) by mx1.FreeBSD.org (Postfix) with ESMTP id E7BC643D1F for ; Wed, 4 Feb 2004 02:36:52 -0800 (PST) (envelope-from ade@FreeBSD.org) Received: from ts46-02-qdr1249.mdfrd.or.charter.com ([66.169.242.225] helo=[192.168.1.2]) by mail.lovett.com with asmtp (Exim 4.30; FreeBSD) id 1AoKOq-0006ZU-OW; Wed, 04 Feb 2004 10:36:52 +0000 From: Ade Lovett To: Kris Kennaway In-Reply-To: <20040204082743.GA18871@xor.obsecurity.org> References: <1075871381.76993.21.camel@shumai.marcuscom.com> <200402041012.01057.andy@athame.co.uk> <20040204082743.GA18871@xor.obsecurity.org> Content-Type: text/plain Message-Id: <1075891065.694.25.camel@gorf.lovett.com> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.4.5 Date: Wed, 04 Feb 2004 02:37:45 -0800 Content-Transfer-Encoding: 7bit cc: freebsd-ports@freebsd.org Subject: Re: HEADS UP: Latest round of bsd.*.mk changes X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 04 Feb 2004 10:37:00 -0000 On Wed, 2004-02-04 at 00:27, Kris Kennaway wrote: > On Wed, Feb 04, 2004 at 10:12:00AM +0200, Andy Fawcett wrote: > > yes=LIB_DEPENDS > > build=BUILD_DEPENDS > > run=RUN_DEPENDS (not sure if any ports use it as a runtime dep only) > > That seems unnecessary, as well as being a departure from convention. Convention is made to be broken, code almost identical to this is done to handle the hairy libtool/autoconf/automake stuff, where sometimes it is just as important for a run-time dependency to be kept automagically up-to-date as a shlib version bump. I would therefore suggest an extension: USE_ = [ ':' ] = YES (port dependent default, usually 'lib' below) build (add to BUILD_DEPENDS) run (add to RUN_DEPENDS) lib (add to LIB_DEPENDS) conf ('lib' + extra code in 'configure' step) , if present, merely sets a make(1) variable _useversion_= for port-specific magic. > What's wrong with continuing to BUILD_DEPENDS on the gettext port? Once set to USE_GETTEXT= build, presumably one would be less likely to ever have to touch that part of the dependent port Makefile, and to remain in sync with the rest of the tree - something which I have learned the hard way, trying to keep the libtool stuff up with the rapid number of commits to the tree, and then having to verify no more odd cases snuck in. The above also has the opportunity to stamp out the ever increasing use of _VER= ... variables. Of course, no-one is forcing anybody to actually use (sic) it. The good old fashioned way is right there too. Abstracting out repeated code, particularly that which references ports used by a large percentage of the tree, is a good thing, and should be encouraged. > USE_GETTEXT was added to deal with shared library bumps, which are not > an issue for these ports. I contend that they are an issue. If USE_GETTEXT= build was in place before the whole .12/.13 thing, it could have been changed in ONE place, rather than two large commits across the tree. Whether it would have been any more or less broken is an entirely different issue, the more extensive use of these variables that is made, the easier it becomes to manage. -aDe