OSDN Git Service

configure: disable FORTIFY_SOURCE under clang
authorJohn Snow <jsnow@redhat.com>
Tue, 3 Nov 2015 20:43:42 +0000 (15:43 -0500)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 5 Nov 2015 10:28:02 +0000 (11:28 +0100)
commitb553a0428014636bce4951098e97c60dc18a83ed
treec39d33b6f1f778e8e1ed0ca86c6862b685ab60a9
parent8d31d6b65a7448582c7bd320fd1b8cfc6cca2720
configure: disable FORTIFY_SOURCE under clang

Some versions of clang may have difficulty compiling glibc headers when
-D_FORTIFY_SOURCE is used. For example, Clang++ 3.5.0-9.fc22 cannot
compile glibc's stdio headers when -D_FORTIFY_SOURCE=2 is used. This
manifests currently as build failures with clang and any arm target.

According to LLVM dev Richard Smith, clang does not target or support
FORTIFY_SOURCE + glibc, and it should not be relied on.
"It's still an unsupported combination, and while it might compile, some
of the checks are unlikely to work because they require a frontend
inliner to be useful"

See: http://lists.llvm.org/pipermail/cfe-dev/2015-November/045846.html

Conclusion: disable fortify-source if we appear to be using clang instead
of testing for compile success or failure, which may be incidental or not
indicative of proper support of the feature.

Signed-off-by: John Snow <jsnow@redhat.com>
Message-Id: <1446583422-10153-1-git-send-email-jsnow@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
configure