From owner-freebsd-ports@FreeBSD.ORG Tue Feb 26 15:35:22 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 287E21065670; Tue, 26 Feb 2008 15:35:22 +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 DF08F13C4E7; Tue, 26 Feb 2008 15:35:21 +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 C54252085; Tue, 26 Feb 2008 16:35:14 +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 EF7EA207F; Tue, 26 Feb 2008 16:35:13 +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> <867igrst0g.fsf@ds4.des.no> <20080226144203.GC30778@heechee.tobez.org> Date: Tue, 26 Feb 2008 16:35:13 +0100 In-Reply-To: <20080226144203.GC30778@heechee.tobez.org> (Anton Berezin's message of "Tue\, 26 Feb 2008 15\:42\:03 +0100") Message-ID: <86mypnrary.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, lth@freebsd.org, Yen-Ming Lee 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 15:35:22 -0000 Anton Berezin writes: > Dag-Erling Sm=C3=B8rgrav writes: > > 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 $MODU= LE > > $VERSION;"' > > I think it is a bad idea, because > > - you need the "build that first" part (currently we create the complete > list of direct dependencies before actually building anything; too many > things to change with regard to our current procedure if we get rid of > this constraint); The rest of the ports tree checks every dependency right before building it; I don't see why Perl ports should be any different. > - we introduce modules into the equation when before we had only ports a= nd > packages to worry about; Why? I don't see what the difference is between "check if gcc34 exists, otherwise install lang/gcc34" and "check if Test::Unit exists, otherwise install devel/p5-Test-Unit". Or would you say that dependency tests on binaries "introduce binaries into the equation when before we had only ports and packages to worry about"? > - "use $MODULE" might have unanticipated side effects since a bunch of > preamble code is executed [this is not a security risk as such (a > malicious port can do worse things already), but as a general principl= e I > don't like that]; OK, most of these ports define their dependencies in Makefile.PL. Guess how ExtUtils::MakeMaker checks for dependencies... DES --=20 Dag-Erling Sm=C3=B8rgrav - des@des.no