summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego E. 'Flameeyes' Pettenò <flameeyes@gmail.com>2008-11-19 02:59:39 +0100
committerDiego E. 'Flameeyes' Pettenò <flameeyes@gmail.com>2008-11-19 02:59:39 +0100
commit8ddba5b2d16ccf1505eb332717b02f5c5793802f (patch)
tree994820ce67e4c52f7a95cd1c941aa5b2d801f426
parent7df47df662414abf58b25d872c8f2ebf141072d6 (diff)
downloadxine-lib-8ddba5b2d16ccf1505eb332717b02f5c5793802f.tar.gz
xine-lib-8ddba5b2d16ccf1505eb332717b02f5c5793802f.tar.bz2
Enable basic warnings even when optimisations are disabled.
We don't want to have warnings conditional to extreme optimisations: if the compiler supports them, they should be enabled. The reason why they were conditional is that the code testing for GCC presence enabled both warnings and optimisations, and the warnings were carried over when the optimisations were made optional.
-rw-r--r--configure.ac17
-rw-r--r--m4/optimizations.m48
2 files changed, 11 insertions, 14 deletions
diff --git a/configure.ac b/configure.ac
index dd37376d3..6a788e13a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2617,22 +2617,27 @@ _AM_DEPENDENCIES([OBJC])
AM_CONDITIONAL([BUILD_DMX_IMAGE], [test "x$have_imagemagick" = "xyes" -o "x$no_gdkpixbuf" != "xyes"])
-dnl Important warnings we _don't_ want to skip
-dnl Don't put these under conditional for optimisations, because these
-dnl need always to be enabled.
+dnl We check for warnings here rather than with optimisations since we
+dnl want them to be _always_ enabled, to make sure the code is sane
+dnl enough.
+
+CC_CHECK_CFLAGS_APPEND([-Wall -Wchar-subscripts dnl
+ -Wnested-externs -Wcast-align dnl
+ -Wmissing-declarations -Wmissing-prototypes dnl
+ -Wmissing-format-attribute])
+
CC_CHECK_CFLAGS_APPEND([-Wformat=2 -Wformat],
[CC_CHECK_CFLAGS_APPEND([-Wno-format-zero-length])
break;
])
-CC_CHECK_CFLAGS_APPEND([-Wmissing-format-attribute])
-
dnl check for strict aliasing problem, get the highest between =2 and
dnl normal.
CC_CHECK_CFLAGS_APPEND([-Wstrict-aliasing=2 -Wstrict-aliasing], [break;])
dnl This *has* to stay at the end as it can break some autoconf tests.
-CC_CHECK_CFLAGS_APPEND([-Werror=implicit-function-declaration -Werror-implicit-function-declaration], [break;])
+CC_CHECK_CFLAGS_APPEND([-Werror=implicit-function-declaration dnl
+ -Werror-implicit-function-declaration], [break;])
CC_NOUNDEFINED
diff --git a/m4/optimizations.m4 b/m4/optimizations.m4
index 88ad99890..405672cca 100644
--- a/m4/optimizations.m4
+++ b/m4/optimizations.m4
@@ -43,11 +43,6 @@ AC_DEFUN([AC_OPTIMIZATIONS], [
CC_CHECK_CFLAGS([-fbranch-probabilities], PASS2_CFLAGS="-fbranch-probabilities $PASS2_CFLAGS",)
AC_SUBST(PASS1_CFLAGS)
AC_SUBST(PASS2_CFLAGS)
- dnl
- dnl Warnings
- dnl
- CFLAGS="-Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes $CFLAGS"
- CFLAGS="-Wnested-externs -Wcast-align $CFLAGS"
dnl some combinations of gcc+glibc produce useless warnings on memset
dnl when compiling with -Wpointer-arith, so we check for this first
AC_MSG_CHECKING(for sane -Wpointer-arith)
@@ -68,9 +63,6 @@ AC_DEFUN([AC_OPTIMIZATIONS], [
test "$newGCC" = yes || INLINE_FUNCTIONS=-fno-inline-functions
fi
- dnl Flags not supported by all *cc* variants
- CC_CHECK_CFLAGS([-Wall], wall="-Wall", wall="")
-
CFLAGS="$wall ${CFLAGS}"
DEBUG_CFLAGS="$wall ${DEBUG_CFLAGS}"