From: "Philippe Mathieu-Daudé" <philmd@redhat.com> To: Laszlo Ersek <lersek@redhat.com>, qemu-devel@nongnu.org, Olaf Hering <olaf@aepfle.de> Cc: "Gerd Hoffmann" <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>, "Paolo Bonzini" <pbonzini@redhat.com>, "Igor Mammedov" <imammedo@redhat.com>, "Philippe Mathieu-Daudé" <philmd@redhat.com> Subject: [Qemu-devel] [PATCH for-4.0 v3 2/2] roms: Allow passing configure options to the EDK2 build tools Date: Tue, 9 Apr 2019 15:45:36 +0200 [thread overview] Message-ID: <20190409134536.15548-3-philmd@redhat.com> (raw) In-Reply-To: <20190409134536.15548-1-philmd@redhat.com> Since commit f590a812c210 we build the EDK2 EfiRom utility unconditionally. Some distributions require to use extra compiler/linker flags, i.e. SUSE which enforces the PIE protection (see [*]). EDK2 build tools already provide a set of variables for that, use them to allow the caller to easily inject compiler/linker options.. Now build scripts can pass extra options, example: $ make -C roms \ EDK2_BASETOOLS_OPTFLAGS='-fPIE' \ efirom [*] https://lists.opensuse.org/opensuse-factory/2017-06/msg00403.html Reported-by: Olaf Hering <olaf@aepfle.de> Suggested-by: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> --- roms/Makefile | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/roms/Makefile b/roms/Makefile index d28252dafdf..1ff78b63bb3 100644 --- a/roms/Makefile +++ b/roms/Makefile @@ -120,8 +120,21 @@ build-efi-roms: build-pxe-roms $(patsubst %,bin-i386-efi/%.efidrv,$(pxerom_targets)) \ $(patsubst %,bin-x86_64-efi/%.efidrv,$(pxerom_targets)) +# Build scripts can pass compiler/linker flags to the EDK2 build tools +# via the EDK2_BASETOOLS_OPTFLAGS (CPPFLAGS and CFLAGS) and +# EDK2_BASETOOLS_LDFLAGS (LDFLAGS) environment variables. +# +# Example: +# +# make -C roms \ +# EDK2_BASETOOLS_OPTFLAGS='...' \ +# EDK2_BASETOOLS_LDFLAGS='...' \ +# efirom +# $(EDK2_EFIROM): - $(MAKE) -C edk2/BaseTools + $(MAKE) -C edk2/BaseTools \ + EXTRA_OPTFLAGS='$(EDK2_BASETOOLS_OPTFLAGS)' \ + EXTRA_LDFLAGS='$(EDK2_BASETOOLS_LDFLAGS)' slof: $(MAKE) -C SLOF CROSS=$(powerpc64_cross_prefix) qemu -- 2.20.1
WARNING: multiple messages have this Message-ID (diff)
From: "Philippe Mathieu-Daudé" <philmd@redhat.com> To: Laszlo Ersek <lersek@redhat.com>, qemu-devel@nongnu.org, Olaf Hering <olaf@aepfle.de> Cc: "Paolo Bonzini" <pbonzini@redhat.com>, "Igor Mammedov" <imammedo@redhat.com>, "Philippe Mathieu-Daudé" <philmd@redhat.com>, "Gerd Hoffmann" <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com> Subject: [Qemu-devel] [PATCH for-4.0 v3 2/2] roms: Allow passing configure options to the EDK2 build tools Date: Tue, 9 Apr 2019 15:45:36 +0200 [thread overview] Message-ID: <20190409134536.15548-3-philmd@redhat.com> (raw) Message-ID: <20190409134536.jD3fG90gTVGpQDJtg92ULzNuSEpixijOU1Ye3G9uDj4@z> (raw) In-Reply-To: <20190409134536.15548-1-philmd@redhat.com> Since commit f590a812c210 we build the EDK2 EfiRom utility unconditionally. Some distributions require to use extra compiler/linker flags, i.e. SUSE which enforces the PIE protection (see [*]). EDK2 build tools already provide a set of variables for that, use them to allow the caller to easily inject compiler/linker options.. Now build scripts can pass extra options, example: $ make -C roms \ EDK2_BASETOOLS_OPTFLAGS='-fPIE' \ efirom [*] https://lists.opensuse.org/opensuse-factory/2017-06/msg00403.html Reported-by: Olaf Hering <olaf@aepfle.de> Suggested-by: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> --- roms/Makefile | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/roms/Makefile b/roms/Makefile index d28252dafdf..1ff78b63bb3 100644 --- a/roms/Makefile +++ b/roms/Makefile @@ -120,8 +120,21 @@ build-efi-roms: build-pxe-roms $(patsubst %,bin-i386-efi/%.efidrv,$(pxerom_targets)) \ $(patsubst %,bin-x86_64-efi/%.efidrv,$(pxerom_targets)) +# Build scripts can pass compiler/linker flags to the EDK2 build tools +# via the EDK2_BASETOOLS_OPTFLAGS (CPPFLAGS and CFLAGS) and +# EDK2_BASETOOLS_LDFLAGS (LDFLAGS) environment variables. +# +# Example: +# +# make -C roms \ +# EDK2_BASETOOLS_OPTFLAGS='...' \ +# EDK2_BASETOOLS_LDFLAGS='...' \ +# efirom +# $(EDK2_EFIROM): - $(MAKE) -C edk2/BaseTools + $(MAKE) -C edk2/BaseTools \ + EXTRA_OPTFLAGS='$(EDK2_BASETOOLS_OPTFLAGS)' \ + EXTRA_LDFLAGS='$(EDK2_BASETOOLS_LDFLAGS)' slof: $(MAKE) -C SLOF CROSS=$(powerpc64_cross_prefix) qemu -- 2.20.1
next prev parent reply other threads:[~2019-04-09 13:45 UTC|newest] Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-04-09 13:45 [Qemu-devel] [PATCH for-4.0 v3 0/2] roms: Avoid iPXE/EDK2 EFIROM variable clash, pass CFLAGS to EDK2 build tools Philippe Mathieu-Daudé 2019-04-09 13:45 ` Philippe Mathieu-Daudé 2019-04-09 13:45 ` [Qemu-devel] [PATCH for-4.0 v3 1/2] roms: Rename the EFIROM variable to avoid clashing with iPXE Philippe Mathieu-Daudé 2019-04-09 13:45 ` Philippe Mathieu-Daudé 2019-04-09 15:19 ` Laszlo Ersek 2019-04-09 15:19 ` Laszlo Ersek 2019-04-09 13:45 ` Philippe Mathieu-Daudé [this message] 2019-04-09 13:45 ` [Qemu-devel] [PATCH for-4.0 v3 2/2] roms: Allow passing configure options to the EDK2 build tools Philippe Mathieu-Daudé 2019-04-09 14:58 ` Igor Mammedov 2019-04-09 14:58 ` Igor Mammedov 2019-04-09 15:24 ` Laszlo Ersek 2019-04-09 15:24 ` Laszlo Ersek 2019-04-09 14:00 ` [Qemu-devel] [PATCH for-4.0 v3 0/2] roms: Avoid iPXE/EDK2 EFIROM variable clash, pass CFLAGS to " Peter Maydell 2019-04-09 14:00 ` Peter Maydell 2019-04-09 15:25 ` Laszlo Ersek 2019-04-09 15:25 ` Laszlo Ersek 2019-04-09 15:27 ` Peter Maydell 2019-04-09 15:27 ` Peter Maydell 2019-04-09 15:05 ` Michael S. Tsirkin 2019-04-09 15:05 ` Michael S. Tsirkin 2019-04-09 15:11 ` Peter Maydell 2019-04-09 15:11 ` Peter Maydell
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20190409134536.15548-3-philmd@redhat.com \ --to=philmd@redhat.com \ --cc=imammedo@redhat.com \ --cc=kraxel@redhat.com \ --cc=lersek@redhat.com \ --cc=mst@redhat.com \ --cc=olaf@aepfle.de \ --cc=pbonzini@redhat.com \ --cc=qemu-devel@nongnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).