
This is true for the FreeBSD base system, but it is recommended nowadays to use sysutils/portupgrade for managing ports. With portupgrade you can simply do `portupgrade -rf changed_pkg` to recompile all packages depending on the changed one. The only reason why portupgrade is not part of the base system is that it is written in ruby and we are not willing to include ruby in the base.
Heh, I've been using portupgrade for a while but managed to miss that. I usually use it in '-Rr' mode. <rant> Nevetheless, this behaviour ought to be the default. I strongly believe in this principle: Using the standard package tools on a system, in their default configuration, it should be impossible to end up with an inconsistent set of installed packages. Sadly, on FreeBSD and Gentoo this is all too easy. FreeBSD even lets you install several different versions of a package on top of each other - so that when you delete one of them, it deletes some the files belonging to the other version too (only some, because it does the md5 checksum thing). This drives me nuts. At least Gentoo is better in this regard. And the portupgrade scripts try to work around the problems with the FreeBSD ports system by looking for inconsistencies in the database and applying heuristics to try to figure out how they should be fixed. This is crazy - it should be impossible to get the inconsistencies in the first place. </rant> Cheers, Simon