How can one build all ports?

Erwin Lansing erwin at FreeBSD.org
Thu Apr 5 04:32:08 EDT 2007


On Thu, Apr 05, 2007 at 11:19:02AM +0300, Diomidis Spinellis wrote:
> Is there a way to run a tinderbox for all the FreeBSD ports?  Ideally, I 
> would like each port to be built exactly once.
> 
> I can obtain a list of all ports with something like
> 
> find /usr/ports -type d -maxdepth 2 | sed -n 's/\/usr\/ports\///;/\//p'
> 
> but I'm not sure how tinderbuild will react if it is invoked multiple 
> times through xargs, and what will happen when I ask tinderbuild to 
> build a port that has already been built through a dependency.
> 

You're probably better off using 'tc addPort' and tinderd.  This will
make sure only one port is build at a time.  A port that was built as a
dependency will not be build again the next time it is a dependency,
then its package will be used.  It will be build again however when you
schedule it explicitly.  Those ports will only be build twice, so it
might not be that big of a problem, but you might want to do some more
preprocessing then just the above find.  You might want to have a look
at how pointyhat does this (/usr/ports/Tools/portbuild/), or even set up
your own version of those scripts.  Beware, documentation here is not
really existent.

Cheers,
-erwin

-- 
Erwin Lansing                                     http://droso.org
Security is like an onion.          (o_ _o)
It's made up of several layers   \\\_\   /_///
And it makes you cry.            <____) (____>    erwin at lansing.dk
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://marcuscom.com/pipermail/tinderbox-list/attachments/20070405/6f1271b1/attachment.bin 


More information about the tinderbox-list mailing list