Subject: Re: apr0/apr naming scheme not getting along with pkg_chk (hard problem)
To: Greg Troxel <gdt@ir.bbn.com>
From: Todd Vierling <tv@pobox.com>
List: tech-pkg
Date: 02/08/2007 11:02:01
On 2/5/07, Greg Troxel <gdt@ir.bbn.com> wrote:
> I have a machine with a number of packages, including:
>
> apr (0.9)
> subversion-base
> apache2
>
> pkg_chk reports:
>
> devel/apr - apr-0.9.12.2.0.59nb2 < apr-1.2.8.2.2.4nb1
This happens because devel/apr was bumped to 1.2.8, but the old
version moved to apr0. If you do a "make replace" on apr0 by hand,
this will fix itself (because the new pkgsrc subdir will be recorded
in the rebuild).
> The fix is to delete apr and reinstall apr0, but then this happens
> again.
Doesn't happen if apr0 is rebuilt *from source*. Using a binpkg just
brings back the old subdir naming in +BUILD_INFO.
> pkg_chk:
> pkg_chk should realize somehow that a user running apr-0.9.x which
> is current with respect to the devel/apr0 package is not really
> out of date in the usual sense. Clearly somehow one decided to do
> this, and branch jumps aren't really something pkg_chk should do
> for you.
pkg_chk uses the PKGPATH variable in the +BUILD_INFO for the package
to determine the source of the original package build. Thus it's
physically incapable of knowing that a package moved.
> pkg_rolling-replace:
With the caveat that "make replace" is not reliable, and even says so
when you use it (which is why it should always be done with manual
supervision):
This suffers from exactly the same problem as pkg_chk, and there's no
current solution for it.
> 3) The Apache people should have made a way to have apr be able to
> install multiple versions at the same time.
This is *almost* possible, but no one has stepped up to make it happen.
--
-- Todd Vierling <tv@duh.org> <tv@pobox.com> <todd@vierling.name>