From owner-freebsd-ports@FreeBSD.ORG Tue Feb 26 14:16:09 2008 Return-Path: Delivered-To: ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EA73F1065672; Tue, 26 Feb 2008 14:16:09 +0000 (UTC) (envelope-from des@des.no) Received: from tim.des.no (tim.des.no [194.63.250.121]) by mx1.freebsd.org (Postfix) with ESMTP id A4AC613C461; Tue, 26 Feb 2008 14:16:09 +0000 (UTC) (envelope-from des@des.no) Received: from tim.des.no (localhost [127.0.0.1]) by spam.des.no (Postfix) with ESMTP id 9D6E1208C; Tue, 26 Feb 2008 15:16:01 +0100 (CET) X-Spam-Tests: AWL X-Spam-Learn: disabled X-Spam-Score: -0.3/3.0 X-Spam-Checker-Version: SpamAssassin 3.2.4 (2008-01-01) on tim.des.no Received: from ds4.des.no (des.no [80.203.243.180]) by smtp.des.no (Postfix) with ESMTP id 995C32085; Tue, 26 Feb 2008 15:15:59 +0100 (CET) From: =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= To: Anton Berezin References: <86zltpzrxt.fsf@ds4.des.no> <759236930802242324o614598d1i1a8ca3cc8c12478c@mail.gmail.com> <86prulibf4.fsf@ds4.des.no> <759236930802250245j646f5be5k8382bedbfb2a7c1e@mail.gmail.com> <868x19i6ky.fsf@ds4.des.no> <759236930802251702h694c4f5bn2c7c87c7c47c7cc@mail.gmail.com> <20080226122512.GA30778@heechee.tobez.org> <86ve4bsx8l.fsf@ds4.des.no> <20080226140456.GB30778@heechee.tobez.org> Date: Tue, 26 Feb 2008 15:15:59 +0100 In-Reply-To: <20080226140456.GB30778@heechee.tobez.org> (Anton Berezin's message of "Tue\, 26 Feb 2008 15\:04\:56 +0100") Message-ID: <867igrst0g.fsf@ds4.des.no> User-Agent: Gnus/5.110006 (No Gnus v0.6) Emacs/23.0.60 (berkeley-unix) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Cc: ports@freebsd.org, perl@freebsd.org, Yen-Ming Lee , lth@freebsd.org Subject: Re: Port dependencies on p5-Test-* 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: Tue, 26 Feb 2008 14:16:10 -0000 Anton Berezin writes: > Having discussed this at a whiteboard with lth@ (ah, the advantages of > face-to-face communication!), we came up with the following idea for > bsd.perl.mk's implementation. > > PERL_DEPENDS. This will be the one which will be used most of the time, > since (p5-Test-* ports notwithstanding) it is actually difficult to come = up > with cases when we want BUILD_DEPENDS without accompanying RUN_DEPENDS. Mostly correct. Imagine the situtation if MakeMaker wasn't in core; now imagine a Perl package that depends on something other than MakeMaker to generate the Makefile. > PERL_DEPENDS=3D \ > p5-CGI.pm>3:www/p5-CGI.pm \ > devel/p5-Time-HiRes>=3D1.86 \ > textproc/p5-Regexp-Common This is exactly what I was thinking of, which clearly shows that it *was* obvious :) > The second one, which will be good for the vast majority of cases, looses > the package name, which is derived from the port name (by the way, the > p5-CGI.pm case can also be written like this; we cannot, from the top of= our > collective head, come up with a p5 port for which the package name base > differs from the port directory name). I can: p5-libwww installs several Perl modules, none if which is called libwww. > Additionally, bsd.perl.mk maintains a little database for dual-life modul= es, > recording which version is present in which core. Why? If perl isn't installed, build that first. If perl is installed, use 'perl -M$MODULE -e "1;"' to check whether the module exists, or if a certain version is required, 'perl -e "use $MODULE $VERSION;"' > What do people think of this? If we see positive reaction, we'll just > temporarily switch from coding in Perl to coding in make. :-) I'm perfectly willing to implement this myself, if you're allergic to make - or we can do it together at the Oslo QA Hackathon :) DES --=20 Dag-Erling Sm=C3=B8rgrav - des@des.no