Re: -r325627 of head: mergemaster: Creating objdir after objdir after . . .

From: Mark Millard <markmi_at_dsl-only.net>
Date: Sat, 11 Nov 2017 00:58:14 -0800
===
Mark Millard
markmi_at_dsl-only.net

On 2017-Nov-11, at 12:51 AM, Mark Millard <markmi at 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:
>>> On 11/10/17 7:52 AM, Bryan Drewery wrote:
>>>> On 11/10/2017 12:46 AM, Mark Millard wrote:
>>>>> When I use the command:
>>>>> 
>>>>> ~/sys_build_scripts.aarch64-host/mergemaster_cortexA53-aarch64-host.sh -FUPi -D/mnt
>>>>> 
>>>>> based on:
>>>>> 
>>>>> # more ~/sys_build_scripts.aarch64-host/mergemaster_cortexA53-aarch64-host.sh
>>>>> kldload -n filemon && \
>>>>> script ~/sys_typescripts/typescript_mergemaster_cortexA53_clang_bootstrap_clang-aarch64-host-$(date +%Y-%m-%d:%H:%M:%S) \
>>>>> env __MAKE_CONF="/root/src.configs/make.conf" SRCCONF="/dev/null" SRC_ENV_CONF="/root/src.configs/src.conf.cortexA53-clang-bootstrap.aarch64-host" \
>>>>> mergemaster -A aarch64 $*
>>>>> 
>>>>> in a context where /usr/obj/usr does not exist
>>>>> (no local build tree present at the time), I get:
>>>>> 
>>>>> Script started, output file is /root/sys_typescripts/typescript_mergemaster_cortexA53_clang_bootstrap_clang-aarch64-host-2017-11-09:23:57:04
>>>>> 
>>>>> *** 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/share/termcap...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/etc/syslog.d...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/usr.sbin/rmt...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/etc/pam.d...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/lib...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/lib/csu...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/lib/csu/aarch64...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/lib/libc...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/lib/libc_nonshared...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/lib/libcompiler_rt...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/lib/libclang_rt...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/lib/libc++...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/lib/libc++experimental...]
>>>>> [Creating nested objdir /usr/obj/usr/src/arm64.aarch64/lib/libc++experimental/filesystem...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/lib/libcxxrt...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/lib/libelf...]
>>>>> [Creating nested objdir /usr/obj/usr/src/arm64.aarch64/lib/libelf/sys...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/lib/msun...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/lib/libalias...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/lib/libalias/libalias...]
>>>>> . . . (long list) . . .
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/usr.sbin/wpa/hostapd...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/usr.sbin/wpa/hostapd_cli...]
>>>>> [Creating objdir /usr/obj/usr/src/arm64.aarch64/usr.sbin/wpa/ndis_events...]
>>>>> 
>>>>> 
>>>>> 
>>>>> So a /usr/obj/usr/src/arm64.aarch64/ directory tree
>>>>> ends up being created.
>>>> 
>>>> Hah, not what we want. I'll fix that.
>>>> 
>>> 
>>> 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.)
> 
>>> 
>>>> 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.)
>>>>> 

FYI a check-old (with MAKEOBJDIRPREFIX="/usr/obj/cortexA53_clang/arm64.aarch64"
in use) got me a:

[Creating objdir /usr/obj/cortexA53_clang/arm64.aarch64/usr/src/arm64.aarch64...]

(Just the one objdir line.)

/usr/obj/cortexA53_clang/ did not exist when check-old
was started.

So, the activity does track MAKEOBJDIRPREFIX when it
is in use.

===
Mark Millard
markmi at dsl-only.net
Received on Sat Nov 11 2017 - 07:58:23 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:13 UTC