From owner-freebsd-questions@FreeBSD.ORG Wed Dec 17 18:06:06 2008 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 302721065674 for ; Wed, 17 Dec 2008 18:06:06 +0000 (UTC) (envelope-from m.seaman@infracaninophile.co.uk) Received: from smtp.infracaninophile.co.uk (gate6.infracaninophile.co.uk [IPv6:2001:8b0:151:1::1]) by mx1.freebsd.org (Postfix) with ESMTP id 596078FC2D for ; Wed, 17 Dec 2008 18:06:05 +0000 (UTC) (envelope-from m.seaman@infracaninophile.co.uk) Received: from happy-idiot-talk.infracaninophile.co.uk (localhost [IPv6:::1]) (authenticated bits=0) by smtp.infracaninophile.co.uk (8.14.3/8.14.3) with ESMTP id mBHI5vH2053412; Wed, 17 Dec 2008 18:05:59 GMT (envelope-from m.seaman@infracaninophile.co.uk) X-DKIM: Sendmail DKIM Filter v2.7.2 smtp.infracaninophile.co.uk mBHI5vH2053412 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=infracaninophile.co.uk; s=200708; t=1229537160; bh=OHgo5ggP0lwnOQ WIhLcUysyoZw1CMhZ71G+tTUMyLc0=; h=Message-ID:Date:From:MIME-Version: To:CC:Subject:References:In-Reply-To:Content-Type:Cc:Content-Type: Date:From:In-Reply-To:Message-ID:Mime-Version:References:To; z=Mes sage-ID:=20<49493F7E.7050508@infracaninophile.co.uk>|Date:=20Wed,=2 017=20Dec=202008=2018:05:50=20+0000|From:=20Matthew=20Seaman=20|Organization:=20Infracaninophile|User -Agent:=20Thunderbird=202.0.0.18=20(X11/20081125)|MIME-Version:=201 .0|To:=20Tom=20Worster=20|CC:=20Paul=20Schmehl=20

,=20freebsd-questions@freebsd.org,=20=0D=0A=20Mel =20,=0D=0A=20Steve=20Bertrand= 20|Subject:=20Re:=20lang/php5=20port|References:= 20|In-Reply-To:=20|X-Enigmail-Version:=200.95.6|Content-Type:=20multipart/ signed=3B=20micalg=3Dpgp-sha256=3B=0D=0A=20protocol=3D"application/ pgp-signature"=3B=0D=0A=20boundary=3D"------------enig22DD889C6B533 7B45A1B36EC"; b=FqKav4cE8S5Ub/zjVkIDOONcHfBK0sDvZS+iV31pjve3kONgrVJ wgrSyn4RW53MaakC1wN1dhUNtHaS24QpL6Hkdc1moFrHXByw2Z02q831AfzxlcSgGjs ltviiRpuhK5iKBx1sZAKHLqZsRHRFYHFVLrJfzX7sgms7pvWrI8Yo= Message-ID: <49493F7E.7050508@infracaninophile.co.uk> Date: Wed, 17 Dec 2008 18:05:50 +0000 From: Matthew Seaman Organization: Infracaninophile User-Agent: Thunderbird 2.0.0.18 (X11/20081125) MIME-Version: 1.0 To: Tom Worster References: In-Reply-To: X-Enigmail-Version: 0.95.6 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------enig22DD889C6B5337B45A1B36EC" X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.0.1 (smtp.infracaninophile.co.uk [IPv6:::1]); Wed, 17 Dec 2008 18:06:00 +0000 (GMT) X-Virus-Scanned: ClamAV 0.94.2/8777/Wed Dec 17 17:36:59 2008 on happy-idiot-talk.infracaninophile.co.uk X-Virus-Status: Clean X-Spam-Status: No, score=-2.9 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED, DKIM_VERIFIED,NO_RELAYS autolearn=ham version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on happy-idiot-talk.infracaninophile.co.uk Cc: Paul Schmehl , Steve Bertrand , freebsd-questions@freebsd.org, Mel Subject: Re: lang/php5 port X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 17 Dec 2008 18:06:06 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig22DD889C6B5337B45A1B36EC Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable Tom Worster wrote: > i'm certainly not smart enough to know what might be a better way to de= sign > ports like php. but one thing seems odd to me. i ended up with dozens o= f > ports installed that appeared to use nothing but the same php-5.2.8.tar= =2Ebz2 > distfile. relative to what i'm used to with php (i.e. manual configure,= > compile, install) this seems a bit untidy and i'm nervous what it might= mean > for maintenance. Absolutely not. Don't be confused that the various php5-foo ports all us= e the same distfile: it's a big lump of code, and the individual modules se= lectively compile bits of it. Don't be perturbed that you have a large number of p= orts installed -- after all a port is ultimately just a set of files treated t= ogether as a block. This just means you're getting finer grained control over wha= t you've got installed on your machine. No -- the current design of the way PHP is dealt with in ports is brillia= nt. Consider the alternative -- in fact the way it used to be done. As the maintainer of the port of a PHP application I need to ensure certain functionality is compiled into PHP for that application to work. Unless = the functionality I need happens to be a strict subset of what is provide= d by default, I have to create and maintain slave ports of php4 and php5 with = the appropriate configuration flags. Which is a PITA. Now, ask yourself= what happens if I want to install two different PHP applications simultaneousl= y? OK, now we need another set of PHP slave ports to support that combinatio= n. Before you know it, the ports tree is buried in a combinatorial explosion= of different PHP slave ports all with slightly different combinations of opt= ions. No one understands quite what they really should be installing in any par= ticular circumstance. Because the ports are now too difficult to use, st= andard advice on mailing lists is 'compile and install by hand.' Oh, the embarrassment= ! Compare this to the system we have now. PHP application depends on the f= oo, bar and baz modules. php5-foo and php5-bar are already installed, so no= w we just get php5-baz installed automatically to fulfil the dependencies a= s a routine effect of installing the app. Now add yet another app that depen= ds on baz and quux. php5-baz is already installed, so just the php5-quux modul= e is installed as a dependency. Everyone is happy. =46rom the port maintainer's point of view, the setup is particularly swe= et too. At a minimum to declare that your port uses PHP and needs modules foo, ba= r and baz, all you need to do is add a line: USE_PHP =3D foo bar baz to the port's Makefile. In a lot of cases, that really is /all/ you hav= e to do. Even the more complicated stuff with OPTIONS dialogues or that use different module sets for php4 vs. php5 are only slightly harder to deal = with. Cheers, Matthew --=20 Dr Matthew J Seaman MA, D.Phil. 7 Priory Courtyard Flat 3 PGP: http://www.infracaninophile.co.uk/pgpkey Ramsgate Kent, CT11 9PW --------------enig22DD889C6B5337B45A1B36EC Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (FreeBSD) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEAREIAAYFAklJP4UACgkQ8Mjk52CukIz+cACfRjzln2L3cLXjwOb5znJh1P9S tJ8AoIh6Les6quSD7mUOihrOFhHhhSHQ =zqy1 -----END PGP SIGNATURE----- --------------enig22DD889C6B5337B45A1B36EC--