build system: compile without maybe-uninitialized warnings for gcc

See e.g.
http://stackoverflow.com/questions/21755206/how-to-get-around-gcc-void-b-4-may-be-used-uninitialized-in-this-funct
This commit is contained in:
Moritz Bunkus 2015-05-23 19:28:57 +02:00
parent a590f91e10
commit 3b8458f38d
3 changed files with 9 additions and 3 deletions

View File

@ -117,7 +117,7 @@ def setup_globals
cflags = "#{cflags_common} #{c(:USER_CFLAGS)}"
cxxflags = "#{cflags_common} #{c(:STD_CXX)}"
cxxflags += " -Wnon-virtual-dtor -Woverloaded-virtual -Wextra -Wno-missing-field-initializers"
cxxflags += " -Wnon-virtual-dtor -Woverloaded-virtual -Wextra -Wno-missing-field-initializers #{c(:WNO_MAYBE_UNINITIALIZED)}"
cxxflags += " #{c(:WXWIDGETS_CFLAGS)} #{c(:QT_CFLAGS)} #{c(:BOOST_CPPFLAGS)} #{c(:CURL_CFLAGS)} #{c(:USER_CXXFLAGS)}"
ldflags = ""

View File

@ -20,8 +20,12 @@ if test x"$ac_cv_compiler_is_clang" = xyes; then
AC_LANG_POP()
CXXFLAGS="$ac_save_CXXFLAGS"
elif check_version 4.8.0 $ac_cv_gcc_version ; then
WLOGICAL_OP="-Wlogical-op"
else
WNO_MAYBE_UNINITIALIZED="-Wno-maybe-uninitialized"
if check_version 4.8.0 $ac_cv_gcc_version ; then
WLOGICAL_OP="-Wlogical-op"
fi
fi
AC_SUBST(QUNUSED_ARGUMENTS)
@ -30,3 +34,4 @@ AC_SUBST(WNO_MISMATCHED_TAGS)
AC_SUBST(WLOGICAL_OP)
AC_SUBST(WNO_INCONSISTENT_MISSING_OVERRIDE)
AC_SUBST(WNO_POTENTIALLY_EVALUATED_EXPRESSION)
AC_SUBST(WNO_MAYBE_UNINITIALIZED)

View File

@ -118,6 +118,7 @@ VORBIS_LIBS = @VORBIS_LIBS@
WLOGICAL_OP = @WLOGICAL_OP@
WNO_INCONSISTENT_MISSING_OVERRIDE = @WNO_INCONSISTENT_MISSING_OVERRIDE@
WNO_MISMATCHED_TAGS = @WNO_MISMATCHED_TAGS@
WNO_MAYBE_UNINITIALIZED = @WNO_MAYBE_UNINITIALIZED@
WNO_POTENTIALLY_EVALUATED_EXPRESSION = @WNO_POTENTIALLY_EVALUATED_EXPRESSION@
WNO_SELF_ASSIGN = @WNO_SELF_ASSIGN@
WXWIDGETS_CFLAGS = @WXWIDGETS_CFLAGS@