diff mbox series

[U-Boot,1/2] efi_selftest: allow building relocation code on x86_64

Message ID 20180518171220.9493-2-xypron.glpk@gmx.de
State Accepted
Commit 508d8567046fe3c0d1354fc3a7a6f81d9661a661
Delegated to: Alexander Graf
Headers show
Series Allow building EFI binaries on x86_64 | expand

Commit Message

Heinrich Schuchardt May 18, 2018, 5:12 p.m. UTC
Variables EFI_RELOC and EFI_CRT0 have to be defined to build the
EFI unit tests. This patch ensures this for the x86 architecure.

If we compile with EFI_STUB, the bitness depends on CONFIG_EFI_STUB_64BIT.
Otherwise the bitness depends on CONFIG_X86_64.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
---
 arch/x86/config.mk | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

Comments

Simon Glass May 22, 2018, 11:29 p.m. UTC | #1
On 18 May 2018 at 11:12, Heinrich Schuchardt <xypron.glpk@gmx.de> wrote:
> Variables EFI_RELOC and EFI_CRT0 have to be defined to build the
> EFI unit tests. This patch ensures this for the x86 architecure.
>
> If we compile with EFI_STUB, the bitness depends on CONFIG_EFI_STUB_64BIT.
> Otherwise the bitness depends on CONFIG_X86_64.
>
> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
> ---
>  arch/x86/config.mk | 20 ++++++++++++++++----
>  1 file changed, 16 insertions(+), 4 deletions(-)

Reviewed-by: Simon Glass <sjg@chromium.org>
diff mbox series

Patch

diff --git a/arch/x86/config.mk b/arch/x86/config.mk
index 97db03deeed..5f77f98e60a 100644
--- a/arch/x86/config.mk
+++ b/arch/x86/config.mk
@@ -86,9 +86,9 @@  else
 PLATFORM_CPPFLAGS += -D__I386__
 endif
 
-ifneq ($(CONFIG_EFI_STUB)$(CONFIG_CMD_BOOTEFI_HELLO_COMPILE),)
+ifdef CONFIG_EFI_STUB
 
-ifneq ($(CONFIG_EFI_STUB_64BIT),)
+ifdef CONFIG_EFI_STUB_64BIT
 EFI_LDS := elf_x86_64_efi.lds
 EFI_CRT0 := crt0_x86_64_efi.o
 EFI_RELOC := reloc_x86_64_efi.o
@@ -98,10 +98,22 @@  EFI_CRT0 := crt0_ia32_efi.o
 EFI_RELOC := reloc_ia32_efi.o
 endif
 
+else
+
 ifdef CONFIG_X86_64
-EFI_TARGET := --target=efi-app-x86_64
+EFI_LDS := elf_x86_64_efi.lds
+EFI_CRT0 := crt0_x86_64_efi.o
+EFI_RELOC := reloc_x86_64_efi.o
 else
-EFI_TARGET := --target=efi-app-ia32
+EFI_LDS := elf_ia32_efi.lds
+EFI_CRT0 := crt0_ia32_efi.o
+EFI_RELOC := reloc_ia32_efi.o
+endif
+
 endif
 
+ifdef CONFIG_X86_64
+EFI_TARGET := --target=efi-app-x86_64
+else
+EFI_TARGET := --target=efi-app-ia32
 endif