Make package-recursive problem

Ulrich Spörlein uqs at spoerlein.net
Sun May 24 19:21:05 UTC 2009


On Sun, 24.05.2009 at 14:11:26 -0400, Matt Juszczak wrote:
> > I have no clue as to what is causing this, but this is probably the
> > reason why people use the tinderbox or roll their own system to build
> > consistent packages.
> 
> I feel like I am though?  I have a dedicated box just for building 
> packages.  make package creates a tbz file of all packages, and is 
> supposed to be reliable.

It should be under the following circumstances:

- You don't update /usr/ports
- You don't change /etc/make.conf
- You don't deinstall packages

> > Another approach had even the package dependency inside a Makefile, so
> > rebuilding the gettext package would trigger all dependent packages to
> > get rebuilt too (I haven't tackled the problem of *reinstalling* them on
> > the target hosts, though)
> 
> Doesn't this already occur with the default tools in the port system?

No, installed packages will be updated only (by portmaster or
portupgrade) if their PKGVERSION changes. To force the update when a new
gettext hits the tree, we have these !#@$!#% awful PORTREVISION bumps
across a gazillion ports.

I chose a bad example. Consider Perl was upgraded from 5.8.8 to 5.8.9, so
the target "perl.tbz" changes mtime (at least), then make(1) would
rebuild every port/package that depended on the Perl package. That was
what my special Makefile was doing. Plus, you get nice Graphviz input,
but a 20,000 node graph is useless to print. Extracting subgraphs for,
eg. OpenOffice was nice, though.

Cheers,
Ulrich Spörlein
-- 
http://www.dubistterrorist.de/


More information about the freebsd-ports mailing list