Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 14 Jun 2016 19:16:59 -0700
From:      Mark Millard <markmi@dsl-only.net>
To:        Bryan Drewery <bdrewery@FreeBSD.org>
Cc:        FreeBSD Current <freebsd-current@freebsd.org>
Subject:   Re: mergemaster internally using make [for example] vs. WITH_META_MODE?
Message-ID:  <04A4C0CC-20A6-4461-97C4-FB8D96C06FA3@dsl-only.net>
In-Reply-To: <9fd734b0-2c17-214e-1dc6-a28d3d87cc05@FreeBSD.org>
References:  <7C577F5B-545C-4D70-A78E-A19E35A24592@dsl-only.net> <36f0c42f-1ca0-f82c-da5b-74cb8f0240e4@FreeBSD.org> <533A2977-70C7-44A8-9768-840BAAC3F95F@dsl-only.net> <69eb8cb4-2d9b-7019-c9cb-52569090dd8b@FreeBSD.org> <E8801803-9AF2-47F2-A870-62DEFFE5F756@dsl-only.net> <9fd734b0-2c17-214e-1dc6-a28d3d87cc05@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help

On 2016-Jun-14, at 6:48 PM, Bryan Drewery <bdrewery at FreeBSD.org> wrote:

> On 6/14/2016 5:13 PM, Mark Millard wrote:
>>> The targets (at top-level) that META_MODE is applied to is a whitelist
>>> now after r301887.  So it's safe to always pass it when building from
>>> the top-level.  If it's an unsupported target it will internally disable
>>> META_MODE.
>> So WITH_META_MODE=yes is now always allowed. That still leaves the questions of when WITH_META_MODE=yes is necessary: For example, is it ever required for the likes of mergemaster? (I'll use mergemaster to illustrate a more general question that applies to other potential scripts as well.)
> 
> There is no point to provide it to mergemaster or for it to use it
> internally.  The recommended way to use this feature is to add it to
> /etc/src-env.conf and forget about it or specify it for
> buildworld/buildkernel/universe (build) targets.  There is also no harm
> in always defining it.  That is the goal at least.
> 
> -- 
> Regards,
> Bryan Drewery

Okay. Thanks for the information.

I asked in part because mergemaster [as an example] has code like:

> # grep -i make /usr/sbin/mergemaster | more
. . .
> MM_MAKE="make ${ARCHSTRING} -m ${SOURCEDIR}/share/mk"
. . .
>      ${MM_MAKE} _obj SUBDIR_OVERRIDE=etc >/dev/null &&
. . .
>      ${MM_MAKE} everything SUBDIR_OVERRIDE=etc >/dev/null &&
. . .

and "_obj" and "everything" overlap with the latest whitelist edit:

>  META_TGT_WHITELIST+= \
>  	_* build32 buildfiles buildincludes buildkernel buildsoft \
>  	buildworld everything kernel-toolchains kernels libraries \
> -	native-xtools tinderbox toolchain toolchains universe worlds \
> -	xdev xdev-build
> +	native-xtools showconfig tinderbox toolchain toolchains universe \
> +	worlds xdev xdev-build

but in mergemaster are just specifically for SUBDIR_OVERRIDE=etc .

===
Mark Millard
markmi at dsl-only.net




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?04A4C0CC-20A6-4461-97C4-FB8D96C06FA3>