From patchwork Tue Sep 5 14:07:17 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heinrich Schuchardt X-Patchwork-Id: 810184 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 3xmpW62LNJz9t2R for ; Wed, 6 Sep 2017 00:09:38 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 01F7AC21F7C; Tue, 5 Sep 2017 14:08:17 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=FREEMAIL_FROM, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 18E42C21EFE; Tue, 5 Sep 2017 14:07:50 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id C2CEFC21C8F; Tue, 5 Sep 2017 14:07:45 +0000 (UTC) Received: from mout.gmx.net (mout.gmx.net [212.227.15.15]) by lists.denx.de (Postfix) with ESMTPS id 8102BC21D64 for ; Tue, 5 Sep 2017 14:07:44 +0000 (UTC) Received: from laptop1.fritz.box ([92.40.248.116]) by mail.gmx.com (mrgmx002 [212.227.17.184]) with ESMTPSA (Nemesis) id 0LdYxu-1d6VlG0yVm-00injc; Tue, 05 Sep 2017 16:07:40 +0200 From: Heinrich Schuchardt To: Alexander Graf Date: Tue, 5 Sep 2017 16:07:17 +0200 Message-Id: <20170905140719.20192-3-xypron.glpk@gmx.de> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20170905140719.20192-1-xypron.glpk@gmx.de> References: <20170905140719.20192-1-xypron.glpk@gmx.de> X-Provags-ID: V03:K0:Dnoo4VxZ3RxNn9anCNHVuTKZNtW3wuMEgAtowxDuTo1s0ShGs5O ZuvPglPQpu8nrpnGVGTYBKAy+59Zpdn1bnuCtib/OXjnthzmlI2wZ+k2lq123f9iB0Y7wc+ BnM9smT7zyQvmSLHw+FHVbDHs7fe9f3ochUriEYmRH6sNmPy783ThmkEnmYELcyXFxAHPTI nYQynLOc8+QHP019YE2Cw== X-UI-Out-Filterresults: notjunk:1; V01:K0:3nXLckmPMUo=:kmilLqrwWcCgZBhHZg06ua j3j02koKiB2q1CrqnQFtOoUqAkXKazIv2yspH8txtG0IOoZMZSyCO9+Cstntjjo+wBo+ZQ1AY 1sxvca+xZmOiNBRCSEVd0bdeDRGfMZoke1MDlUwC7s++3ry+/P2jwWVKCsRWEPQ8A6npgh8/X f+lpbKH2zlnr5XB6/NG5+Kc1IZTeydSm9k8Gobo968N7puS2y6DlrXGPRd6iusC8Gmhh7FF4j PAoBtspR8KXb25SINY1MSpqBoNH51xqoBaZlx0zbfQMVaVUKSXb1bps4PgFTGkIj+qR0JtQ07 5vkrs1Ak/N5Dt95jbX4/PTF86pvtV6xVk5I0r/eVMtR0If+1Hn9eIjKYoZLQV1FU6O1jLDMKK dmDQOSOFdYNK6o7wX5P20W6Rzzg5FmAUWsXIJyj0tr5seumTFAoKE+7TzFzyjQa6RhmUE3uZJ Thk1KM9YhZAisRDY0MB/J73kT54GwTbq8Av68kP7tc+M6zQ7dbWxX7U467UWRx188Qzq6YVnc ntMFCdYPMBe5xYaua84u0Wu+ZBwmur18gQWXbiW17Ab9u9cYxzwS64kW4YEciSgCjOm/+OkQz 4GXGLYC7iRLXSTQvdgarZfFZluC15gyVEAVC1+q39P7kahdSk25cCyy5UTJ4qrvgUpUc7ZVbW 0rOMB1lw0GSzOQW3u6xPxl2y2fCDp55WxjR3BiG3LxtBoMDoY2Ox5+drCvf5l051klwoaGUH+ jbs4U80HAOuv6EikLvBoMsSBMGhEuUYRCLTAJmoBmZuGlKYD9TmNSdtTcOz8Bas0Vjr+rxvbB zCQotZnUqeRDxexYPwp3OS6yMc1mw== Cc: Mark Kettenis , u-boot@lists.denx.de, Heinrich Schuchardt Subject: [U-Boot] [PATCH v2 2/4] scripts/Makefile.lib: generalize building built in EFI app X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" 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 --- v2 Removed superfluous reference to $($*_deps). --- scripts/Makefile.lib | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib index 164c234b4c..ebc74f8987 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 arch/$(ARCH)/lib/$(EFI_CRT0) \ arch/$(ARCH)/lib/$(EFI_RELOC) $(call cmd,efi_ld)