From owner-freebsd-questions@FreeBSD.ORG Sun Aug 29 19:46:19 2010 Return-Path: Delivered-To: questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7DEC710656B7 for ; Sun, 29 Aug 2010 19:46:19 +0000 (UTC) (envelope-from m.seaman@infracaninophile.co.uk) Received: from smtp.infracaninophile.co.uk (smtp6.infracaninophile.co.uk [IPv6:2001:8b0:151:1:3fd3:cd67:fafa:3d78]) by mx1.freebsd.org (Postfix) with ESMTP id CE1698FC1D for ; Sun, 29 Aug 2010 19:46:18 +0000 (UTC) Received: from seedling.black-earth.co.uk (seedling.black-earth.co.uk [81.187.76.163]) (authenticated bits=0) by smtp.infracaninophile.co.uk (8.14.4/8.14.4) with ESMTP id o7TJkAjH068544 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Sun, 29 Aug 2010 20:46:10 +0100 (BST) (envelope-from m.seaman@infracaninophile.co.uk) Message-ID: <4C7AB8FB.5000706@infracaninophile.co.uk> Date: Sun, 29 Aug 2010 20:46:03 +0100 From: Matthew Seaman Organization: Infracaninophile User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-GB; rv:1.9.2.8) Gecko/20100802 Thunderbird/3.1.2 MIME-Version: 1.0 To: Warren Block References: <20100829175933.GB44409@libertas.local.camdensoftware.com> In-Reply-To: X-Enigmail-Version: 1.1.1 OpenPGP: id=60AE908C Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enigD694D761063F91B01337C48F" X-Virus-Scanned: clamav-milter 0.96.2 at lucid-nonsense.infracaninophile.co.uk X-Virus-Status: Clean X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_20,DKIM_ADSP_ALL, SPF_FAIL autolearn=no version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on lucid-nonsense.infracaninophile.co.uk Cc: Chip Camden , FreeBSD Questions Subject: Re: Moving from one port to another X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 29 Aug 2010 19:46:19 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enigD694D761063F91B01337C48F Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 29/08/2010 20:20:51, Warren Block wrote: > On Sun, 29 Aug 2010, Chip Camden wrote: >> Quoth Eitan Adler on Sunday, 29 August 2010: >>> On Sat, Aug 28, 2010 at 10:40 PM, Kurt Buff wro= te: >>>> Portupgrade won't, AFAIK, cross branches, though I could be wrong >>>> about that. >>>> >>>> There's a 3.0 branch in /usr/ports/www/squid30 and a 3.1 branch in >>>> /usr/ports/www/squid31, and I want to make the switch to pick up a >>>> feature. >>> >>> portmaster -o www/squid31 www/squid30 >> >> So, if I understand correctly, I could use this to upgrade from python= 26 >> to python27? Or perl 5.8.9 to perl 5.12? and everything that depende= d >> on the former will be upgraded to the latter? Can I say "sweeeeet" in= >> advance? Is there a way to do that with portupgrade, or is this one o= f >> those features that makes portmaster a better mousetrap? >=20 > portupgrade has had it for a long time: >=20 > man portupgrade | less '+/-o ORIGIN' Yes. portmaster has pretty much the same '-o' flag. However, it's not quite so "sweeeeet" (sic) as all that -- all the '-o' flag does, in either portmaster or portupgrade is transfer the dependencies to the new package. In very many cases you would still have to reinstall everything that depends on the replaced package. Sometimes that's because shlibs have different versions -- eg. if you upgrade from mysql-5.0.x to mysql-5.1.x[*], then the ABI version changes and you need to reinstall everything that links against libmysql. With perl, the reason is even simpler -- the perl version number is embedded in the library search path, so until you reinstall, even pure-perl modules are going to be inaccessible. XS modules need relinking in any case. Not entirely sure of the details with python, but certainly any module which is available as dynamically loadable object code will need relinkin= g. Generally, the advice is to forcibly reinstall everything that depends on the package you replaced: portmaster -f -R -r example/port portupgrade -f -r example/port Cheers, Matthew [*] Which is a slightly trickier exercise than most, given you've got to update both mysql-client and mysql-server ports using the '-o' thing. Possibly even the mysql-scripts port if installed. And then you've got to deal with all the dependencies too. --=20 Dr Matthew J Seaman MA, D.Phil. 7 Priory Courtyard Flat 3 PGP: http://www.infracaninophile.co.uk/pgpkey Ramsgate JID: matthew@infracaninophile.co.uk Kent, CT11 9PW --------------enigD694D761063F91B01337C48F Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.14 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkx6uQIACgkQ8Mjk52CukIwMyACeJGXvJSqwvQBrIo+zOzvXOOc+ 0IMAnijvfQTnM2tg8Zu1O8o+HfT/YqHz =yHLx -----END PGP SIGNATURE----- --------------enigD694D761063F91B01337C48F--