From owner-freebsd-current@FreeBSD.ORG Mon Apr 28 14:07:53 2014 Return-Path: Delivered-To: current@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3479BB74; Mon, 28 Apr 2014 14:07:53 +0000 (UTC) Received: from vps1.elischer.org (vps1.elischer.org [204.109.63.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "vps1.elischer.org", Issuer "CA Cert Signing Authority" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 05F0C11AC; Mon, 28 Apr 2014 14:07:52 +0000 (UTC) Received: from Julian-MBP3.local (ppp121-45-232-70.lns20.per1.internode.on.net [121.45.232.70]) (authenticated bits=0) by vps1.elischer.org (8.14.8/8.14.8) with ESMTP id s3SE7mNf069062 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO); Mon, 28 Apr 2014 07:07:51 -0700 (PDT) (envelope-from julian@freebsd.org) Message-ID: <535E60AF.6050905@freebsd.org> Date: Mon, 28 Apr 2014 22:07:43 +0800 From: Julian Elischer User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: Ian Lepore Subject: Re: Make variables to force non default libraries and includes? References: <535E083A.9060906@freebsd.org> <1398687583.61646.207.camel@revolution.hippie.lan> In-Reply-To: <1398687583.61646.207.camel@revolution.hippie.lan> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: FreeBSD Current X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 28 Apr 2014 14:07:53 -0000 On 4/28/14, 8:19 PM, Ian Lepore wrote: > On Mon, 2014-04-28 at 15:50 +0800, Julian Elischer wrote: >> I need to do the equivalent of "cd /usr/src/cddl/usr.sbin/dtrace; >> make DESTDIR=/mumble all install" >> >> but it pulls in libraries from the base system, which differ slightly >> from those in the source tree. >> >> How can I force it to use /mumble2/include and /mumble2/lib instead of / ? >> >> I can pre-populate /mumble2 using "make buildworld", "make libraries", >> and "make includes" but >> I need to be able to do selective builds of just subdirectories after >> that.. I haven't spotted the right way of forcing the use of the >> "--system_root /mumble2" option in the compiles. >> >> I know we do it in 'buildworld' is there a more generic way? >> >> I have been looking in the .mk files but I haven't spotted it so far. >> >> An option woudl be a way to 'enter' a buildworld and just rebuild or >> reinstall small specified parts of it. >> Unfortunately at the moment I see no option other than a lot of >> WITHOUT_XXX and 'build everything'. >> >> >> Julian > The 'buildenv' target does the "enter a buildworld" thing. Just "make > buildenv" and you get a shell with all the environment variables set up > for doing builds (or cross-builds if you set TARGET_ARCH) within that > source tree. If csh isn't your favorite shell, set BUILDENV_SHELL in > your environment. There's also a "buildenvvars" target that will let > you capture the environment you need so that you can use it within your > own build scripts without needing an interactive shell. > > -- Ian > > > > oh man that is just what I'm looking for Is there a single command for populating the buildenv resources? i.e. to compile and install all the tools and libraries (and includes etc) (into /usr/obj/usr/src/tmp... )