Old libelf.m4 change not committed

Joseph S. Myers joseph@codesourcery.com
Thu Oct 15 17:14:00 GMT 2009


Prelink's aclocal.m4 appears to have been generated with a change to 
m4/libelf.m4, below, that was never checked in.  The consequence of this 
is that if you make changes to prelink involving running aclocal to 
regenerate aclocal.m4 and autoconf to regenerate configure, this change is 
lost and the configure test fails to compile if the compiler has 
_FORTIFY_SOURCE enabled, because of the missing argument to open.

If you apply this change, I couldn't fine the auto* versions to regenerate 
the other checked in files exactly; they are autoconf 2.57, automake 1.6.3 
and a libtool version that might be somewhere between 1.5 and 1.5.2 or a 
patched version of 1.5 (1.5 seemed to generate the nearest version of 
aclocal.m4).  In any case, it is not necessary to regenerate any files 
when checking in this patch, although regenerating the auto* machinery 
with more recent versions of libtool, automake and autoconf ("autoreconf 
--install --force" should be a reasonable start; it gives some warnings 
that should perhaps be fixed) might be a good idea anyway.

Could you check in this patch (with or without any regeneration) if OK?

2009-10-15  Joseph Myers  <joseph@codesourcery.com>

	* m4/libelf.m4: Resync with version of code in aclocal.m4.

Index: m4/libelf.m4
===================================================================
--- m4/libelf.m4	(revision 175)
+++ m4/libelf.m4	(working copy)
@@ -73,7 +73,8 @@
   Elf64_Addr val;
   Elf_Scn *scn;
 
-  fd = open ("conflibelftest", O_RDWR | O_CREAT | O_EXCL); if (fd == -1) exit (1);
+  fd = open ("conflibelftest", O_RDWR | O_CREAT | O_EXCL, 0600);
+  if (fd == -1) exit (1);
   unlink ("conflibelftest");
   if (write (fd, sparc64_elf, sizeof(sparc64_elf)) != sizeof(sparc64_elf))
     exit (1);

-- 
Joseph S. Myers
joseph@codesourcery.com



More information about the Prelink mailing list