BUILD_DEPENDS= RUN_DEPENDS=

b. f. bf1783 at googlemail.com
Tue May 15 04:10:51 UTC 2012


> Hi,
>
> I was trying to append to these in my /etc/make.conf and found that a
> large (thousands) number of ports are using = instead of +=, thus
> destroying any user-supplied depends.
>
> The use case for wanting to do this is to force devel/ccache to be a
> build dependency on all ports, for package building. Or to force in a
> particular library along with LDFLAGS into particular ports. This is
> achievable by modifying bsd.local.mk, but is not ideal.
>
> This goes along with updating all CLFAGS/LDFLAGS to use += instead of =.
>
> If there is no objection to this route, I will follow-up with a patch/PR
> to update the ports and handbook.

Only those user-supplied depends that are added in makefiles included
before those lines are parsed (like make.conf) can be affected. But
there are a number of other makefiles that exist solely for
customizations like you describe -- you mentioned one of them,
bsd.local.mk.  It is safer and more efficient to move as many of your
customizations as possible out of make.conf, and into these other
makefiles, as was intended.  "+=" was used for a few other variables
because these few were often already defined in make.conf for other
reasons -- but we are trying to discourage abuse of make.conf, so
making a large number of unnecessary changes to make it possible for
further additions to make.conf is a bad idea.

b.


More information about the freebsd-ports mailing list