That is true, when they are related. But I have also had a bunch of times where two ports at both outdated, and are not at all related. But, by default, macports stops when port A gives an error, so it never gets to build B, even though there is no dependency.

In those cases, I will do:
sudo port upgrade B
and then B upgrades just fine. By doing it that way, you are not going to cause any problems, because if B actually depends on A, then when you do the above it will first try to upgrade A, and give an error. But, if they are in fact un-related, then B will upgrade fine.

Perhaps there is an easier way to accomplish this? Because, I have also had cases with a bunch of outdated ports, and the first one gives an error. At that point it is hard to figure out which ones are dependencies on each other. If I gives an error, I often end up manually doing:
sudo port upgrade B C D E F
But, then maybe I will get B C D to build fine, but E was actually related to A, so it tries to build A and gives the error again. And that has me thinking about a wish list item: Seems like it would be nice to have some kind of flag that essentially says, "build what you can, and skip ports that are giving errors and their dependents, but upgrade other independent things"


Sounds to me that you want the equivalent of "make -k"
       -k, --keep-going
Continue as much as possible after an error. While the target that failed, and those that depend on it, cannot be remade, the other dependencies of these targets can be processed all the same.

Sadly, I've asked for this in the past also, and been told "sorry".

So if it didn't come in 2.0 (haven't upgraded yet), then it's probably not going to come.

Michael
---
PGP/GPG accepted; key 25D85CE0

Political and economic blog of a strict constitutionalist
http://StrictConstitution.BlogSpot.com

_______________________________________________
macports-users mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macports-users

Reply via email to