[U-Boot] [PATCH v2 1/1] efi_loader: fix build error for freestanding.o

Heinrich Schuchardt xypron.glpk at gmx.de
Thu Mar 14 20:13:34 UTC 2019


Since commit f51a226436a87 ("efi_loader: provide freestanding library") in
parallel builds errors

    lib/efi_selftest/../efi_loader/efi_freestanding.o:
    file not recognized: File truncated

occur. Obviously make cannot correctly sequence parallel builds with a
dependency like ../efi_loader/efi_freestanding.o.

Fixes: f51a226436a87 ("efi_loader: provide freestanding library")
Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
---
v2
	use #include instead of symbolic link as suggested by Andy
---
 lib/efi_selftest/efi_freestanding.c | 11 +++++++++++
 scripts/Makefile.lib                |  2 +-
 2 files changed, 12 insertions(+), 1 deletion(-)
 create mode 100644 lib/efi_selftest/efi_freestanding.c

diff --git a/lib/efi_selftest/efi_freestanding.c b/lib/efi_selftest/efi_freestanding.c
new file mode 100644
index 00000000000..4b6c27e99fb
--- /dev/null
+++ b/lib/efi_selftest/efi_freestanding.c
@@ -0,0 +1,11 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Library for freestanding binary
+ *
+ * Copyright 2019, Heinrich Schuchardt <xypron.glpk at gmx.de>
+ *
+ * GCC requires that freestanding programs provide memcpy(), memmove(),
+ * memset(), and memcmp().
+ */
+
+#include "../efi_loader/efi_freestanding.c"
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
index ec5c41ec561..70de9bb13a6 100644
--- a/scripts/Makefile.lib
+++ b/scripts/Makefile.lib
@@ -390,7 +390,7 @@ $(obj)/efi_reloc.o: $(srctree)/arch/$(ARCH)/lib/$(EFI_RELOC:.o=.c) $(recordmcoun
 	$(call cmd,force_checksrc)
 	$(call if_changed_rule,cc_o_c)
 
-$(obj)/%_efi.so: $(obj)/%.o $(obj)/efi_crt0.o $(obj)/efi_reloc.o $(obj)/../efi_loader/efi_freestanding.o
+$(obj)/%_efi.so: $(obj)/%.o $(obj)/efi_crt0.o $(obj)/efi_reloc.o $(obj)/efi_freestanding.o
 	$(call cmd,efi_ld)
 
 # ACPI
-- 
2.20.1



More information about the U-Boot mailing list