DragonFly BSD
DragonFly bugs List (threaded) for 2004-07
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: dfports bug ?


From: YONETANI Tomokazu <qhwt+dragonfly-bugs@xxxxxxxxxx>
Date: Wed, 14 Jul 2004 11:40:57 +0900

Hi.

On Fri, Jul 09, 2004 at 11:20:17PM +0000, Marco Righele wrote:
> Greetings,
> If i try to use portupgrade with a package from dfports, I get the following:
> 
> #portupgrade qmake
> [Updating the pkgdb <format:bdb1_btree> in /var/db/pkg ... 
> - 253 packages found (-0 +2) .. done]
> 
> ** Invalid package name: devel/qmake: : Not in due form: <name>-<version>
> ** Listing the failed packages (*:skipped / !:failed)
>         ! devel/qmake (qmake-3.3.1)     (invalid package name)
> --->  Packages processed: 0 done, 0 ignored, 0 skipped and 1 failed

Please try the tentative patch attached to this message to get it work.

> Given that this happened with every dfport I tried, my guess is that
> the bug lies in a common file, like a .mk file.

Yes, this happens only if the port has dfport override, in which case
some make variables are not defined. The variables are supposed to be
defined in ${PORTSDIR}/Mk/bsd.port.mk, but you can't include this file
when we have an override, because if you do so, you end up building the
port in FreeBSD ports tree rather than in dfports tree.

Grepping through files in portupgrade port, there are two instances where
they look at variables:
- by issuing `make -V SOME VARIABLES`:
  list of variables are; CATEGORIES SUBDIR PKGNAME IGNORE NO_IGNORE
  and the only variable that needs to be defined in *.mk is PKGNAME.
  Other variables are usually set in the Makefile(s) in each portdir.

- calling make_var method(and make -V is issued in that method):
  in this case, make -V is issued after chdir'ing to ${PORTSDIR}
  in most cases, so this should not be a problem.

So I think making PKGNAME defined in overridden case is enough to
fix the portupgrade program.

Attachment: fix-portupgrade.diff.gz
Description: application/gunzip



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