Naive question about perl versions (LaTeXML)

Ryan Schmidt ryandesign at macports.org
Tue Feb 17 19:22:26 PST 2015


On Feb 17, 2015, at 2:36 PM, Bruce Miller wrote:

> Hi all;
>  The portfile for LaTeXML (with the help
> of mojca and others on this list) now has lines
> to the effect:
> 
> PortGroup           perl5 1.0
> perl5.branches      5.8 5.10 5.12 5.14 5.16 5.18 5.20
> 
> and
> 
> if {${perl5.major} ne ""} {
>    depends_lib-append \
>        port:p${perl5.major}-archive-zip \
>        port:p${perl5.major}-file-which \
>  ...
> 
> My understanding is that LaTeXML is thus
> ready to run under "any" version of perl5.
> 
> But:
> (1) the listing under available ports for LaTeXML
>  shows dependencies on p5.16-archive-zip, etc.
> and
> (2) a user reported a problem when trying to install
> LaTeXML that it depended on p5.12-archive-zip which was
> obsolete, recommending p5.16-archive-zip.
> 
> Is the reason for (1) that 5.16 is currently the "default" perl,
> and the reason for (2) that that user currently has perl 5.12
> installed? (and thus should upgrade to perl 5.16)
> 
> Just checking that I understand what's going on;
> I'm preparing to make a release 0.8.1 of LaTeXML
> and want to get it right...

It sounds like the LaTeXML port builds itself differently (with different dependencies) depending on what variant of the perl5 port is installed. Ports that change their behavior depending on what other ports are already installed is an antipattern. Port builds should always do the same thing, regardless what else is already on the user's system. So I don't know why this functionality of the perl5 portgroup exists.



More information about the macports-dev mailing list