summary refs log tree commit diff
path: root/scripts
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2015-10-14 05:59:50 -0700
committerH.J. Lu <hjl.tools@gmail.com>2015-10-14 06:00:02 -0700
commitd3d9c95aefded7716d037e241f9d23a1cccab45a (patch)
tree2b926e69a63a8e6ba6ea89f4f35e85b1b6d72390 /scripts
parent8f763b04a0249d5a94a667da31294dd2395ec3bf (diff)
downloadglibc-d3d9c95aefded7716d037e241f9d23a1cccab45a.tar.gz
glibc-d3d9c95aefded7716d037e241f9d23a1cccab45a.tar.xz
glibc-d3d9c95aefded7716d037e241f9d23a1cccab45a.zip
Support PLT and GOT references in local PIC check
Linker in binutils 2.26 and newer generate GOT references instead
PLT references when -z now is passed to linker.  We need to extend
scripts/localplt.awk to allow PLT or GOT references.

	[BZ #19007]
	* scripts/localplt.awk: Also allow GOT references.
	* sysdeps/unix/sysv/linux/i386/localplt.data: Mark
	_Unwind_Find_FDE, calloc, memalign, realloc and __libc_memalign
	with "+ REL R_386_GLOB_DAT".
	* sysdeps/x86_64/localplt.data: Mark calloc, memalign, realloc
	and __libc_memalign with "+ RELA R_X86_64_GLOB_DAT".
Diffstat (limited to 'scripts')
-rw-r--r--scripts/localplt.awk2
1 files changed, 1 insertions, 1 deletions
diff --git a/scripts/localplt.awk b/scripts/localplt.awk
index f75b3b427b..beaa342922 100644
--- a/scripts/localplt.awk
+++ b/scripts/localplt.awk
@@ -7,7 +7,7 @@
 BEGIN { result = 0 }
 
 FILENAME != lastfile {
-  if (lastfile && jmprel_offset == 0) {
+  if (lastfile && jmprel_offset == 0 && rela_offset == 0 && rel_offset == 0) {
     print FILENAME ": *** failed to find expected output (readelf -WSdr)";
     result = 2;
   }