On Thu, May 01, 2014 at 07:04:24PM +0200, Stefan Sperling wrote:
> I noticed that ports are always built even with FETCH_PACKAGES=Yes
> and matching binary packages on the mirror.
> 
> Starting from 'make depends' I traced the problem down to a pkg_add bug.
> Here's recipe that shows where it fails:
> 
> $ pwd
> /usr/ports/net/miniupnp/miniupnpc
> $ pkg_add -m -I -n -q -D installed -D downgrade miniupnpc-1.9.tgz 
> /usr/ports/packages/amd64/cache//miniupnpc-1.9.tgz
> miniupnpc-1.9: ok
> Look in /usr/local/share/doc/pkg-readmes for extra documentation.
> Can't use an undefined value as a HASH reference at 
> /usr/libdata/perl5/OpenBSD/Dependencies.pm line 387.
> $ echo $?
> 22
> 
> The exit code causes the Makefile logic to believe fetching the package
> failed and it builds the port even though the package is already installed.
> 
> The line perl complains about is:
>                 for my $dep (@{$package->dependency_info->{depend}}) {
> 
> It looks like $package->dependency_info is undefined here.
> 
> Can someone help?

That one is definitely for me. It looks like I agressively removed a bit
too much memory prior to 5.5.  Obviously, FETCH_PACKAGES goes thru a code
path that is slightly different from what I tested, and that does require
info a bit later (I was sure I had tested -n, but obviously not enough
scenarios).

Anyway, I can reproduce this. I'll track it down, probably today.

Reply via email to