Browse Source

[build] Avoid spurious address comparison warnings in gcc 4.6

A construction such as "assert ( ptr != NULL )" seems to trigger a
false positive warning in gcc 4.6 if the value of "ptr" is known at
compile-time to be non-NULL.  Use -Wno-address to inhibit this
warning.

Reported-by: Ralph Giles <giles@thaumas.net>
Tested-by: Ralph Giles <giles@thaumas.net>
Signed-off-by: Michael Brown <mcb30@ipxe.org>
tags/v1.20.1
Michael Brown 13 years ago
parent
commit
c8e51f80a8
1 changed files with 9 additions and 0 deletions
  1. 9
    0
      src/Makefile.housekeeping

+ 9
- 0
src/Makefile.housekeeping View File

@@ -148,6 +148,15 @@ CFI_FLAGS := $(shell $(CFI_TEST) && $(ECHO) '-fno-dwarf2-cfi-asm')
148 148
 WORKAROUND_CFLAGS += $(CFI_FLAGS)
149 149
 endif
150 150
 
151
+# gcc 4.6 generates spurious warnings if -Waddress is in force.
152
+# Inhibit this.
153
+#
154
+ifeq ($(CCTYPE),gcc)
155
+WNA_TEST = $(CC) -Wno-address -x c -c /dev/null -o /dev/null >/dev/null 2>&1
156
+WNA_FLAGS := $(shell $(WNA_TEST) && $(ECHO) '-Wno-address')
157
+WORKAROUND_CFLAGS += $(WNA_FLAGS)
158
+endif
159
+
151 160
 # Some versions of gas choke on division operators, treating them as
152 161
 # comment markers.  Specifying --divide will work around this problem,
153 162
 # but isn't available on older gas versions.

Loading…
Cancel
Save