diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2017-12-18 12:24:26 -0800 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2017-12-18 12:24:38 -0800 |
commit | 00c714df398b63934540d95ce3792596f7a94a6c (patch) | |
tree | f96ed5735a44f5a6afff6efafe5dc86f1b93fecb /config.make.in | |
parent | 8e1472d2c1e25e6eabc2059170731365f6d5b3d1 (diff) | |
download | glibc-00c714df398b63934540d95ce3792596f7a94a6c.zip glibc-00c714df398b63934540d95ce3792596f7a94a6c.tar.gz glibc-00c714df398b63934540d95ce3792596f7a94a6c.tar.bz2 |
Pass -no-pie to GCC only if GCC defaults to PIE [BZ #22614]
After --enable-static-pie is added to configure, libc_cv_pie_default is
set to yes when either --enable-static-pie is used to configure glibc
or GCC defaults to PIE. We should set no-pie-ldflag to -no-pie, which
is supported on GCC 6 and later, only if GCC defaults to PIE, not when
--enable-static-pie is used to configure glibc.
Tested on x32 with --enable-static-pie using GCC 5 and without
--enable-static-pie using GCC 7.
[BZ #22614]
* Makeconfig (no-pie-ldflag): Set to -no-pie only if
$(cc-pie-default) == yes.
* config.make.in (cc-pie-default): New.
* configure.ac (libc_cv_pie_default): Renamed to ...
(libc_cv_cc_pie_default): This.
(libc_cv_pie_default): Set to $libc_cv_cc_pie_default.
* configure: Regenerated.
Diffstat (limited to 'config.make.in')
-rw-r--r-- | config.make.in | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/config.make.in b/config.make.in index 04513db..9e5e24b 100644 --- a/config.make.in +++ b/config.make.in @@ -89,6 +89,7 @@ static-nss-crypt = @libc_cv_static_nss_crypt@ build-shared = @shared@ build-pic-default= @libc_cv_pic_default@ build-pie-default= @libc_cv_pie_default@ +cc-pie-default= @libc_cv_cc_pie_default@ build-profile = @profile@ build-static-nss = @static_nss@ cross-compiling = @cross_compiling@ |