From owner-freebsd-ports@FreeBSD.ORG Mon Jul 16 07:58:13 2012 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx2.freebsd.org (mx2.freebsd.org [IPv6:2001:4f8:fff6::35]) by hub.freebsd.org (Postfix) with ESMTP id F0FA4106564A for ; Mon, 16 Jul 2012 07:58:12 +0000 (UTC) (envelope-from dougb@FreeBSD.org) Received: from opti.dougb.net (hub.freebsd.org [IPv6:2001:4f8:fff6::36]) by mx2.freebsd.org (Postfix) with ESMTP id 844DD14D9BC; Mon, 16 Jul 2012 07:58:12 +0000 (UTC) Message-ID: <5003C994.7030909@FreeBSD.org> Date: Mon, 16 Jul 2012 00:58:12 -0700 From: Doug Barton Organization: http://SupersetSolutions.com/ User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:13.0) Gecko/20120621 Thunderbird/13.0.1 MIME-Version: 1.0 To: Thomas Mueller References: <4E.69.28589.724C3005@smtp01.insight.synacor.com> In-Reply-To: <4E.69.28589.724C3005@smtp01.insight.synacor.com> X-Enigmail-Version: 1.4.2 OpenPGP: id=1A1ABC84 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: freebsd-ports@freebsd.org Subject: Re: Rebuilding png and perl without rebuilding a whole lot of ports twice. X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Jul 2012 07:58:13 -0000 On 07/16/2012 00:35, Thomas Mueller wrote: > I have to portupgrade/portmaster both graphics/png and lang/perl, and > these both require rebuilding all ports that depend on these two. 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` hth, Doug -- Change is hard.