On 2016-Jun-2, at 11:11 AM, Bryan Drewery <bdrewery at FreeBSD.org> wrote:

> On 6/2/2016 10:53 AM, Simon J. Gerraty wrote:
>> BTW Mark, thanks very much for testing this.
>> 
>>>> # grep make_keys 
>>>> ~/sys_typescripts/typescript_make_rpi2_nodebug_clang_bootstrap-amd64-host-2016-06-01:15:17:28
>>>> Building /usr/obj/clang/arm.armv6/usr/src/lib/ncurses/ncursesw/make_keys
>>>> Building /usr/obj/clang/arm.armv6/usr/src/lib/ncurses/ncurses/make_keys
>>>> Building /usr/obj/clang/arm.armv6/usr/src/lib/ncurses/ncursesw/make_keys
>>>> sh: ./make_keys: Exec format error
>>> 
>>> Note that ncursesw has two Building lines above with the same path listed.
>> 
>> This build is still using the normal orchestration (tree walks etc)
>> so it it not at all out of the question for directories to be visited
>> more than once.
>> 
>> If curious; you can add -dM to have make explain why it built it again
>> the 2nd time.
>> The output can be copious, so you might want to only enable it in
>> ncursesw
>> eg.
>> 
>> .MAKEFLAGS: -dM
>> 
> 
> r297997 was the original fix for it. It is visited twice (build-tools
> and everything).  The problem came when I added .META to all suffix
> rules to work around the lack of default .META (the patch we're discussing).
> 
> -- 
> Regards,
> Bryan Drewery

Summary: It looks like cross builds and WITH_META_MODE= still do not mix.

Example details follow.

I finally just updated my amd64 environment from -r301139 to . . .

> # uname -apKU
> FreeBSD FreeBSDx64 11.0-ALPHA3 FreeBSD 11.0-ALPHA3 #3 r301815M: Sat Jun 11 
> 12:03:13 PDT 2016     
> root@FreeBSDx64:/usr/obj/clang/amd64.amd64/usr/src/sys/GENERIC-NODEBUG  amd64 
> amd64 1100116 1100116

So I then tried to update my rpi2 targeted cross build:

> Script started on Sat Jun 11 18:58:11 2016
> Command: env __MAKE_CONF=/root/src.configs/make.conf 
> SRC_ENV_CONF=/root/src.configs/src.conf.rpi2-clang-bootstrap.amd64-host 
> WITH_META_MODE=yes MAKEOBJDIRPREFIX=/usr/obj/clang make -j 5 buildworld 
> buildkernel
. . .
> --- build-tools_lib/ncurses/ncurses ---
> Building /usr/obj/clang/arm.armv6/usr/src/lib/ncurses/ncurses/make_keys
> --- build-tools_rescue/rescue ---
> --- obj ---
> --- build-tools_lib/ncurses/ncursesw ---
> ** edit: BROKEN_LINKER 0
> --- build-tools_rescue/rescue ---
. . .
> --- build-tools_lib/ncurses/ncursesw ---
> Building /usr/obj/clang/arm.armv6/usr/src/lib/ncurses/ncursesw/make_keys

. . .
> Building /usr/obj/clang/arm.armv6/usr/src/lib/ncurses/ncursesw/init_keytry.h
> --- init_keytry.h ---
> sh: ./make_keys: Exec format error
> *** [init_keytry.h] Error code 126
> 
> make[4]: stopped in /usr/src/lib/ncurses/ncursesw
> 1 error
> 
> make[4]: stopped in /usr/src/lib/ncurses/ncursesw
> *** [lib/ncurses/ncursesw__L] Error code 2

Doing cleanworld instead of "-j 5 buildworld buildkernel" and then retrying "-j 
5 buildworld buildkernel" resulted in the same sort of thing but for maketab 
instead:

> Script started on Sat Jun 11 19:38:48 2016
> Command: env __MAKE_CONF=/root/src.configs/make.conf 
> SRC_ENV_CONF=/root/src.configs/src.conf.rpi2-clang-bootstrap.amd64-host 
> WITH_META_MODE=yes MAKEOBJDIRPREFIX=/usr/obj/clang make -j 5 buildworld 
> buildkernel
> --- buildworld ---
. . .
> --- ytab.h ---
> ln -sf awkgram.h ytab.h
> Building /usr/obj/clang/arm.armv6/usr/src/usr.bin/awk/maketab
. . .
> --- all_subdir_usr.bin ---
> Building /usr/obj/clang/arm.armv6/usr/src/usr.bin/awk/maketab

. . .
> ===> share/doc/usd (all)
> --- all_subdir_sys ---
> ln -sf /usr/src/sys/boot/efi/loader/../../../arm/include machine
> --- all_subdir_usr.bin ---
> --- proctab.c ---
> sh: ./maketab: Exec format error
> *** [proctab.c] Error code 126
> 
> make[4]: stopped in /usr/src/usr.bin/awk
> 1 error
> 
> make[4]: stopped in /usr/src/usr.bin/awk
> *** [all_subdir_usr.bin/awk] Error code 2


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

_______________________________________________
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"

Reply via email to