Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 Apr 2014 08:57:02 -0700
From:      Alfred Perlstein <alfred@freebsd.org>
To:        freebsd-current@freebsd.org
Subject:   Re: Make variables to force non default libraries and includes?
Message-ID:  <535E7A4E.3090305@freebsd.org>
In-Reply-To: <535E07C9.5060309@freebsd.org>
References:  <535E07C9.5060309@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 4/28/14 12:48 AM, 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.
>
There may be a way to use bsd.*.mk to do this, however we just use 
chroots + nullfs mounts.

Basically we buildworld into a directory and then nullfs mount our other 
sources under it, then we chroot to that "build".

I recommend doing this (or even using vms) as it's way too easy to 
introduce contamination from the host build environment otherwise.

-Alfred




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?535E7A4E.3090305>