Perl 5.8.8 already present on Leopard;
can I make a "dummy" Portfile?
Philip K.F. Hölzenspies
p.k.f.holzenspies at utwente.nl
Thu Jan 17 07:44:51 PST 2008
On Thursday 17 January 2008 16:21:16 Ryan Schmidt wrote:
> Welcome to MacPorts!
Thank you ;)
> http://trac.macosforge.org/projects/macports/wiki/
> FAQ#WhyisMacPortsusingitsownlibraries
I did indeed read this, but my point is slightly more subtle. Allow me to go
through the entry in the FAQ in an inline manner:
<quote>
First, it makes ports more compatible across different versions of Darwin/OS
X. If we can rely on e. g. openssl 0.9.8 from MacPorts, we don't have to test
every port that needs ssl for every available openssl installation.
</quote>
My point was actually about a Portfile of a very specific version of perl
(5.8.8), which happens to be exactly that version which comes with Leopard.
This means that you only assume the default installation and only if
explicitly mentioned in the Portfile. Thus, only the Portfile for perl5.8
with version 5.8.8 would have a section for platform darwin 9 that exempts
from actually installing it. This is consistent with the observation that
MacPorts didn't actually bother installing it's own gcc, but rather simply
keep on using the gcc installed with the DT package.
<quote>
Apple's software tends to break from time to time (e. g. openssl refuses to
build with an old zlib, but Apple shipped theold headers of the vulnerable
zlib version).
</quote>
Absolutely true. However, when Apple shifts broken software, it does so with a
version of the OS. Tiger contained a funky version of libgmp IIRC, in which
case the libgmp Portfile for the version installed on Tiger would NOT exempt
from installing when on a darwin 8 platform.
<quote>
Third reason is up-to-dateness: Apple only features e. g. Python 2.3, not 2.4,
with which some software does not work. The drawbacks on this behaviour also
are minimal: Wasting 10MB for a Python installation is next to nothing if you
have a GB-harddisk and gain consistency all the way in return.
</quote>
This point still holds. When Portfiles for perl5.8 with version 5.8.9 and
5.8.10 do not have an exemption for darwin 9, they're simply installed. The
quote above is slightly optimistic, however, in assuming a general
up-to-dateness of MacPorts own portfile tree. This is not true, though. Like
I said, ghc required Perl 5.8.8, but the tree contains packages for 5.8.9 and
5.8.10 as well. When another package requires 5.8.9, is perl installed twice?
When yet another package wants 5.8.10, is it installed yet another time? If
this is not the case, what happens with perl 5.10?
Regards,
Philip
More information about the macports-users
mailing list