From owner-freebsd-ports@FreeBSD.ORG Tue May 15 04:10:51 2012 Return-Path: Delivered-To: freebsd-ports@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id A582B106564A for ; Tue, 15 May 2012 04:10:51 +0000 (UTC) (envelope-from bf1783@googlemail.com) Received: from mail-wi0-f178.google.com (mail-wi0-f178.google.com [209.85.212.178]) by mx1.freebsd.org (Postfix) with ESMTP id 3B43F8FC08 for ; Tue, 15 May 2012 04:10:50 +0000 (UTC) Received: by wibhn6 with SMTP id hn6so2683049wib.13 for ; Mon, 14 May 2012 21:10:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20120113; h=mime-version:reply-to:date:message-id:subject:from:to:cc :content-type; bh=G9/AiZBIKIoIO5y6hxHTtjRijWS5Sj1HPJeEbQva6b4=; b=PwBQmL+HoKlVc6TuDFeKgEXjOBGDxy5nv1PuubHbNiZruHYYPJ/jSth9hiJ7xUA8du ZUT0Vi+ObW9LR2Y4fIqrAIvGL5rqEEaW9I6lW23MekRDwTs6Rhuri4UBSeZbiRp5ngG0 uA/2EKP7XfCil9zGU6+VhRWDn3/EpDzH5j/DpWIMRUQARvsXtvKocClLB+zysZAk5cj4 298FL77BEkvcw3kDY7aEcyLnYbqg4B9cMWpvvbkaSRb4oh94gunzMHI7mZhY9QNIgR8u WKskWV+AGCajVRoUMj5d31m8P8sV7j2Lp/7b+gjdebreCB/4ZlFeVBpYUtRV8Ge3qLEE kpNA== MIME-Version: 1.0 Received: by 10.180.99.72 with SMTP id eo8mr10504859wib.10.1337055050043; Mon, 14 May 2012 21:10:50 -0700 (PDT) Received: by 10.180.24.5 with HTTP; Mon, 14 May 2012 21:10:49 -0700 (PDT) Date: Tue, 15 May 2012 00:10:49 -0400 Message-ID: From: "b. f." To: freebsd-ports@FreeBSD.org Content-Type: text/plain; charset=ISO-8859-1 Cc: Bryan Drewery Subject: Re: BUILD_DEPENDS= RUN_DEPENDS= X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: bf1783@gmail.com List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 May 2012 04:10:51 -0000 > 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.