]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - scripts/Makefile.lib
powerpc: P2020: Remove macro CONFIG_P2020
[people/ms/u-boot.git] / scripts / Makefile.lib
index e720562623c9332325f2768169d7bad0f8fc203a..956a8a9b04471fceabdc8ca659a577da6360af78 100644 (file)
@@ -275,11 +275,11 @@ cmd_dt_S_dtb=                                             \
 (                                                      \
        echo '.section .dtb.init.rodata,"a"';           \
        echo '.balign 16';                              \
-       echo '.global __dtb_$(*F)_begin';               \
-       echo '__dtb_$(*F)_begin:';                      \
+       echo '.global __dtb_$(subst -,_,$(*F))_begin';  \
+       echo '__dtb_$(subst -,_,$(*F))_begin:';         \
        echo '.incbin "$<" ';                           \
-       echo '__dtb_$(*F)_end:';                        \
-       echo '.global __dtb_$(*F)_end';                 \
+       echo '__dtb_$(subst -,_,$(*F))_end:';           \
+       echo '.global __dtb_$(subst -,_,$(*F))_end';    \
        echo '.balign 16';                              \
 ) > $@
 
@@ -321,6 +321,39 @@ cmd_S_ttf=                                         \
 $(obj)/%.S: $(src)/%.ttf
        $(call cmd,S_ttf)
 
+# EFI Hello World 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_hello_world_begin';         \
+       echo '__efi_hello_world_begin:';                \
+       echo '.incbin "$<" ';                           \
+       echo '__efi_hello_world_end:';                  \
+       echo '.global __efi_hello_world_end';           \
+       echo '.balign 16';                              \
+) > $@
+
+$(obj)/%_efi.S: $(obj)/%.efi
+       $(call cmd,S_efi)
+
+$(obj)/%.efi: $(obj)/%.so
+       $(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) $^ $@
+
+EFI_LDS_PATH = $(srctree)/arch/$(ARCH)/lib/$(EFI_LDS)
+
+$(obj)/helloworld.so: $(EFI_LDS_PATH)
+
+$(obj)/helloworld.so: $(obj)/helloworld.o arch/$(ARCH)/lib/$(EFI_CRT0) \
+               arch/$(ARCH)/lib/$(EFI_RELOC)
+       $(LD) -nostdlib -znocombreloc -T $(EFI_LDS_PATH) -shared -Bsymbolic \
+               $^ -o $@
+
 # ACPI
 # ---------------------------------------------------------------------------
 quiet_cmd_acpi_c_asl= ASL     $<