xcoff dependency list for static libraries

Tom Tromey tromey@adacore.com
Tue Nov 10 16:11:29 GMT 2020


>>>>> "Alan" == Alan Modra via Binutils <binutils@sourceware.org> writes:

Alan> 	* archive.c (bfd_ar_hdr_from_filesystem): Use bfd_set_input_error
Alan> 	when stat of archive member fails.
Alan> 	* coff-rs6000.c (xcoff_write_archive_contents_old),
Alan> 	(xcoff_write_archive_contents_big): Likewise, and handle in-memory
Alan> 	bfd.

This caused a build failure in the internal AdaCore nightly tester.
Building a Windows->PPC cross:

  CXXLD  gdb.exe
ld.exe: ../bfd/libbfd.a(coff-rs6000.o):coff-rs6000.c:(.text+0x4571): undefined reference to `getuid'
ld.exe: ../bfd/libbfd.a(coff-rs6000.o):coff-rs6000.c:(.text+0x457e): undefined reference to `getgid'
ld.exe: ../bfd/libbfd.a(coff-rs6000.o):coff-rs6000.c:(.text+0x7443): undefined reference to `getuid'
ld.exe: ../bfd/libbfd.a(coff-rs6000.o):coff-rs6000.c:(.text+0x7450): undefined reference to `getgid'
collect2.exe: error: ld returned 1 exit status

Alan> +	      s.st_uid = getuid ();
Alan> +	      s.st_gid = getgid ();

I dug around a little and I see that archive.c does:

#ifndef HAVE_GETUID
#define getuid() 0
#endif

#ifndef HAVE_GETGID
#define getgid() 0
#endif

So maybe this same treatment could be applied here.

Tom


More information about the Binutils mailing list