> On Jan 4, 2017, at 10:02 PM, Ryan Schmidt <ryandes...@macports.org> wrote:
> 
> On Jan 4, 2017, at 07:52, Adam Dershowitz wrote:
> 
>> So, yes it seems that the on the new machine I ended up with gcc6 being 
>> universal, so then cctools, ld64-latest, llvm-3.9 etc are all universal.  
>> But, the strange thing is that gcc6 has no dependents, and I didn’t 
>> explicitly install it.  So, I’m not sure what caused it to be installed.  
>> And, on the new machine it, and the chain down, installed +universal, while 
>> on the older machine it installed the default variant.  Both computers 
>> installed gcc6 6.2.0_2.  
>> So, my academic question is why did this happen?  And, the related questions 
>> are what port would have installed gcc6? Since I see this:
>> $port dependents gcc6
>> gcc6 has no dependents.
> 
> I don't know. If you don't need gcc6, don't install it / uninstall it.

It appears that build dependencies don’t show up with the dependencies command? 
 So, some installed port might have required gcc6 to install, but doesn’t need 
it for runtime.  

> 
> 
>> And, is there an easy way to figure out which ports don’t actually have to 
>> be universal and to uninstall them as universal and reinstall them as 
>> default, given the whole chain of dependents?  
>> It seems to me that +universal end up much larger, and also take longer to 
>> build, since mostly the buildbots provide just default variants.  
> 
> There is no easy way to un-universal your ports after the have been installed 
> with the universal variant. You'll have to identify them all and reinstall 
> them without universal, if that's what you want.
> 



The old machine, and myports.txt, both have the default gcc6.  While the new 
machine ended up with gcc6, default, but not active, and an active gcc6 
+universal.  So, it looks like during the migration that something decided that 
it had to be universal, and forced it to be rebuilt.
But, if I understand you correctly, I would need to figure out all of the 
dependencies, and then, in the correct order, uninstall +universal, and 
reinstall default.  It seems that about 15% of my ports are installed 
universal.  I assume that some default to that, and then all of the 
dependencies of that port are then rebuilt as universal?  But, there is no easy 
way to figure out which ones and what the order would be?

Any suggestions for how to clean this up?  

Thanks,

—Adam

Reply via email to