mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
build: fix dependency tracking for preprocessed files
While the issue is more general, I noticed that asm-macros.i not getting re-generated as needed. This was due to its .*.d file mentioning asm-macros.o instead of asm-macros.i. Use -MQ here as well, and while at it also use -MQ to avoid the somewhat fragile sed-ary on the *.lds dependency tracking files. While there, further avoid open-coding $(CPP) and drop the bogus (Arm) / stale (x86) -Ui386. Signed-off-by: Jan Beulich <jbeulich@suse.com> Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com> Acked-by: Julien Grall <jgrall@amazon.com> Release-acked-by: Paul Durrant <paul@xen.org>
This commit is contained in:
1 parent
51ca66c373
commit
75131ad75b
3 files changed
+4
-8
No files matched your search
+2
-2
@@ -201,13 +201,13 @@ $(filter %.init.o,$(obj-y) $(obj-bin-y) $(extra-y)): %.init.o: %.o FORCE
|
||||
$(call if_changed,obj_init_o)
|
||||
|
||||
quiet_cmd_cpp_i_c = CPP $@
|
||||
cmd_cpp_i_c = $(CPP) $(filter-out -Wa$(comma)%,$(c_flags)) $< -o $@
|
||||
cmd_cpp_i_c = $(CPP) $(filter-out -Wa$(comma)%,$(c_flags)) -MQ $@ -o $@ $<
|
||||
|
||||
quiet_cmd_cc_s_c = CC $@
|
||||
cmd_cc_s_c = $(CC) $(filter-out -Wa$(comma)%,$(c_flags)) -S $< -o $@
|
||||
|
||||
quiet_cmd_s_S = CPP $@
|
||||
cmd_s_S = $(CPP) $(filter-out -Wa$(comma)%,$(a_flags)) $< -o $@
|
||||
cmd_s_S = $(CPP) $(filter-out -Wa$(comma)%,$(a_flags)) -MQ $@ -o $@ $<
|
||||
|
||||
%.i: %.c FORCE
|
||||
$(call if_changed,cpp_i_c)
|
||||
|
||||
@@ -123,9 +123,7 @@ asm-offsets.s: $(TARGET_SUBARCH)/asm-offsets.c
|
||||
$(CC) $(filter-out -flto,$(c_flags)) -S -o $@ $<
|
||||
|
||||
xen.lds: xen.lds.S
|
||||
$(CC) -P -E -Ui386 $(a_flags) -o $@ $<
|
||||
sed -e 's/xen\.lds\.o:/xen\.lds:/g' <.xen.lds.d >.xen.lds.d.new
|
||||
mv -f .xen.lds.d.new .xen.lds.d
|
||||
$(CPP) -P $(a_flags) -MQ $@ -o $@ $<
|
||||
|
||||
dtb.o: $(CONFIG_DTB_FILE)
|
||||
|
||||
|
||||
@@ -244,9 +244,7 @@ $(BASEDIR)/include/asm-x86/asm-macros.h: asm-macros.i Makefile
|
||||
|
||||
efi.lds: AFLAGS-y += -DEFI
|
||||
xen.lds efi.lds: xen.lds.S
|
||||
$(CC) -P -E -Ui386 $(filter-out -Wa$(comma)%,$(a_flags)) -o $@ $<
|
||||
sed -e 's/.*\.lds\.o:/$(@F):/g' <.$(@F).d >.$(@F).d.new
|
||||
mv -f .$(@F).d.new .$(@F).d
|
||||
$(CPP) -P $(filter-out -Wa$(comma)%,$(a_flags)) -MQ $@ -o $@ $<
|
||||
|
||||
boot/mkelf32: boot/mkelf32.c
|
||||
$(HOSTCC) $(HOSTCFLAGS) -o $@ $<
|
||||
|
||||