From 8dc7572164d1f630fed49e695d4bf62ea8e09a15 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Fri, 19 Feb 2016 18:24:22 +0300 Subject: Fix all known warnings from compiler flags -Wformat* Add all missing -Wformat flags into configure. --- 3rdparty/libconfig/libconfig.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to '3rdparty') diff --git a/3rdparty/libconfig/libconfig.c b/3rdparty/libconfig/libconfig.c index 0942241c2..696f5fc08 100644 --- a/3rdparty/libconfig/libconfig.c +++ b/3rdparty/libconfig/libconfig.c @@ -192,7 +192,7 @@ static void __config_write_value(const struct config_t *config, switch(format) { case CONFIG_FORMAT_HEX: - fprintf(stream, "0x%X", value->ival); + fprintf(stream, "0x%X", (unsigned int)(value->ival)); break; case CONFIG_FORMAT_DEFAULT: @@ -207,7 +207,7 @@ static void __config_write_value(const struct config_t *config, switch(format) { case CONFIG_FORMAT_HEX: - fprintf(stream, "0x" INT64_HEX_FMT "L", value->llval); + fprintf(stream, "0x" INT64_HEX_FMT "L", (unsigned long long)(value->llval)); break; case CONFIG_FORMAT_DEFAULT: @@ -291,7 +291,7 @@ static void __config_write_value(const struct config_t *config, if(c >= ' ') fputc(c, stream); else - fprintf(stream, "\\x%02X", c); + fprintf(stream, "\\x%02X", (unsigned int)(c)); } } } -- cgit v1.2.3-70-g09d2 From fd7cd2c4b768745ef711c0b28b0c7b03ac57e486 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Fri, 19 Feb 2016 18:45:25 +0300 Subject: Fix missing include dirs. Add compiler flag -Wmissing-include-dirs. --- 3rdparty/mysql/include/my_global.h | 2 +- configure | 54 ++++++++++++++++++++++++++++++++++++-- configure.in | 4 ++- 3 files changed, 56 insertions(+), 4 deletions(-) (limited to '3rdparty') diff --git a/3rdparty/mysql/include/my_global.h b/3rdparty/mysql/include/my_global.h index 2417477e2..8e4287c19 100644 --- a/3rdparty/mysql/include/my_global.h +++ b/3rdparty/mysql/include/my_global.h @@ -93,7 +93,7 @@ #define NETWARE_SET_SCREEN_MODE(A) #endif -#include "../common/strlib.h" +#include "common/strlib.h" /* The macros below are borrowed from include/linux/compiler.h in the diff --git a/configure b/configure index 65434e67b..b8f8f41f6 100755 --- a/configure +++ b/configure @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in c2c1322. +# From configure.in 8dc7572. # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.69. # @@ -4572,7 +4572,8 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu # -Wfloat-equal comparing floating point with == or != is unsafe # flags what can be used but now return no warnings: -Warray-bounds -Wbool-compare -Wcast-align # -Wchar-subscripts -Wchkp -Wclobbered -Wcomment -Wdisabled-optimization -Wempty-body -# -Werror-implicit-function-declaration +# -Werror-implicit-function-declaration -Wignored-qualifiers +# -Winit-self CFLAGS="$CFLAGS -pipe -ffast-math -Wall -Wextra -Wno-sign-compare" CPPFLAGS="$CPPFLAGS -I../common" @@ -6607,6 +6608,55 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -Wmissing-include-dirs" >&5 +$as_echo_n "checking whether $CC supports -Wmissing-include-dirs... " >&6; } + OLD_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -Werror -Wmissing-include-dirs" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int foo; +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + CFLAGS="$OLD_CFLAGS -Wmissing-include-dirs" + # Optionally, run a test + if test "x" != "x"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC can actually use -Wmissing-include-dirs" >&5 +$as_echo_n "checking whether $CC can actually use -Wmissing-include-dirs... " >&6; } + CFLAGS="$OLD_CFLAGS -Werror -Wmissing-include-dirs" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + CFLAGS="$OLD_CFLAGS" + + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + CFLAGS="$OLD_CFLAGS -Wmissing-include-dirs" + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi + +else + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + CFLAGS="$OLD_CFLAGS" + + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -Wno-format-nonliteral" >&5 $as_echo_n "checking whether $CC supports -Wno-format-nonliteral... " >&6; } OLD_CFLAGS="$CFLAGS" diff --git a/configure.in b/configure.in index ee73e1cba..9618113eb 100644 --- a/configure.in +++ b/configure.in @@ -461,7 +461,8 @@ AC_LANG([C]) # -Wfloat-equal comparing floating point with == or != is unsafe # flags what can be used but now return no warnings: -Warray-bounds -Wbool-compare -Wcast-align # -Wchar-subscripts -Wchkp -Wclobbered -Wcomment -Wdisabled-optimization -Wempty-body -# -Werror-implicit-function-declaration +# -Werror-implicit-function-declaration -Wignored-qualifiers +# -Winit-self CFLAGS="$CFLAGS -pipe -ffast-math -Wall -Wextra -Wno-sign-compare" CPPFLAGS="$CPPFLAGS -I../common" @@ -809,6 +810,7 @@ AC_CHECK_COMPILER_WFLAG(format-security) AC_CHECK_COMPILER_WFLAG(format) AC_CHECK_COMPILER_WFLAG(format-signedness) AC_CHECK_COMPILER_WFLAG(format-y2k) +AC_CHECK_COMPILER_WFLAG(missing-include-dirs) AC_CHECK_COMPILER_WNOFLAG(format-nonliteral) AC_CHECK_COMPILER_WNOFLAG(switch) AC_CHECK_COMPILER_WNOFLAG(missing-field-initializers) -- cgit v1.2.3-70-g09d2