chain: Add DOS partition dumping routine for debugging
[profile/ivi/syslinux.git] / MCONFIG.embedded
index fee374f..9f5846d 100644 (file)
 
 include $(topdir)/MCONFIG
 
-GCCOPT    := $(call gcc_ok,-m32,) \
-            $(call gcc_ok,-ffreestanding,) \
-            $(call gcc_ok,-fno-stack-protector,) \
-            $(call gcc_ok,-falign-functions=0,-malign-functions=0) \
-            $(call gcc_ok,-falign-jumps=0,-malign-jumps=0) \
-            $(call gcc_ok,-falign-loops=0,-malign-loops=0) \
-            -march=i386 -Os -fomit-frame-pointer -mregparm=3 -DREGPARM=3 \
+GCCOPT    := $(call gcc_ok,-m32,)
+GCCOPT    += $(call gcc_ok,-ffreestanding,)
+GCCOPT   += $(call gcc_ok,-fno-stack-protector,)
+GCCOPT   += $(call gcc_ok,-fwrapv,)
+GCCOPT   += $(call gcc_ok,-freg-struct-return,)
+GCCOPT    += -march=i386 -Os -fomit-frame-pointer -mregparm=3 -DREGPARM=3 \
             -msoft-float
+GCCOPT    += $(call gcc_ok,-fno-exceptions,)
+GCCOPT   += $(call gcc_ok,-fno-asynchronous-unwind-tables,)
+GCCOPT   += $(call gcc_ok,-fno-strict-aliasing,)
+GCCOPT   += $(call gcc_ok,-falign-functions=0,-malign-functions=0)
+GCCOPT    += $(call gcc_ok,-falign-jumps=0,-malign-jumps=0)
+GCCOPT    += $(call gcc_ok,-falign-labels=0,-malign-labels=0)
+GCCOPT    += $(call gcc_ok,-falign-loops=0,-malign-loops=0)
+GCCOPT    += $(call gcc_ok,-mpreferred-stack-boundary=2,)
+GCCOPT    += $(call gcc_ok,-mincoming-stack-boundary=2,)
 
 LIBGCC    := $(shell $(CC) $(GCCOPT) --print-libgcc)
 
 LD        += -m elf_i386
-CFLAGS     = $(GCCOPT) -g -W -Wall $(OPTFLAGS) $(INCLUDES)
-SFLAGS     = $(CFLAGS) -D__ASSEMBLY__
+
+# Note: use += for CFLAGS and SFLAGS in case something is set in MCONFIG.local
+CFLAGS    += $(GCCOPT) -g $(GCCWARN) -Wno-sign-compare $(OPTFLAGS) $(INCLUDES)
+SFLAGS    += $(CFLAGS) -D__ASSEMBLY__
 
 .SUFFIXES: .c .o .S .s .i .elf .com .bin .asm .lst .c32 .lss
 
+%.o: %.c
+       $(CC) $(MAKEDEPS) $(CFLAGS) -c -o $@ $<
+%.i: %.c
+       $(CC) $(MAKEDEPS) $(CFLAGS) -E -o $@ $<
+%.s: %.c
+       $(CC) $(MAKEDEPS) $(CFLAGS) -S -o $@ $<
+%.o: %.S
+       $(CC) $(MAKEDEPS) $(SFLAGS) -Wa,-a=$*.lst -c -o $@ $<
+%.s: %.S
+       $(CC) $(MAKEDEPS) $(SFLAGS) -E -o $@ $<