"make fetch" refuses because dependencies aren't installed?

Brooks Davis brooks at one-eyed-alien.net
Tue Aug 22 15:03:50 UTC 2006


On Tue, Aug 22, 2006 at 09:43:20AM -0400, Bill Moran wrote:
> In response to Brooks Davis <brooks at one-eyed-alien.net>:
> 
> > On Mon, Aug 21, 2006 at 05:07:59PM -0400, Bill Moran wrote:
> > > 
> > > [root at ravage /usr/ports/www/bacula-web]# make fetch
> > > This port requires the Apache Module or the CGI version of PHP, but you have
> > > already installed a PHP port without them.
> > > *** Error code 1
> > > 
> > > This is on a dedicated fetch/NFS server.  It's not supposed to have
> > > mod_php installed.  It would be pretty roundabout for me to install it
> > > just for the purpose of fetching a package.
> > > 
> > > The machines that mount the ports tree via NFS shares off this do not
> > > have any access to the Internet for security reasons.  Thus we use this
> > > machine to fetch packages into /usr/ports/distfiles, then we can build
> > > them on the secured systems.
> > > 
> > > It would make life easier if "make fetch" and "make fetch-recursive"
> > > could ignore these kinds of dependency errors.  It seems to me that
> > > "make fetch*" should _never_ fail because of dependencies.
> > 
> > The problem here is that the PHP support code rolls it own IGNORE type
> > command and thus you can't easily skip it.  It looks like you might be
> > able to get away with running "make fetch" with FALSE=true. to get
> > around this.  There probably should be a knob to allow fetching in this
> > case.
> 
> FALSE=true, huh?  That's classic.  That won't have any side-effects?

It will have several including breaking make checksum, but if you just
want to fetch the files it will override this particular check (and most
of the others). :)

> I'm no ports expert, but shouldn't this check occur _after_ fetching?  Then,
> if the make target was just to fetch, no error.  If the make target was a
> build, then the port gets fetched, _then_ the error occurs.  Which is fine
> since the admin will probably want to fix the problem anyway, and the
> download won't need repeated.

The normal IGNORE logic is to prevent you from doing anything unless you
will be able to install the port.  NO_IGNORE should probably turn this
error off, but does not.  If you really don't have any version of php
installed this error should not come up at all since this is a bug.  Are
you sure you really don't have any version installed?

There's an additional problem that the main php ports don't install
mod_php by default which is annoying since 99% of the time that's the
only part you care about.

> I noticed that the Makefile simply says "WANT_PHP_WEB=yes" which would seem
> to indicate that fixing this would fix the same problem for any number of
> PHP ports.

Yes, this check is in port/Mk/bsd.php.mk.

-- Brooks
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20060822/0ea132b4/attachment.pgp


More information about the freebsd-ports mailing list