Date: Tue, 2 Jul 2013 16:11:34 +0000 (UTC) From: Anton Yuzhaninov <citrin@citrin.ru> To: freebsd-ports@freebsd.org Subject: Re: "portmaster -r perl" rebuild almost everything, including apache24, php53 etc. Message-ID: <kquu3m$bja$1@ger.gmane.org> References: <1306476328.20130621232328@serebryakov.spb.ru> <51C5611D.2000807@passap.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 22 Jun 2013 12:32:29, Boris Samorodov wrote: BS> 21.06.2013 23:23, Lev Serebryakov пишет: >> I have old 9-STABEL eserver, which was converted to pkg-ng some time >> ago. This server has perl5.12, apache24, php53, some php modules, etc. >> installed via ports. >> >> I've tried to upgrade perl5.12 with recommended "portmaster -r perl" >> and it rebuild almost everything, including apache, php, all php >> modules, all apache modules, midnigght commander (mc) and lot more. BS> BS> Well, for me it's not "all" at amount POV: BS> ----- BS> % pkg info | wc -l BS> 726 BS> % pkg info -r perl | wc -l BS> 234 This is because dependencies stored in package database are recursive. Even with pkgng. With old /var/db/pkg was not easy to recursively calculete dependencies when need, and this recursive list was pre-calculeted and stored. I don't know why this is not fixed in pkgng. For example if you have ports: A -> B -> C -> D in package database stored, that A depends on B+C+D, but should only be stored that A depends on B. This recursive dependencies causes different problems - many extra ports to rebuild is only one of this problems. glib among others depends on perl, so with recursive dependencies all ports, that depends on glib will be rebuild by portmaster -r perl with no profit from this rebuild.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?kquu3m$bja$1>