Re: [U-Boot] [PATCH 2/3] scripts/Makefile.lib: generalize building built in EFI app

2017-09-08 Thread Simon Glass
On 4 September 2017 at 19:19, Heinrich Schuchardt  wrote:
> Replace all occurences of helloworld by generalized forms.
> This allows us to build additional EFI applications that are
> included into the U-Boot binary without loading
> scripts/Makefile.lib with specific filenames.
>
> Signed-off-by: Heinrich Schuchardt 
> ---
>  scripts/Makefile.lib | 28 +++-
>  1 file changed, 15 insertions(+), 13 deletions(-)

Reviewed-by: Simon Glass 
___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 2/3] scripts/Makefile.lib: generalize building built in EFI app

2017-09-04 Thread Heinrich Schuchardt
Replace all occurences of helloworld by generalized forms.
This allows us to build additional EFI applications that are
included into the U-Boot binary without loading
scripts/Makefile.lib with specific filenames.

Signed-off-by: Heinrich Schuchardt 
---
 scripts/Makefile.lib | 28 +++-
 1 file changed, 15 insertions(+), 13 deletions(-)

diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
index 164c234b4c..c73464b854 100644
--- a/scripts/Makefile.lib
+++ b/scripts/Makefile.lib
@@ -342,20 +342,22 @@ cmd_S_ttf=
\
 $(obj)/%.S: $(src)/%.ttf
$(call cmd,S_ttf)
 
-# EFI Hello World application
+# EFI applications
+# A Makefile target *.efi is built as EFI application.
+# A Makefile target *_efi.S wraps *.efi as built-in EFI application.
 # ---
 
 # Generate an assembly file to wrap the EFI app
-cmd_S_efi= \
-(  \
-   echo '.section .rodata.efi.init,"a"';   \
-   echo '.balign 16';  \
-   echo '.global __efi_helloworld_begin';  \
-   echo '__efi_helloworld_begin:'; \
-   echo '.incbin "$<" ';   \
-   echo '__efi_helloworld_end:';   \
-   echo '.global __efi_helloworld_end';\
-   echo '.balign 16';  \
+cmd_S_efi= \
+(  \
+   echo '.section .rodata.$*.init,"a"';\
+   echo '.balign 16';  \
+   echo '.global __efi_$*_begin';  \
+   echo '__efi_$*_begin:'; \
+   echo '.incbin "$<" ';   \
+   echo '__efi_$*_end:';   \
+   echo '.global __efi_$*_end';\
+   echo '.balign 16';  \
 ) > $@
 
 $(obj)/%_efi.S: $(obj)/%.efi
@@ -366,7 +368,7 @@ cmd_efi_objcopy = $(OBJCOPY) -j .header -j .text -j .sdata 
-j .data -j \
.dynamic -j .dynsym  -j .rel* -j .rela* -j .reloc \
$(if $(EFI_TARGET),$(EFI_TARGET),-O binary) $^ $@
 
-$(obj)/%.efi: $(obj)/%.so
+$(obj)/%.efi: $(obj)/%_efi.so
$(call cmd,efi_objcopy)
 
 quiet_cmd_efi_ld = LD  $@
@@ -375,7 +377,7 @@ cmd_efi_ld = $(LD) -nostdlib -znocombreloc -T 
$(EFI_LDS_PATH) -shared \
 
 EFI_LDS_PATH = $(srctree)/arch/$(ARCH)/lib/$(EFI_LDS)
 
-$(obj)/helloworld.so: $(obj)/helloworld.o arch/$(ARCH)/lib/$(EFI_CRT0) \
+$(obj)/%_efi.so: $(obj)/%.o $(%_deps) arch/$(ARCH)/lib/$(EFI_CRT0) \
arch/$(ARCH)/lib/$(EFI_RELOC)
$(call cmd,efi_ld)
 
-- 
2.11.0

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot