Re: BUILD_DEPENDS= RUN_DEPENDS=

2012-05-15 Thread Bryan Drewery
On 05/14/2012 11:10 PM, b. f. wrote:
 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.

Alright sounds good. I'll drop the endeavor and stick to bsd.local.mk.

Thanks!

Regards,
Bryan Drewery

___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org


BUILD_DEPENDS= RUN_DEPENDS=

2012-05-14 Thread Bryan Drewery
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.

Regards,
Bryan Drewery
___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org


Re: BUILD_DEPENDS= RUN_DEPENDS=

2012-05-14 Thread Bryan Drewery
On 05/14/2012 06:25 PM, Chuck Swiger wrote:
 On May 14, 2012, at 4:13 PM, Bryan Drewery wrote:
 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.
 
 Yes.  I think this may even be intentional on the part of the various
 port maintainers, but the notion of user-supplied additional dependencies
 is interesting.  :-)

Yes I have that concern as well. The risk may far outweigh the benefits
here.

 
 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.
 
 Why do you need ccache added to the build dependencies to use it?
 Can't you just change CC/C++?

For package building. I'm using a package building script that removes
all packages before building the next, then only installs the build
depends before building the next. Modifying CC is separate - need ccache
installed first. Of course, I could update the package building tool to
just install ccache first, which I will likely do anyway.

It's just 1 example. Off the top of my head I can not think of other
specific cases.

Thanks for the input,
Bryan Drewery
___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org


Re: BUILD_DEPENDS= RUN_DEPENDS=

2012-05-14 Thread Chuck Swiger
On May 14, 2012, at 4:13 PM, Bryan Drewery wrote:
 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.

Yes.  I think this may even be intentional on the part of the various
port maintainers, but the notion of user-supplied additional dependencies
is interesting.  :-)

 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.

Why do you need ccache added to the build dependencies to use it?
Can't you just change CC/C++?

 This goes along with updating all CLFAGS/LDFLAGS to use += instead of =.

For most cases, sure, I would agree that CFLAGS/LDFLAGS should use +=.

Regards,
-- 
-Chuck

___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org


Re: BUILD_DEPENDS= RUN_DEPENDS=

2012-05-14 Thread b. f.
 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.
___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org