]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
x86_64: fix static build of __memcpy_chk for compilers defaulting to PIC/PIE
authorAurelien Jarno <aurelien@aurel32.net>
Thu, 24 Nov 2016 11:10:13 +0000 (12:10 +0100)
committerMike Frysinger <vapier@gentoo.org>
Thu, 8 Dec 2016 05:56:04 +0000 (00:56 -0500)
When glibc is compiled with gcc 6.2 that has been configured with
to default to PIC/PIE, the static version of __memcpy_chk is not built,
as the test is done on PIC instead of SHARED. Fix the test to check for
SHARED, like it is done for similar functions like memmove_chk.

Changelog:
* sysdeps/x86_64/memcpy_chk.S (__memcpy_chk): Check for SHARED
instead of PIC.

(cherry picked from commit 380ec16d62f459d5a28cfc25b7b20990c45e1cc9)
(cherry picked from commit 2d16e81babd1d7b66d10cec0bc6d6d86a7e0c95e)

sysdeps/x86_64/memcpy_chk.S

index 2296b55119bcfc7135f117ed08a9293be810d90c..a95b3ad3cff42e5ce0640e62ca660f2901eb321b 100644 (file)
@@ -19,7 +19,7 @@
 #include <sysdep.h>
 #include "asm-syntax.h"
 
-#ifndef PIC
+#ifndef SHARED
        /* For libc.so this is defined in memcpy.S.
           For libc.a, this is a separate source to avoid
           memcpy bringing in __chk_fail and all routines