I have been bitten by this in the past. A run of portmaster -r
some-lib-that-half-of-my-ports-depend-on aborted because of a shared
library error in a dependency which was not recompiled before the
dependent port. I recompiled the dependency with a manual portmaster
$portname, after this portmaster -r had to start all over. I didn't
expect portmaster to clear the PM_DONE flags during non-resumable
operations like rebuilding a single port (and the manpage contains very
little information about -R). My workaround is to use portupgrade for
these manual fixes.
The case where not removing the flags without -[rf] would hurt is
running portmaster -r something, portmaster failing, resolving this
without portmaster -[rf], updating your ports, and run portmaster -R. It
seems fair to consider this behavior undefined. Plus the ports can be
modified in many ways without portmaster, so it would make more sense to
try to detect stale PM_DONE flags than removing them at arbitrary times
(eg. compare the timestamp of the flag to that of the port).
Alson
_______________________________________________
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"