]> git.ipfire.org Git - thirdparty/ipxe.git/commitdiff
[build] Inhibit .eh_frame on newer gcc versions
authorMichael Brown <mcb30@ipxe.org>
Fri, 2 Nov 2012 12:15:36 +0000 (12:15 +0000)
committerMichael Brown <mcb30@ipxe.org>
Fri, 2 Nov 2012 13:41:50 +0000 (13:41 +0000)
Using -fno-dwarf2-cfi-asm is not sufficient to prevent the .eh_frame
section from being generated on newer versions of gcc.  Add
-fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables;
this is sufficient to inhibit the .eh_frame section on gcc 4.7.1.

This does not affect the overall binary size, but does fix the numbers
reported by "size" for individual object files.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
src/Makefile.housekeeping

index 1e05beba44b65315e7a21a119c33dafaafd29b53..fce49288b1e62b6c722585badc07670658bbb0b3 100644 (file)
@@ -162,9 +162,12 @@ endif
 # output of "size".  Inhibit this.
 #
 ifeq ($(CCTYPE),gcc)
-CFI_TEST = $(CC) -fno-dwarf2-cfi-asm -x c -c /dev/null \
+CFI_TEST = $(CC) -fno-dwarf2-cfi-asm -fno-exceptions -fno-unwind-tables \
+                -fno-asynchronous-unwind-tables -x c -c /dev/null \
                 -o /dev/null >/dev/null 2>&1
-CFI_FLAGS := $(shell $(CFI_TEST) && $(ECHO) '-fno-dwarf2-cfi-asm')
+CFI_FLAGS := $(shell $(CFI_TEST) && \
+              $(ECHO) '-fno-dwarf2-cfi-asm -fno-exceptions ' \
+                      '-fno-unwind-tables -fno-asynchronous-unwind-tables')
 WORKAROUND_CFLAGS += $(CFI_FLAGS)
 endif