Date: Thu, 08 Feb 2001 18:40:09 -0800 From: bmah@FreeBSD.ORG (Bruce A. Mah) To: Jeremy Lea <reg@FreeBSD.ORG> Cc: "Bruce A. Mah" <bmah@FreeBSD.ORG>, freebsd-ports@FreeBSD.ORG Subject: Re: [RFC] make upgrade target for bsd.port.mk Message-ID: <200102090240.f192e9u13590@bmah-freebsd-0.cisco.com> In-Reply-To: <20010208182123.I8780@shale.csir.co.za> References: <200102082347.f18NlgO12046@bmah-freebsd-0.cisco.com> <20010208182123.I8780@shale.csir.co.za>
next in thread | previous in thread | raw e-mail | index | archive | help
--==_Exmh_-24536347P Content-Type: text/plain; charset=us-ascii If memory serves me right, Jeremy Lea wrote: > On Thu, Feb 08, 2001 at 03:47:42PM -0800, Bruce A. Mah wrote: > > If someone finds this idea fatally flawed, that's fine too. > > This will fail if the new port includes a bump in a shared library > version. I had a nagging doubt about this but I wasn't sure. > The idea is implemented in the wrong place. This needs to be done by > pkg_add (which bsd.port.mk should be using). In pkg_add you can > determine if the port should upgrade an existing port automatically - > the easiest and most reliable mechanism being a conflict in installed > files: I disagree (with your first sentence). You can only do pkg_add if you have a package constructed. The only way to make a package (currently) from a port is to actually install all the files. (Whether or not it *should* work this way is another matter. You could make the argument that we should install the port in a scratch directory, create the pkg, and then install it. But then we have problems with non-PREFIX-clean ports.) > If the files we plan on installing overwrite files installed by > (an)other port(s), then we need to upgraded that port/those ports, Aside from the fact that a lot of users have fubar'd package databases because they install old packages on top of new ones, there's the problem that we don't know how to do this without a PLIST, which (as I wrote earlier) we can't do without actually installing something. > regardless of the origin. Even if we don't conflict, we need to upgrade > any port with the same origin as us. (We also need a flag to force X to > upgrade Y). If the port's base names not match, then most likely we > have a real problem, and we should only install with a force flag, and > only do manual upgrades. > > During the upgrade, we need to save any shared libraries installed by > the upgraded port(s). Hmmm, I wonder does this need to be generalized to include other kinds of files too? Cheers, Bruce. --==_Exmh_-24536347P Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.4 (FreeBSD) Comment: Exmh version 2.2 06/23/2000 iD8DBQE6g1iJ2MoxcVugUsMRAoNoAJ99fX0aVeZh6U2YBCpmUpPxTMNcDwCgygmf S3VQm/rOlQt9juM9ZsQsor4= =p2fI -----END PGP SIGNATURE----- --==_Exmh_-24536347P-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200102090240.f192e9u13590>