summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2014-05-15 09:52:14 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2014-06-05 15:16:06 +1000
commita5a10423122a67662c36c47a993c1dd4417a7de1 (patch)
tree144873fc6b82d27face57544d999e8746703b2fa
parent4e7863eee155bb8c842e93edea3cea097a6237dc (diff)
downloadlibevdev-a5a10423122a67662c36c47a993c1dd4417a7de1.tar.gz
m4: fix CC_CHECK_WERROR and CC_FLAG_VISIBILITY macros
These macros come from systemd, but CC_CHECK_CFLAGS_SILENT was removed in systemd commit eb2e280f9c59b66965c9316eadc4c113a13ca744, breaking some of them. CC_FLAG_VISIBILITY doesn't need to require CC_CHECK_WERROR because CC_CHECK_FLAG_APPEND always append -Werror anyway. Which kinda brings into question why we have CC_CHECK_WERROR in the first place, but whavever. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r--m4/attributes.m417
1 files changed, 6 insertions, 11 deletions
diff --git a/m4/attributes.m4 b/m4/attributes.m4
index aa53ef2..5fbd43d 100644
--- a/m4/attributes.m4
+++ b/m4/attributes.m4
@@ -109,13 +109,14 @@ dnl
dnl Other compilers don't support -Werror per se, but they support
dnl an equivalent flag:
dnl - Sun Studio compiler supports -errwarn=%all
+dnl we don't test for that, it gives us false positives when gcc doesn't
+dnl actually complain about it. If someone wants to compile this on sun, let
+dnl them fix it.
AC_DEFUN([CC_CHECK_WERROR], [
AC_CACHE_CHECK(
[for $CC way to treat warnings as errors],
[cc_cv_werror],
- [CC_CHECK_CFLAGS_SILENT([-Werror], [cc_cv_werror=-Werror],
- [CC_CHECK_CFLAGS_SILENT([-errwarn=%all], [cc_cv_werror=-errwarn=%all])])
- ])
+ [CC_CHECK_FLAG_APPEND([cc_cv_werror], [CFLAGS], [-Werror])])
])
AC_DEFUN([CC_CHECK_ATTRIBUTE], [
@@ -225,17 +226,11 @@ AC_DEFUN([CC_ATTRIBUTE_CONST], [
])
AC_DEFUN([CC_FLAG_VISIBILITY], [
- AC_REQUIRE([CC_CHECK_WERROR])
AC_CACHE_CHECK([if $CC supports -fvisibility=hidden],
[cc_cv_flag_visibility],
- [cc_flag_visibility_save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS $cc_cv_werror"
- CC_CHECK_CFLAGS_SILENT([-fvisibility=hidden],
- cc_cv_flag_visibility='yes',
- cc_cv_flag_visibility='no')
- CFLAGS="$cc_flag_visibility_save_CFLAGS"])
+ [CC_CHECK_FLAG_APPEND([cc_cv_flag_visibility], [CFLAGS], [-fvisibility=hidden])])
- AS_IF([test "x$cc_cv_flag_visibility" = "xyes"],
+ AS_IF([test "x$cc_cv_flag_visibility" != "x"],
[AC_DEFINE([SUPPORT_FLAG_VISIBILITY], 1,
[Define this if the compiler supports the -fvisibility flag])
$1],