Rebuilding png and perl without rebuilding a whole lot of ports
twice
Thomas Mueller
mueller23 at insightbb.com
Mon Jul 16 09:29:50 UTC 2012
from Doug Barton <dougb at FreeBSD.org>:
> You don't actually need to rebuild everything that shows a dependency on
> Perl, most of them are bogus. Setting EXPLICIT_PACKAGE_DEPENDS= true in
> /etc/make.conf helps with this.
> There is no totally clean way to handle this case, as you want to do 2
> completely separate operations in one go. However, there is a way to
> minimize the pain.
> 1. pkg_info -qo p5-\* > p5-list
> 2. pkg_delete -f p5-\*
> 3. for port in `pkg_info -q -R png-1.5.12` ; do
> pkg_info -qo $port
> done > png-list
> 4. portmaster -o lang/perl5.16 lang/perl5.12
> 5. Check the directories in /usr/local/lib/perl5 that are not part of
> 5.16.* for files that are still installed there, use pkg_info -W to find
> out which ports they are related to, and rebuild them.
> 6. portmaster graphics/png `cat p5-list png-list`
Actually I would want to upgrade many of the ports even if they wouldn't be broken by upgrade in png or perl, but not twice.
I already have lists in /var/db/pkg/png-1.4.8/+REQUIRED_BY and similar for Perl that could be used like your p5-list and png-list.
Problem is how to avoid the duplicates, my scripting knowledge is not so advanced,
I guess I need to read up on tcsh, not to mention bash and ksh.
Or any way to make portmaster omit a port upgraded on the last run?
Tom
More information about the freebsd-ports
mailing list