on 16/01/2009 09:30 Garrett Cooper said the following:
> On Thu, Jan 15, 2009 at 7:08 AM, Andriy Gapon <a...@icyb.net.ua> wrote:
...
>> Thanks, but my question was:
>>> sh -c /usr/bin/tar -xp -j -f '/var/packages/All/curl-7.18.0.tbz' '+*'
>> why this command (and such for every package in /var/packages/All) was
>> spawned by pkg_info?
>> I.e. why pkg_info looks into package .tbz files instead of examining
>> /var/db/pkg?
> 
> Looks like bad logic to me. Here's where the call is coming from (mind
> you I'm referencing pkg_install from CURRENT's sources):
> 
> .../usr.sbin/pkg_install/info/perform.c:142           if
> (unpack(fname, "'+*'")) {
> .../usr.sbin/pkg_install/lib/file.c:354                      if
> (vsystem("/usr/bin/tar -xp %s -f '%s' %s", comp, pkg, flist ? flist :
> "")) {
> 
> Looking at the if-statement, it appears that the logic for the package
> finding is in fact sort of convoluted -- we should first check and see
> whether or not the package is installed, THEN if it's not installed we
> find the tarball (either from a local filesystem or a remote host),
> extract it, and grab the appropriate info.

Garrett, thanks!
I think that configure.kde3 should unset PKG_PATH (that can be set by
e.g. portupgrade) before running pkg_info:

env PKG_PATH= ${PKG_INFO}

-- 
Andriy Gapon
_______________________________________________
kde-freebsd mailing list
kde-freebsd@kde.org
https://mail.kde.org/mailman/listinfo/kde-freebsd
See also http://freebsd.kde.org/ for latest information

Reply via email to