summaryrefslogtreecommitdiffstats
path: root/sys-libs/glibc/files/2.10/glibc-2.10-hardened-configure-picdefault.patch
blob: e75ccc788c8985a3ef66ca4bf260782e7702ba0e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Prevent default-fPIE from confusing configure into thinking
PIC code is default.  This causes glibc to build both PIC and
non-PIC code as normal, which on the hardened compiler generates
PIC and PIE.

Patch by Kevin F. Quinn <kevquinn@gentoo.org>
Fixed for glibc 2.10 by Magnus Granberg <zorry@ume.nu>

--- configure.in
+++ configure.in
@@ -2145,7 +2145,7 @@
 # error PIC is default.
 #endif
 EOF
-if eval "${CC-cc} -S conftest.c 2>&AS_MESSAGE_LOG_FD 1>&AS_MESSAGE_LOG_FD"; then
+if eval "${CC-cc} -fno-PIE -S conftest.c 2>&AS_MESSAGE_LOG_FD 1>&AS_MESSAGE_LOG_FD"; then
   libc_cv_pic_default=no
 fi
 rm -f conftest.*])
--- configure
+++ configure
@@ -7698,7 +7698,7 @@
 # error PIC is default.
 #endif
 EOF
-if eval "${CC-cc} -S conftest.c 2>&5 1>&5"; then
+if eval "${CC-cc} -fno-PIE -S conftest.c 2>&5 1>&5"; then
   libc_cv_pic_default=no
 fi
 rm -f conftest.*