Poudriere failing on some 10-STABLE ports --- "uses VFP register arguments"

Paul Mather paul at gromit.dlib.vt.edu
Thu Jul 7 14:42:22 UTC 2016


On Jul 5, 2016, at 7:53 PM, bob prohaska <fbsd at www.zefox.net> wrote:

> On Tue, Jul 05, 2016 at 03:25:19PM -0400, Paul Mather wrote:
>> 
>> I've not tried to build ports natively under FreeBSD/arm because it's much easier for me to build them on a build machine using Poudriere along with the other architectures for which I build local repositories.
>> 
> Poudriere seems a big hammer for what I hoped is a small nail. Does it supply dependency-resolution
> services beyond those offered by portmaster or portupgrade?


I used to use portmaster (and portupgrade before that) to keep installed ports up to date on my various FreeBSD systems.  About the time pkgng was becoming mandatory, I decided to try using Poudriere for managing ports updates as it seemed that pkg and Poudriere go hand in hand.  I've never looked back since.  (I consider myself an early adopter of Poudriere.)

It's hard for me to remember precisely what portmaster offered regarding dependency resolution to be able to say whether or not Poudriere supplies anything beyond that.  I can say that there is nothing portmaster did that I miss under Poudriere.  What I *do not* miss about portmaster is the following, which no longer trouble me when using Poudriere:

- Having to apply ports/UPDATING workarounds when port origins move or similar drastic changes;
- Upgrade runs that break somewhere in the middle leaving me to wonder what state I'm in;
- Subtle interactions between the host environment running portmaster affecting (and breaking) the build;
- Running portmaster on individual systems instead of a centralised build machine;


Perhaps the above do not affect portmaster any more, however the big win for me with Poudriere is that it makes it trivially easy to build your own pkg-compatible repositories.  Furthermore, it makes it easy to tailor the ports and even target environment (make.conf and src.conf) options for those repositories.  IMHO, it gives you the best of both worlds: the fantastic customisation offered by building your own ports from source with the ease of use that comes with managing binary packages using pkg on client systems.

As for dependency resolution, I believe Poudriere gives you some control over how conservative you wish to be regarding rebuilding ports when dependencies have changed.  I haven't really looked much into it, and I think I am using the "safe" defaults that tends to rebuild all runtime dependencies.  However, Poudriere also allows you to build just a subset of ports that you list, which is what I do---I believe the largest repository I build has < 500 ports (based upon 59 port origins I specify that I want), so build times are not as bad as building 20,000+ ports (or however many there are in the total ports hierarchy).

If you are managing customised ports on more than one or two FreeBSD systems then Poudriere makes it massively easy.  I can't imagine ever going back to using portmaster.

Apologies if I sound like a Poudriere cheerleader, but it really is a tremendously useful piece of software.  If I'm not mistaken, the official FreeBSD pkg repositories are now built using Poudriere.

Cheers,

Paul.


More information about the freebsd-arm mailing list