build: factor out the .c and .S compile commands as a macro
[libav.git] / Makefile
index f1bede8..f16da3a 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -23,16 +23,23 @@ endif
 IFLAGS     := -I. -I$(SRC_PATH)
 CPPFLAGS   := $(IFLAGS) $(CPPFLAGS)
 CFLAGS     += $(ECFLAGS)
+CCFLAGS     = $(CFLAGS)
 YASMFLAGS  += $(IFLAGS) -Pconfig.asm
 HOSTCFLAGS += $(IFLAGS)
 
+define COMPILE
+       $($(1)DEP)
+       $($(1)) $(CPPFLAGS) $($(1)FLAGS) $($(1)_DEPFLAGS) -c $($(1)_O) $<
+endef
+
+COMPILE_C = $(call COMPILE,CC)
+COMPILE_S = $(call COMPILE,AS)
+
 %.o: %.c
-       $(CCDEP)
-       $(CC) $(CPPFLAGS) $(CFLAGS) $(CC_DEPFLAGS) -c $(CC_O) $<
+       $(COMPILE_C)
 
 %.o: %.S
-       $(ASDEP)
-       $(AS) $(CPPFLAGS) $(ASFLAGS) $(AS_DEPFLAGS) -c -o $@ $<
+       $(COMPILE_S)
 
 %.ho: %.h
        $(CC) $(CPPFLAGS) $(CFLAGS) -Wno-unused -c -o $@ -x c $<