Re: 11.0 -r301139: WITH_META_MODE=yes vs. "sh: ./make_keys: Exec format error"? [still true of -r301815]

From: Mark Millard <markmi_at_dsl-only.net>
Date: Sat, 11 Jun 2016 21:55:56 -0700
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_at_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
Received on Sun Jun 12 2016 - 02:56:00 UTC

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