tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: CVS commit: pkgsrc/mk/flavor/pkg



On Sat, Jun 12, 2010 at 12:53:44AM +0000, Greg Troxel wrote:
> Module Name:  pkgsrc
> Committed By: gdt
> Date:         Sat Jun 12 00:53:44 UTC 2010
> 
> Modified Files:
>       pkgsrc/mk/flavor/pkg: replace.mk
> 
> Log Message:
> Repair regression in "make replace" in DESTDIR case.
> 
> "make replace" is defined to replace a package with a newer version,
> and update depdending packages to depend on the new version.  It has
> long been understood that this is not always safe, with the responses
> being "tell people to be careful" and the unsafe_depends variable
> scheme and pkg_rolling-replace.  In the DESTDIR case, make replace is
> implemented by pkg_add -U.  Usually, this is fine - even if the
> ABI/shlib majors have changed, the package is replaced, and then a
> later make replace of unsafe_depends=YES packages, either manually or
> via pkg_rolling-replace, will bring the system to where it should be.
> However, there are pinned dependencies on osabi where the depending
> package will not accept the new version, and that causes pkg_add -U to
> fail.  This is incorrect, as a) those packages don't depend on the
> osabi exact version any more than packages depending on jpeg depeend
> on the particular shlib major, yet jpeg dependencies aren't pinned.
> And, osabi changing version is not necessarily an ABI change -
> consider 5.0_STABLE just before 5.1RC1 and just after, where only the
> version string changed.

The whole idea of osabi was that it is used by packages where the
OPSYS version matters.
If you update your OPSYS, you should reinstall osabi and all its
dependencies. I'm not sure how to make the work correctly with 'make
replace', but this change doesn't feel correct to me.
 Thomas


Home | Main Index | Thread Index | Old Index