Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 29 Aug 2010 20:46:03 +0100
From:      Matthew Seaman <m.seaman@infracaninophile.co.uk>
To:        Warren Block <wblock@wonkity.com>
Cc:        Chip Camden <sterling@camdensoftware.com>, FreeBSD Questions <questions@freebsd.org>
Subject:   Re: Moving from one port to another
Message-ID:  <4C7AB8FB.5000706@infracaninophile.co.uk>
In-Reply-To: <alpine.BSF.2.00.1008291320060.52118@wonkity.com>
References:  <AANLkTikkvhVV1nDE92MLZFAoYbkvJhhr_2RynS9S5ett@mail.gmail.com>	<E6E18757-BF60-4278-B54D-04D136974417@cwis.biz>	<AANLkTimasvFwakxx8=D24MkBirha89LHxzj1pLWW0Dei@mail.gmail.com>	<AANLkTimPNt=n=gFdjqjikydOjCLXcdvh9jUEQ6NG=vG0@mail.gmail.com>	<20100829175933.GB44409@libertas.local.camdensoftware.com> <alpine.BSF.2.00.1008291320060.52118@wonkity.com>

next in thread | previous in thread | raw e-mail | index | archive | help
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 <kurt.buff@gmail.com> 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--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4C7AB8FB.5000706>