perl5.8 fixup

Bradley Giesbrecht brad at pixilla.com
Sat Mar 7 13:49:56 PST 2009


On Mar 7, 2009, at 9:55 AM, Ryan Schmidt wrote:

> On Mar 7, 2009, at 10:17, Bradley Giesbrecht wrote:
>
>>> Did you mean that the perl5.8 port would declare dependencies on  
>>> each of these perl5.8 module ports, e.g. "depends_lib-append p5- 
>>> some-module"? If so, I don't think that can work, since the  
>>> modules require perl5.8 to build.
>>
>> True, so can we make a wrapper port that:
>> depends_lib-append perl5 all_the_default_p5's
>
> We could...
>
>> So you can't run "port depends_lib-append" for post-destroot?
>
> I'm not sure what you mean.
>
> In a portfile, dependencies need to be declared outside of any phase  
> so that MacPorts can compute a port's dependencies before it begins  
> dealing with the port.

I don't understand what I mean here either :)

>> Make pseudo port perl5-p5-base. Installs all the formerly-built-in  
>> modules. Add port perl5-p5-base as a depends_lib to each and every  
>> p5 that is not in the perl5-p5-base group of ports. Over time it  
>> would be nice to have the non-base p5's depend directly on the p5  
>> as opposed to the perl5-p5-base port.
>
> We could do this... It's probably easier to modify the perl5  
> portgroup to always depend on this perl5-p5-base port. That way no  
> ports need to deal with it, except those few perl ports that don't  
> use the perl5 portgroup (if there even are any like that).

Would this allow updating a p5 in the portgroup without -f?

>> It would be nice to have a way of adding these types of modules  
>> (could also be python and others) in a post-destroot phase and not  
>> have them be required or registered to the port itself like so:
>>
>> perl5:Portfile
>>
>> default_variants +perl5-p5-base
>>
>> variant perl5-p5-base description {"Install default perl modules"} {
>>   set p5-base {"p5-mod1","p5-mod2"}
>> }
>>
>> post-destroot {
>>   if {[variant_isset perl5-p5-base]} {
>>       foreach p5_module $p5-base} {
>>           port install $p5_module
>>       }
>>   }
>> }
>
> I'm not sure I follow.

Have the perl5 Portfile install the base p5's after perl5 activation  
so the p5's dependency on perl5 is met.
I don't know if this can be done but it was my idea of how to have the  
p5's as seperate ports but still be installed with perl5.

//Brad


More information about the macports-dev mailing list