build: add rules to generate preprocessed source files
authorMans Rullgard <mans@mansr.com>
Wed, 3 Oct 2012 12:48:27 +0000 (13:48 +0100)
committerMans Rullgard <mans@mansr.com>
Fri, 23 Nov 2012 12:03:32 +0000 (12:03 +0000)
This is useful for debugging.  Dependencies for these files are not
generated due to limitations in many compilers.

Signed-off-by: Mans Rullgard <mans@mansr.com>
Makefile
configure
library.mak

index 5e1dae6..91acc4c 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -45,6 +45,9 @@ COMPILE_S = $(call COMPILE,AS)
 %.o: %.S
        $(COMPILE_S)
 
+%.i: %.c
+       $(CC) $(CCFLAGS) $(CC_E) $<
+
 %.h.c:
        $(Q)echo '#include "$*.h"' >$@
 
index 890ff93..0883035 100755 (executable)
--- a/configure
+++ b/configure
@@ -3756,6 +3756,7 @@ ASFLAGS=$ASFLAGS
 AS_C=$AS_C
 AS_O=$AS_O
 CC_C=$CC_C
+CC_E=$CC_E
 CC_O=$CC_O
 LD_O=$LD_O
 LD_LIB=$LD_LIB
index 33ec37f..9309c42 100644 (file)
@@ -17,12 +17,19 @@ $(SUBDIR)%-test.o: $(SUBDIR)%-test.c
 $(SUBDIR)%-test.o: $(SUBDIR)%.c
        $(COMPILE_C)
 
+$(SUBDIR)%-test.i: $(SUBDIR)%-test.c
+       $(CC) $(CCFLAGS) $(CC_E) $<
+
+$(SUBDIR)%-test.i: $(SUBDIR)%.c
+       $(CC) $(CCFLAGS) $(CC_E) $<
+
 $(SUBDIR)x86/%.o: $(SUBDIR)x86/%.asm
        $(DEPYASM) $(YASMFLAGS) -I $(<D)/ -M -o $@ $< > $(@:.o=.d)
        $(YASM) $(YASMFLAGS) -I $(<D)/ -o $@ $<
 
-$(OBJS) $(SUBDIR)%.h.o $(TESTOBJS): CPPFLAGS += -DHAVE_AV_CONFIG_H
-$(TESTOBJS): CPPFLAGS += -DTEST
+LIBOBJS := $(OBJS) $(SUBDIR)%.h.o $(TESTOBJS)
+$(LIBOBJS) $(LIBOBJS:.o=.i):   CPPFLAGS += -DHAVE_AV_CONFIG_H
+$(TESTOBJS) $(TESTOBJS:.o=.i): CPPFLAGS += -DTEST
 
 $(SUBDIR)$(LIBNAME): $(OBJS)
        $(RM) $@