On 11/11/2017 2:25 PM, Mark Millard wrote:
> On 2017-Nov-11, at 8:47 AM, Bryan Drewery <bdrew...@freebsd.org> wrote:
>>> On Nov 11, 2017, at 00:51, Mark Millard <mar...@dsl-only.net> wrote:
>>>> On 2017-Nov-10, at 5:16 PM, Bryan Drewery <bdrewery at FreeBSD.org> wrote:
>>>>> On 11/10/2017 8:30 AM, Bryan Drewery wrote:
>>>>> . . . 
>>>>> In fact it's similar to my META_MODE whitelist in the top-level
>>>>> Makefile.  There's quite a few targets we don't care for AUTO_OBJ on,
>>>>> like distribute*, installworld, installkernel, etc.
>>>> r325697 should fix it.
>>> Most of the messages are gone in -r325700 . But there was:
>>> *** Creating the temporary root environment in /var/tmp/temproot
>>> *** /var/tmp/temproot ready for use
>>> *** Creating and populating directory structure in /var/tmp/temproot
>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64...]
>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/etc...]
>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/etc/sendmail...]
>>> (No more objdir lines after that.)
>> Yea this is expected. Mergemaster runs ‘make obj’ in etc/.
> Hmm. I looking I see the:
>       ${MM_MAKE} _obj SUBDIR_OVERRIDE=etc >/dev/null &&
>       ${MM_MAKE} everything SUBDIR_OVERRIDE=etc >/dev/null &&
> Its too bad that the mergemaster man page makes no reference
> to depending on MAKEOBJDIRPREFIX (or its default) and the
> tree contents that it points to. If one has more than one
> tree around then one should be picking the right one --but
> nothing in the man page suggests that.
> It also would not play well with not having that build tree
> available at the time of a mergemaster.

Can you test this patch please in context of this problem please?
It resolves read-only objdirs and should avoid more of the objdir
creations at mergemaster/installworld time.  It probably will still
create the etc/sendmail one.


> The 20130425 UPDATING entry does note use of
> MAKEOBJDIRPREFIX. It notes that mergemaster makes use of the
> specific, bootstrapped mtree and install. Does that mean
> that a cross-build needs mergemaster to be executed on
> the cross-build host instead of on the target system? I do
> not see the man page as well-covering such questions for
> the proper usage technique.
> Dependency on /usr/src (by default or an alternate via -m) is
> clear from the man page. So, having a proper vintage of such
> and having mergemaster use it was clear. But such seems to not
> be sufficient, which was not clear.
>> The top-level check-old objdir creation is unavoidable right now... you can 
>> use -DNO_OBJ if you want to avoid it.
>>>>>> However from reading mergemaster.sh it seems that _at least_
>>>>>> /usr/obj/usr/src/etc/sendmail would be created before my changes.  Can
>>>>>> someone confirm that on stable/ or something?
>>>>>>> (MAKEOBJDIRPREFIX= does control the path-prefix used
>>>>>>> if specified in the env list before mergemaster.)
> ===
> Mark Millard
> markmi at dsl-only.net

Bryan Drewery

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to