On Thu, Mar 05, 2015 at 01:22:31PM -0500, Greg Troxel wrote: > David Lamparter <[email protected]> writes: > > > Everything else *should* be trivial. Note the last 2 patches in the > > branch change CFLAGS behavior and add "--enable-werror". I intend to > > start using the latter and insta-refuse any patches that introduce > > warnings. > > Thanks for doing this - it helps a lot to get to a 'no warnings > allowed' state. > > > I am a little uncomfortable with the notion of trying a random list of > cflags and accepting those that don't error. But I can't think of > trouble from this.
I've done the very same thing in 2006 on another software package without any ill effects. In fact, I stole my own autoconf macro (AC_C_FLAG) from there ;D > Diffing builds from release and this branch turned up different flags, > but it's hard to figure out from reorderingl I did indeed change some bits there; -Wcast-qual got bumped down to "--enable-gcc-ultra-verbose" (it was way too noisy) and -Wextra replaced some individual flags. -Wno-unused-parameter and -Wno-missing-field-initializers are new to silence false warnings from -Wextra. > There's a note in the configure output about make not being GNU make. > Our docs say that it's a bug if quagga doesn't build with the system > make on recent *BSD (meaning that we may not use gnu make extensions). > As far as I know (I build that way) this is actually true. So any > 'require gnu make' in the configure.ac is off. This might not be a new > issue. Indeed it works at least on FreeBSD with the system's make. Only the solaris/ directory's Makefile seems to use GNUisms (oh the irony...), but I'd say this is a change for another day. (Patches welcome!) [...] > From "./README.NetBSD build" on NetBSD 6 i386 with system gcc: > gcc version 4.5.3 (NetBSD nb2 20110806) > > Diffing from a build on master, many warnings remain and many have been > fixed. Broad themes of what's left (plus a few less-common ones): > > time_t printed as "long int" > > signed/unsigned > > size_t printed as "long int" (instead of %z) > > array subscript has type 'char' (due to isalpha or similar on char, > when it's documented to take an int; the spec says: > The argument to isalpha() must be EOF or representable as an unsigned > char; otherwise, the behavior is undefined. See the CAVEATS section of > ctype(3) for more details. These should all be fixed - I think - can you retest? Thanks, -David _______________________________________________ Quagga-dev mailing list [email protected] https://lists.quagga.net/mailman/listinfo/quagga-dev
