aboutsummaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure33
1 files changed, 19 insertions, 14 deletions
diff --git a/configure b/configure
index 770f4c6526..f744266681 100755
--- a/configure
+++ b/configure
@@ -436,6 +436,12 @@ EOF
compile_object
}
+write_c_skeleton() {
+ cat > $TMPC <<EOF
+int main(void) { return 0; }
+EOF
+}
+
if check_define __linux__ ; then
targetos="Linux"
elif check_define _WIN32 ; then
@@ -705,9 +711,7 @@ if test "$mingw32" = "yes" ; then
# enable C99/POSIX format strings (needs mingw32-runtime 3.15 or later)
QEMU_CFLAGS="-D__USE_MINGW_ANSI_STDIO=1 $QEMU_CFLAGS"
LIBS="-lwinmm -lws2_32 -liphlpapi $LIBS"
-cat > $TMPC << EOF
-int main(void) { return 0; }
-EOF
+ write_c_skeleton;
if compile_prog "" "-liberty" ; then
LIBS="-liberty $LIBS"
fi
@@ -1445,10 +1449,7 @@ if test -z "$werror" ; then
fi
# check that the C compiler works.
-cat > $TMPC <<EOF
-int main(void) { return 0; }
-EOF
-
+write_c_skeleton;
if compile_object ; then
: C compiler works ok
else
@@ -1496,16 +1497,20 @@ gcc_flags="-Wno-string-plus-int $gcc_flags"
# enable it for all configure tests. If a configure test failed due
# to -Werror this would just silently disable some features,
# so it's too error prone.
-cat > $TMPC << EOF
-int main(void) { return 0; }
-EOF
-for flag in $gcc_flags; do
+
+cc_has_warning_flag() {
+ write_c_skeleton;
+
# Use the positive sense of the flag when testing for -Wno-wombat
# support (gcc will happily accept the -Wno- form of unknown
# warning options).
- optflag="$(echo $flag | sed -e 's/^-Wno-/-W/')"
- if compile_prog "-Werror $optflag" "" ; then
- QEMU_CFLAGS="$QEMU_CFLAGS $flag"
+ optflag="$(echo $1 | sed -e 's/^-Wno-/-W/')"
+ compile_prog "-Werror $optflag" ""
+}
+
+for flag in $gcc_flags; do
+ if cc_has_warning_flag $flag ; then
+ QEMU_CFLAGS="$QEMU_CFLAGS $flag"
fi
done