summaryrefslogtreecommitdiff
path: root/aclocal.m4
diff options
context:
space:
mode:
authorBen Gamari <bgamari.foss@gmail.com>2016-11-14 14:13:30 -0500
committerBen Gamari <ben@smart-cactus.org>2016-11-14 14:13:31 -0500
commit011af2bf448c28db68a55293abaa5b294f170e37 (patch)
tree5c458ba3bcdab9bd57ca43f453c341e19a642a41 /aclocal.m4
parentcb168900f88564e7d2e084c5ccd131d4109be795 (diff)
downloadhaskell-011af2bf448c28db68a55293abaa5b294f170e37.tar.gz
configure: Verify that GCC recognizes -no-pie flag
It seems like GCC versions prior to 4.8 exit with code 0 when faced with an unrecognized flag. Silly compilers. Test Plan: Validate Reviewers: hvr, austin, ggreif Reviewed By: ggreif Subscribers: thomie, erikd Differential Revision: https://phabricator.haskell.org/D2707 GHC Trac Issues: #12759
Diffstat (limited to 'aclocal.m4')
-rw-r--r--aclocal.m43
1 files changed, 2 insertions, 1 deletions
diff --git a/aclocal.m4 b/aclocal.m4
index aea85f4908..5d395709a0 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1333,7 +1333,8 @@ AC_DEFUN([FP_GCC_SUPPORTS_NO_PIE],
AC_REQUIRE([AC_PROG_CC])
AC_MSG_CHECKING([whether GCC supports -no-pie])
echo 'int main() { return 0; }' > conftest.c
- if ${CC-cc} -o conftest -no-pie conftest.c > /dev/null 2>&1; then
+ # Some GCC versions only warn when passed an unrecognized flag.
+ if $CC -no-pie -x c /dev/null -dM -E > conftest.txt 2>&1 && ! grep -i unrecognized conftest.txt > /dev/null 2>&1; then
CONF_GCC_SUPPORTS_NO_PIE=YES
AC_MSG_RESULT([yes])
else