build: prepare to enable -Werror also for gnulib-tests/
authorJim Meyering <meyering@redhat.com>
Wed, 13 Oct 2010 09:20:18 +0000 (11:20 +0200)
committerJim Meyering <meyering@redhat.com>
Wed, 13 Oct 2010 09:20:18 +0000 (11:20 +0200)
* configure.ac (GNULIB_WARN_CFLAGS): Define new variable, for use
in gnulib-tests.
* gnulib-tests/Makefile.am: Disable specific -W___ options,
but only for a few specific offending tests:
(test_xvasprintf_CFLAGS): Define.
(test_lock_CFLAGS, test_tls_CFLAGS): Define.

configure.ac
gnulib-tests/Makefile.am

index acd397e..4ac30e8 100644 (file)
@@ -124,6 +124,13 @@ if test "$gl_gcc_warnings" = yes; then
   nw="$nw -Wold-style-definition"
   gl_MANYWARN_COMPLEMENT([GNULIB_WARN_CFLAGS], [$WARN_CFLAGS], [$nw])
   AC_SUBST([GNULIB_WARN_CFLAGS])
+
+  # For gnulib-tests, the set is slightly smaller still.
+  nw=
+  nw="$nw -Wstrict-prototypes"
+  gl_MANYWARN_COMPLEMENT([GNULIB_TEST_WARN_CFLAGS],
+                         [$GNULIB_WARN_CFLAGS], [$nw])
+  AC_SUBST([GNULIB_TEST_WARN_CFLAGS])
 fi
 
 AC_FUNC_FORK
index c3a48e8..7ec0a1c 100644 (file)
@@ -1,3 +1,17 @@
 include gnulib.mk
 
-AM_CFLAGS = $(GNULIB_WARN_CFLAGS) # $(WERROR_CFLAGS)
+AM_CFLAGS = $(GNULIB_TEST_WARN_CFLAGS) # $(WERROR_CFLAGS)
+
+# A few tests are inherently warning-evoking.
+# Since we require -Werror, exempt the few offenders.
+
+# test-xvasprintf.c: In function 'test_xasprintf':
+# test-xvasprintf.c:100: error: format not a string literal and no \
+#   format arguments [-Wformat-security]
+test_xvasprintf_CFLAGS = $(AM_CFLAGS) -Wno-format-security
+
+# test-lock.c: In function 'lock_mutator_thread':
+# test-lock.c:148: error: cast from function call of type 'pthread_t' to \
+#   non-matching type 'void *' [-Wbad-function-cast]
+test_lock_CFLAGS = $(AM_CFLAGS) -Wno-bad-function-cast
+test_tls_CFLAGS = $(AM_CFLAGS) -Wno-bad-function-cast