build: Allow generating dependencies as a side-effect of assembling

This commit is contained in:
Diego Biurrun 2016-10-13 02:45:09 +02:00
parent 39e208f4d4
commit 3c0efbd033
2 changed files with 11 additions and 3 deletions

View File

@ -30,7 +30,7 @@ CCFLAGS = $(CPPFLAGS) $(CFLAGS)
OBJCFLAGS += $(EOBJCFLAGS)
OBJCCFLAGS = $(CPPFLAGS) $(CFLAGS) $(OBJCFLAGS)
ASFLAGS := $(CPPFLAGS) $(ASFLAGS)
X86ASMFLAGS += $(IFLAGS:%=%/) -Pconfig.asm
X86ASMFLAGS += $(IFLAGS:%=%/) -I$(<D)/ -Pconfig.asm
HOSTCCFLAGS = $(IFLAGS) $(HOSTCPPFLAGS) $(HOSTCFLAGS)
LDFLAGS := $(ALLFFLIBS:%=$(LD_PATH)lib%) $(LDFLAGS)
@ -42,6 +42,7 @@ endef
COMPILE_C = $(call COMPILE,CC)
COMPILE_S = $(call COMPILE,AS)
COMPILE_M = $(call COMPILE,OBJCC)
COMPILE_X86ASM = $(call COMPILE,X86ASM)
COMPILE_HOSTC = $(call COMPILE,HOSTCC)
%.o: %.c
@ -57,8 +58,7 @@ COMPILE_HOSTC = $(call COMPILE,HOSTCC)
$(COMPILE_HOSTC)
%.o: %.asm
$(DEPX86ASM) $(X86ASMFLAGS) -I $(<D)/ -M -o $@ $< > $(@:.o=.d)
$(X86ASM) $(X86ASMFLAGS) -I $(<D)/ -o $@ $<
$(COMPILE_X86ASM)
-$(STRIP) $(STRIPFLAGS) $@
%.i: %.c

8
configure vendored
View File

@ -2628,6 +2628,7 @@ CC_O='-o $@'
OBJCC_C='-c'
OBJCC_E='-E -o $@'
OBJCC_O='-o $@'
X86ASM_O='-o $@'
LD_O='-o $@'
LD_LIB='-l%'
LD_PATH='-L'
@ -4476,9 +4477,11 @@ EOF
if check_cmd $x86asmexe --version; then
enabled x86_64 && x86asm_extra="-m amd64"
x86asm_debug="-g dwarf2"
X86ASMDEP='$(DEPX86ASM) $(X86ASMFLAGS) -M $(X86ASM_O) $< > $(@:.o=.d)'
elif check_cmd nasm -v; then
x86asmexe=nasm
x86asm_debug="-g -F dwarf"
X86ASM_DEPFLAGS='-MD $(@:.o=.d)'
enabled x86_64 && test "$objformat" = elf && objformat=elf64
fi
@ -5335,6 +5338,7 @@ DEPAS=$as
DEPASFLAGS=$DEPASFLAGS \$(CPPFLAGS)
X86ASM=$x86asmexe
DEPX86ASM=$x86asmexe
DEPX86ASMFLAGS=\$(X86ASMFLAGS)
AR=$ar
ARFLAGS=$arflags
AR_O=$ar_o
@ -5353,6 +5357,7 @@ OBJCC_O=$OBJCC_O
CC_C=$CC_C
CC_E=$CC_E
CC_O=$CC_O
X86ASM_O=$X86ASM_O
LD_O=$LD_O
LD_LIB=$LD_LIB
LD_PATH=$LD_PATH
@ -5373,8 +5378,11 @@ CCDEP=$CCDEP
CCDEP_FLAGS=$CCDEP_FLAGS
ASDEP=$ASDEP
ASDEP_FLAGS=$ASDEP_FLAGS
X86ASMDEP=$X86ASMDEP
X86ASMDEP_FLAGS=$X86ASMDEP_FLAGS
CC_DEPFLAGS=$CC_DEPFLAGS
AS_DEPFLAGS=$AS_DEPFLAGS
X86ASM_DEPFLAGS=$X86ASM_DEPFLAGS
HOSTCC=$host_cc
HOSTLD=$host_ld
HOSTCFLAGS=$host_cflags