[commit: ghc] ghc-8.0: configure: Verify that GCC recognizes -no-pie flag (cc0d5d3)

git at git.haskell.org git at git.haskell.org
Mon Nov 14 22:20:16 UTC 2016


Repository : ssh://git@git.haskell.org/ghc

On branch  : ghc-8.0
Link       : http://ghc.haskell.org/trac/ghc/changeset/cc0d5d30fb9e36306d68abe41fa243974a4bf245/ghc

>---------------------------------------------------------------

commit cc0d5d30fb9e36306d68abe41fa243974a4bf245
Author: Ben Gamari <bgamari.foss at gmail.com>
Date:   Mon Nov 14 14:13:30 2016 -0500

    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
    
    (cherry picked from commit 011af2bf448c28db68a55293abaa5b294f170e37)


>---------------------------------------------------------------

cc0d5d30fb9e36306d68abe41fa243974a4bf245
 aclocal.m4 | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/aclocal.m4 b/aclocal.m4
index 08ae2e5..04bcf54 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1269,7 +1269,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



More information about the ghc-commits mailing list