diff mbox

x86/EFI: fix build when using GNU Make 4.1

Message ID 20170202224642.19368-1-cardoe@cardoe.com (mailing list archive)
State New, archived
Headers show

Commit Message

Douglas Goldstein Feb. 2, 2017, 10:46 p.m. UTC
Since c/s eee5909e9d (x86/EFI: use less crude a way of generating the
build ID) builds have been broken when using GNU Make 4.1. This is
because there are no dependencies on buildid.o and as such GNU Make does
not build it. This adds a dependency so that it is built.

Note: This patch is different than I was going to originally submit, I
had used runtime.o but while testing this I saw Daniel Kiper's v14 of
his multiboot2 series come along and I modified my patch so that he
would not have to rebase.

Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
---
CC: Jan Beulich <jbeulich@suse.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>

Jan,
  This needs to be backported to 4.8 as well.
---
 xen/arch/x86/efi/Makefile | 2 ++
 1 file changed, 2 insertions(+)

Comments

Jan Beulich Feb. 3, 2017, 7:53 a.m. UTC | #1
>>> On 02.02.17 at 23:46, <cardoe@cardoe.com> wrote:
> Since c/s eee5909e9d (x86/EFI: use less crude a way of generating the
> build ID) builds have been broken when using GNU Make 4.1. This is
> because there are no dependencies on buildid.o and as such GNU Make does
> not build it. This adds a dependency so that it is built.

While I trust you to see an actual problem, I can't follow this
explanation: 

> --- a/xen/arch/x86/efi/Makefile
> +++ b/xen/arch/x86/efi/Makefile
> @@ -14,5 +14,7 @@ extra-$(efi) += boot.init.o relocs-dummy.o runtime.o compat.o buildid.o
>  %.o: %.ihex
>  	$(OBJCOPY) -I ihex -O binary $< $@
>  
> +boot.init.o: buildid.o
> +
>  stub.o: $(extra-y)

Here we see a dependency of stub.o on $(extra-y), and in the hunk
header we see that extra-y includes buildid.o. And if a proper
dependency was missing, I wouldn't be able to tell why things work
with older make, nor would I understand why it fails for you but not
for me with 4.1. So there must be something more to this. Is it
perhaps really Daniel's patch 2, up to v13 of which introduced this
problem (in which case it should really be fixed there, instead of by
a standalone change)?

Jan
diff mbox

Patch

diff --git a/xen/arch/x86/efi/Makefile b/xen/arch/x86/efi/Makefile
index ad3fdf7..af5324f 100644
--- a/xen/arch/x86/efi/Makefile
+++ b/xen/arch/x86/efi/Makefile
@@ -14,5 +14,7 @@  extra-$(efi) += boot.init.o relocs-dummy.o runtime.o compat.o buildid.o
 %.o: %.ihex
 	$(OBJCOPY) -I ihex -O binary $< $@
 
+boot.init.o: buildid.o
+
 stub.o: $(extra-y)
 nogcov-$(efi) += stub.o