Re: I have submitted bugzilla 221107 for a (e.g.) -r321706 system clang 5 vintage TARGET_ARCH=powerpc buildkernel failure for aha.kld: R_PPC_PLTREL24 reloc against local symbol

2017-08-10 Thread Mark Millard
[clang 5 generates R_PPC_PLTREL24 in the .o files
for global symbols in places gcc 4.2.1 generates
R_PPC_ADDR16_HA / R_PPC_ADDR16_LO pairs.]

On 2017-Aug-10, at 7:22 PM, Mark Millard  wrote:

> [A top post about the failing R_PPC_PLTREL24 since
> the material does not flow well as a sequential
> read from prior material. I found that the .kld
> does not match the contributing .o for GLOBAL
> status for routines and the LOCAL in the .kld is
> rejected by ld in ppc_elf_check_relocs.]
> 
> There is something consistent between the two example
> failures. (The examples here are from a more recent
> head version for a buildkernel attempt.)
> 
> (I inserted some lines not matched by the shown grep.)
> 
> # readelf -a 
> /usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/aha/aha.kld
>  | grep aha_alloc
> 2b8c 3e12 R_PPC_PLTREL24   aha_alloc + 0
> 31a8 3e12 R_PPC_PLTREL24   aha_alloc + 0
> Symbol table (.symtab) contains 180 entries:
>   Num:Value  Size TypeBind   Vis  Ndx Name
>62: 96 FUNCLOCAL  DEFAULT1 aha_alloc
> 
> but in aha.o :
> 
>44: 96 FUNCGLOBAL DEFAULT2 aha_alloc
> 
> # readelf -a 
> /usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/agp/agp.kld
>  | grep agp_find_caps
> 2e08 4912 R_PPC_PLTREL24   agp_find_caps + 0
> Symbol table (.symtab) contains 180 entries:
>   Num:Value  Size TypeBind   Vis  Ndx Name
>73:    172 FUNCLOCAL  DEFAULT1 agp_find_caps
> 
> but in agp.o :
> 
>58:    172 FUNCGLOBAL DEFAULT2 agp_find_caps
> 
> building the .kld's is turning GLOBAL into LOCAL -- and the LOCAL
> is being rejected by:
> 
> /usr/src/contrib/binutils/bfd/elf32-ppc.c
> 
> in its routine:
> 
> /* Look through the relocs for a section during the first phase, and
>   allocate space in the global offset table or procedure linkage
>   table.  */
> 
> static bfd_boolean
> ppc_elf_check_relocs (bfd *abfd,
>  struct bfd_link_info *info,
>  asection *sec,
>  const Elf_Internal_Rela *relocs)
> 
> via:
> 
> 
>  r_symndx = ELF32_R_SYM (rel->r_info);
>  if (r_symndx < symtab_hdr->sh_info)
>h = NULL;
>  else  
> 
> . . .
>  tls_type = 0;
>  r_type = ELF32_R_TYPE (rel->r_info);
> . . .  
>  switch (r_type)
>{
> . . .
>case R_PPC_PLT32:
>case R_PPC_PLTREL24:
>case R_PPC_PLTREL32:
>case R_PPC_PLT16_LO:
>case R_PPC_PLT16_HI:
>case R_PPC_PLT16_HA:
> #ifdef DEBUG
>  fprintf (stderr, "Reloc requires a PLT entry\n");
> #endif
>  /* This symbol requires a procedure linkage table entry.  We
> actually build the entry in finish_dynamic_symbol,
> because this might be a case of linking PIC code without
> linking in any dynamic objects, in which case we don't
> need to generate a procedure linkage table after all.  */
> 
>  if (h == NULL)
>{
>  /* It does not make sense to have a procedure linkage
> table entry for a local symbol.  */
>  (*_bfd_error_handler) (_("%B(%A+0x%lx): %s reloc against "
>   "local symbol"),
> abfd,
> sec,
> (long) rel->r_offset,
> ppc_elf_howto_table[r_type]->name);
>  bfd_set_error (bfd_error_bad_value);
>  return FALSE;
>}
>  else
> . . .

clang 5 and gcc 4.2.1 do not match for what
goes in aha*.o and agp*.o files for the
problem symbols in clang 5's output:

gcc 4.2.1 ( R_PPC_ADDR16_HA / R_PPC_ADDR16_LO ):

# readelf -at 
/usr/obj/powerpcvtsc_gcc421/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/aha/aha*.o
 | grep aha_alloc
50: 0514   112 FUNCGLOBAL DEFAULT1 aha_alloc
0032 3206 R_PPC_ADDR16_HA  aha_alloc + 0
003e 3204 R_PPC_ADDR16_LO  aha_alloc + 0
052a 3206 R_PPC_ADDR16_HA  aha_alloc + 0
052e 3204 R_PPC_ADDR16_LO  aha_alloc + 0
50:  0 NOTYPE  GLOBAL DEFAULT  UND aha_alloc

# readelf -at 
/usr/obj/powerpcvtsc_gcc421/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/agp/agp*.o
 | grep caps
204a 3a06 R_PPC_ADDR16_HA 0434 agp_find_caps + 0
204e 3a04 R_PPC_ADDR16_LO 0434 agp_find_caps + 0
2312 3a06 R_PPC_ADDR16_HA 0434 agp_find_caps + 0
231a 3a04 R_PPC_ADDR16_LO 0434 agp_find_caps + 0
 3a01 R_PPC_ADDR320434 agp_find_caps + 0
58: 

Re: I have submitted bugzilla 221107 for a (e.g.) -r321706 system clang 5 vintage TARGET_ARCH=powerpc buildkernel failure for aha.kld: R_PPC_PLTREL24 reloc against local symbol

2017-08-10 Thread Mark Millard
[A top post about the failing R_PPC_PLTREL24 since
the material does not flow well as a sequential
read from prior material. I found that the .kld
does not match the contributing .o for GLOBAL
status for routines and the LOCAL in the .kld is
rejected by ld in ppc_elf_check_relocs.]

There is something consistent between the two example
failures. (The examples here are from a more recent
head version for a buildkernel attempt.)

(I inserted some lines not matched by the shown grep.)

# readelf -a 
/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/aha/aha.kld
 | grep aha_alloc
2b8c 3e12 R_PPC_PLTREL24   aha_alloc + 0
31a8 3e12 R_PPC_PLTREL24   aha_alloc + 0
Symbol table (.symtab) contains 180 entries:
   Num:Value  Size TypeBind   Vis  Ndx Name
62: 96 FUNCLOCAL  DEFAULT1 aha_alloc

but in aha.o :

44: 96 FUNCGLOBAL DEFAULT2 aha_alloc

# readelf -a 
/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/agp/agp.kld
 | grep agp_find_caps
2e08 4912 R_PPC_PLTREL24   agp_find_caps + 0
Symbol table (.symtab) contains 180 entries:
   Num:Value  Size TypeBind   Vis  Ndx Name
73:    172 FUNCLOCAL  DEFAULT1 agp_find_caps

but in agp.o :

58:    172 FUNCGLOBAL DEFAULT2 agp_find_caps

building the .kld's is turning GLOBAL into LOCAL -- and the LOCAL
is being rejected by:

/usr/src/contrib/binutils/bfd/elf32-ppc.c

in its routine:

/* Look through the relocs for a section during the first phase, and
   allocate space in the global offset table or procedure linkage
   table.  */
  
static bfd_boolean
ppc_elf_check_relocs (bfd *abfd,
  struct bfd_link_info *info,
  asection *sec,
  const Elf_Internal_Rela *relocs)

via:


  r_symndx = ELF32_R_SYM (rel->r_info);
  if (r_symndx < symtab_hdr->sh_info)
h = NULL;
  else  

. . .
  tls_type = 0;
  r_type = ELF32_R_TYPE (rel->r_info);
. . .  
  switch (r_type)
{
. . .
case R_PPC_PLT32:
case R_PPC_PLTREL24:
case R_PPC_PLTREL32:
case R_PPC_PLT16_LO:
case R_PPC_PLT16_HI:
case R_PPC_PLT16_HA:
#ifdef DEBUG
  fprintf (stderr, "Reloc requires a PLT entry\n");
#endif
  /* This symbol requires a procedure linkage table entry.  We
 actually build the entry in finish_dynamic_symbol,
 because this might be a case of linking PIC code without
 linking in any dynamic objects, in which case we don't
 need to generate a procedure linkage table after all.  */
  
  if (h == NULL)
{
  /* It does not make sense to have a procedure linkage
 table entry for a local symbol.  */
  (*_bfd_error_handler) (_("%B(%A+0x%lx): %s reloc against "
   "local symbol"),
 abfd,
 sec,
 (long) rel->r_offset,
 ppc_elf_howto_table[r_type]->name);
  bfd_set_error (bfd_error_bad_value);
  return FALSE;
}
  else
. . .


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

On 2017-Aug-6, at 2:44 PM, Mark Millard  wrote:

[-r322109 update failed for agp.kld instead. It may just be
a race for which happens first during the build.]

On 2017-Jul-30, at 3:03 PM, Mark Millard  wrote:

> [Just correcting the -r's to be -r321706.]
> 
> On 2017-Jul-30, at 1:34 PM, Mark Millard  wrote:
> 
> I experiment with system clang targeting powerpc
> (and powerpc64). Until recently I could buildkernel
> via system clang 4 (but it had problems if tried to
> boot such a kernel). After clang 5 it no longer
> completes the buildkernel. I'm submitting based on
> a -r321706 build attempt. The system binutils are
> in use.
> 
> The technical material from the submittal is. . .
> 
> First I list what the R_PPC_PLTREL24 is tied to
> then the error text then the build context.
> 
> objdump reports that the .text+0x2b94 involved
> is in aha_isa_probe and is a reference to aha_alloc:
> 
> (sorted objdump -x output:)
> 2b78 R_PPC_PLTREL24bus_alloc_resource
> 2b88 R_PPC_PLTREL24rman_get_start
> 2b94 R_PPC_PLTREL24aha_alloc
> 2b96 R_PPC_ADDR32  .debug_str+0x266c
> 2b9c R_PPC_PLTREL24aha_probe
> 2b9f R_PPC_ADDR32  .debug_str+0x1904
> 
> (objdump -d --prefix-addresses output:)
> 2aa4  mflrr0
> . . .
> 2b7c  cmplwi  r3,0
> 2b80  stw r3,188(r28)
> 2b84 

Re: I have submitted bugzilla 221107 for a (e.g.) -r321706 system clang 5 vintage TARGET_ARCH=powerpc buildkernel failure for aha.kld: R_PPC_PLTREL24 reloc against local symbol

2017-08-06 Thread Mark Millard
[-r322109 update failed for agp.kld instead. It may just be
a race for which happens first during the build.]

On 2017-Jul-30, at 3:03 PM, Mark Millard  wrote:

> [Just correcting the -r's to be -r321706.]
> 
> On 2017-Jul-30, at 1:34 PM, Mark Millard  wrote:
> 
> I experiment with system clang targeting powerpc
> (and powerpc64). Until recently I could buildkernel
> via system clang 4 (but it had problems if tried to
> boot such a kernel). After clang 5 it no longer
> completes the buildkernel. I'm submitting based on
> a -r321706 build attempt. The system binutils are
> in use.
> 
> The technical material from the submittal is. . .
> 
> First I list what the R_PPC_PLTREL24 is tied to
> then the error text then the build context.
> 
> objdump reports that the .text+0x2b94 involved
> is in aha_isa_probe and is a reference to aha_alloc:
> 
> (sorted objdump -x output:)
> 2b78 R_PPC_PLTREL24bus_alloc_resource
> 2b88 R_PPC_PLTREL24rman_get_start
> 2b94 R_PPC_PLTREL24aha_alloc
> 2b96 R_PPC_ADDR32  .debug_str+0x266c
> 2b9c R_PPC_PLTREL24aha_probe
> 2b9f R_PPC_ADDR32  .debug_str+0x1904
> 
> (objdump -d --prefix-addresses output:)
> 2aa4  mflrr0
> . . .
> 2b7c  cmplwi  r3,0
> 2b80  stw r3,188(r28)
> 2b84  beq 2c1c 
> 2b88  bl  2b88 
> 2b8c  mr  r3,r28
> 2b90  mr  r27,r4
> 2b94  bl  2b94 
> 2b98  mr  r3,r28
> 2b9c  bl  2b9c 
> 2ba0  cmplwi  r3,0
> 
> 
> --- all_subdir_aha ---
> Building 
> /usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/aha/aha.kld
> . . .
> --- all_subdir_aha ---
> Building 
> /usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/aha/aha.ko.full
> . . .
> --- aha.ko.full ---
> ld: aha.kld(.text+0x2b94): R_PPC_PLTREL24 reloc against local symbol
> aha.kld: could not read symbols: Bad value
> . . .
> --- all_subdir_aha ---
> *** [aha.ko.full] Error code 1
> 
> make[4]: stopped in /usr/src/sys/modules/aha
> .ERROR_TARGET='aha.ko.full'
> .ERROR_META_FILE='/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/aha/aha.ko.full.meta'
> .MAKE.LEVEL='4'
> MAKEFILE=''
> .MAKE.MODE='meta missing-filemon=yes missing-meta=yes silent=yes verbose'
> _ERROR_CMD='ld -m elf32ppc_fbsd -Bshareable -znotext -d -warn-common  -o 
> aha.ko.full aha.kld;'
> .CURDIR='/usr/src/sys/modules/aha'
> .MAKE='make'
> .OBJDIR='/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/aha'
> .TARGETS='all'
> DESTDIR=''
> LD_LIBRARY_PATH=''
> MACHINE='powerpc'
> MACHINE_ARCH='powerpc'
> MAKEOBJDIRPREFIX='/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules'
> MAKESYSPATH='/usr/src/share/mk'
> MAKE_VERSION='20170720'
> --- all_subdir_agp ---
> Building 
> /usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/agp/agp.ko.full
> --- all_subdir_aha ---
> PATH='/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/tmp/legacy/usr/sbin:/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/tmp/legacy/usr/bin:/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/tmp/legacy/bin:/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/tmp/usr/sbin:/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/tmp/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin'
> SRCTOP='/usr/src'
> OBJTOP='/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src'
> .MAKE.MAKEFILES='/usr/src/share/mk/sys.mk /usr/src/share/mk/local.sys.env.mk 
> /usr/src/share/mk/src.sys.env.mk 
> /root/src.configs/src.conf.powerpc-clang-bootstrap.amd64-host 
> /usr/src/share/mk/bsd.mkopt.mk /usr/src/share/mk/bsd.suffixes.mk 
> /root/src.configs/make.conf /usr/src/share/mk/local.sys.mk 
> /usr/src/share/mk/src.sys.mk /dev/null /usr/src/sys/modules/aha/Makefile 
> /usr/src/share/mk/bsd.kmod.mk /usr/src/sys/conf/kmod.mk 
> /usr/src/share/mk/bsd.init.mk /usr/src/share/mk/bsd.opts.mk 
> /usr/src/share/mk/bsd.cpu.mk /usr/src/share/mk/local.init.mk 
> /usr/src/share/mk/src.init.mk /usr/src/sys/modules/aha/../Makefile.inc 
> /usr/src/share/mk/bsd.own.mk /usr/src/share/mk/bsd.compiler.mk 
> /usr/src/share/mk/bsd.linker.mk /usr/src/sys/conf/kern.opts.mk 
> /usr/src/sys/conf/config.mk /usr/src/share/mk/bsd.links.mk 
> /usr/src/share/mk/bsd.dep.mk /usr/src/share/mk/bsd.clang-analyze.mk 
> /usr/src/share/mk/bsd.obj.mk /usr/src/share/mk/bsd.subdir.mk 
> /usr/src/sys/conf/kern.mk'
> .PATH='. /usr/src/sys/modules/aha /usr/src/sys/dev/aha 
> 

Re: I have submitted bugzilla 221107 for a (e.g.) -r321706 system clang 5 vintage TARGET_ARCH=powerpc buildkernel failure for aha.kld: R_PPC_PLTREL24 reloc against local symbol

2017-07-30 Thread Mark Millard
[Just correcting the -r's to be -r321706.]

On 2017-Jul-30, at 1:34 PM, Mark Millard  wrote:

I experiment with system clang targeting powerpc
(and powerpc64). Until recently I could buildkernel
via system clang 4 (but it had problems if tried to
boot such a kernel). After clang 5 it no longer
completes the buildkernel. I'm submitting based on
a -r321706 build attempt. The system binutils are
in use.

The technical material from the submittal is. . .

First I list what the R_PPC_PLTREL24 is tied to
then the error text then the build context.

objdump reports that the .text+0x2b94 involved
is in aha_isa_probe and is a reference to aha_alloc:

(sorted objdump -x output:)
2b78 R_PPC_PLTREL24bus_alloc_resource
2b88 R_PPC_PLTREL24rman_get_start
2b94 R_PPC_PLTREL24aha_alloc
2b96 R_PPC_ADDR32  .debug_str+0x266c
2b9c R_PPC_PLTREL24aha_probe
2b9f R_PPC_ADDR32  .debug_str+0x1904

(objdump -d --prefix-addresses output:)
2aa4  mflrr0
. . .
2b7c  cmplwi  r3,0
2b80  stw r3,188(r28)
2b84  beq 2c1c 
2b88  bl  2b88 
2b8c  mr  r3,r28
2b90  mr  r27,r4
2b94  bl  2b94 
2b98  mr  r3,r28
2b9c  bl  2b9c 
2ba0  cmplwi  r3,0


--- all_subdir_aha ---
Building 
/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/aha/aha.kld
. . .
--- all_subdir_aha ---
Building 
/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/aha/aha.ko.full
. . .
--- aha.ko.full ---
ld: aha.kld(.text+0x2b94): R_PPC_PLTREL24 reloc against local symbol
aha.kld: could not read symbols: Bad value
. . .
--- all_subdir_aha ---
*** [aha.ko.full] Error code 1

make[4]: stopped in /usr/src/sys/modules/aha
.ERROR_TARGET='aha.ko.full'
.ERROR_META_FILE='/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/aha/aha.ko.full.meta'
.MAKE.LEVEL='4'
MAKEFILE=''
.MAKE.MODE='meta missing-filemon=yes missing-meta=yes silent=yes verbose'
_ERROR_CMD='ld -m elf32ppc_fbsd -Bshareable -znotext -d -warn-common  -o 
aha.ko.full aha.kld;'
.CURDIR='/usr/src/sys/modules/aha'
.MAKE='make'
.OBJDIR='/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/aha'
.TARGETS='all'
DESTDIR=''
LD_LIBRARY_PATH=''
MACHINE='powerpc'
MACHINE_ARCH='powerpc'
MAKEOBJDIRPREFIX='/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules'
MAKESYSPATH='/usr/src/share/mk'
MAKE_VERSION='20170720'
--- all_subdir_agp ---
Building 
/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/agp/agp.ko.full
--- all_subdir_aha ---
PATH='/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/tmp/legacy/usr/sbin:/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/tmp/legacy/usr/bin:/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/tmp/legacy/bin:/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/tmp/usr/sbin:/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/tmp/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin'
SRCTOP='/usr/src'
OBJTOP='/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src'
.MAKE.MAKEFILES='/usr/src/share/mk/sys.mk /usr/src/share/mk/local.sys.env.mk 
/usr/src/share/mk/src.sys.env.mk 
/root/src.configs/src.conf.powerpc-clang-bootstrap.amd64-host 
/usr/src/share/mk/bsd.mkopt.mk /usr/src/share/mk/bsd.suffixes.mk 
/root/src.configs/make.conf /usr/src/share/mk/local.sys.mk 
/usr/src/share/mk/src.sys.mk /dev/null /usr/src/sys/modules/aha/Makefile 
/usr/src/share/mk/bsd.kmod.mk /usr/src/sys/conf/kmod.mk 
/usr/src/share/mk/bsd.init.mk /usr/src/share/mk/bsd.opts.mk 
/usr/src/share/mk/bsd.cpu.mk /usr/src/share/mk/local.init.mk 
/usr/src/share/mk/src.init.mk /usr/src/sys/modules/aha/../Makefile.inc 
/usr/src/share/mk/bsd.own.mk /usr/src/share/mk/bsd.compiler.mk 
/usr/src/share/mk/bsd.linker.mk /usr/src/sys/conf/kern.opts.mk 
/usr/src/sys/conf/config.mk /usr/src/share/mk/bsd.links.mk 
/usr/src/share/mk/bsd.dep.mk /usr/src/share/mk/bsd.clang-analyze.mk 
/usr/src/share/mk/bsd.obj.mk /usr/src/share/mk/bsd.subdir.mk 
/usr/src/sys/conf/kern.mk'
.PATH='. /usr/src/sys/modules/aha /usr/src/sys/dev/aha 
/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG'
1 error

make[4]: stopped in /usr/src/sys/modules/aha
.ERROR_TARGET='aha.ko.full'
.ERROR_META_FILE='/usr/obj/powerpcvtsc_clang/powerpc.powerpc/usr/src/sys/GENERICvtsc-NODBG/modules/usr/src/sys/modules/aha/aha.ko.full.meta'
.MAKE.LEVEL='4'
MAKEFILE=''
.MAKE.MODE='meta missing-filemon=yes missing-meta=yes silent=yes verbose'
_ERROR_CMD='ld -m