Date: Wed, 17 Dec 2008 18:05:50 +0000 From: Matthew Seaman <m.seaman@infracaninophile.co.uk> To: Tom Worster <fsb@thefsb.org> Cc: Paul Schmehl <pauls@utdallas.edu>, Steve Bertrand <steve@ibctech.ca>, freebsd-questions@freebsd.org, Mel <fbsd.questions@rachie.is-a-geek.net> Subject: Re: lang/php5 port Message-ID: <49493F7E.7050508@infracaninophile.co.uk> In-Reply-To: <C56E920E.6B91%fsb@thefsb.org> References: <C56E920E.6B91%fsb@thefsb.org>
next in thread | previous in thread | raw e-mail | index | archive | help
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--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?49493F7E.7050508>