tests: do not assume compiler knows -Wxxx flags
authorPaul Eggert <eggert@cs.ucla.edu>
Wed, 22 Dec 2010 09:48:27 +0000 (01:48 -0800)
committerPaul Eggert <eggert@cs.ucla.edu>
Wed, 22 Dec 2010 09:48:54 +0000 (01:48 -0800)
* gnulib-tests/Makefile.am (test_xvasprintf_CFLAGS):
(test_lock_CFLAGS, test_tls_CFLAGS): Do not append GCC-specific
flags like -Wno-format-security unless the GCC-specific flag
-Werror is also specified.  This avoids a "make check" failure on
Solaris when using Sun C 5.8.

gnulib-tests/Makefile.am

index 9883a77..311baf9 100644 (file)
@@ -3,15 +3,18 @@ include gnulib.mk
 AM_CFLAGS = $(GNULIB_TEST_WARN_CFLAGS) $(WERROR_CFLAGS)
 
 # A few tests are inherently warning-evoking.
-# Since we require -Werror, exempt the few offenders.
+# In the typical case where we use -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_xvasprintf_CFLAGS = $(AM_CFLAGS) \
+  `test X$(WERROR_CFLAGS) = X || echo ' -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
+test_lock_CFLAGS = $(AM_CFLAGS) \
+  `test X$(WERROR_CFLAGS) = X || echo ' -Wno-bad-function-cast'`
+test_tls_CFLAGS = $(AM_CFLAGS) \
+  `test X$(WERROR_CFLAGS) = X || echo ' -Wno-bad-function-cast'`