qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Laszlo Ersek <lersek@redhat.com>
To: Olaf Hering <olaf@aepfle.de>
Cc: "Philippe Mathieu-Daudé" <philmd@redhat.com>,
	qemu-devel@nongnu.org, "Michael S. Tsirkin" <mst@redhat.com>
Subject: Re: [Qemu-devel] edk2 fails to compile in v4.0.0-rc2
Date: Mon, 8 Apr 2019 11:42:17 +0200	[thread overview]
Message-ID: <002dd129-cda3-77b5-ac8b-4734cdb1b902@redhat.com> (raw)
In-Reply-To: <20190408110911.46d3b9d0.olaf@aepfle.de>

On 04/08/19 11:09, Olaf Hering wrote:
> Am Mon, 8 Apr 2019 11:04:09 +0200
> schrieb Laszlo Ersek <lersek@redhat.com>:
>
>> This is not a QEMU build failure, but an issue in the downstream
>> packaging that not only tries to build QEMU, but performs a
>> maintainer build on binary artifacts.
>
> I'm sure everyone will rebuild the things from source that can be
> rebuilt.

Define "everyone".

- Every direct end-user of upstream QEMU? (That is, every human user
  that runs configure and make and make install?) Absolutely not. Those
  users are already not rebuilding the full contents of pc-bios. Look
  for INSTALL_BLOBS in the top-level makefile.

- Every *packager* / distribution that provides QEMU packages? Yes, they
  will definitely rebuild whatever they can from source. That's only
  prudent and ethical. That's what I called a "maintainer build".

> Who would ship random binary blobs from unknown origin?

I don't expect you to, and any of the patches related to the edk2
submodule don't force you to.

commit f590a812c21074e82228de3e1dfb57b75fc02b62
Author: Laszlo Ersek <lersek@redhat.com>
Date:   Mon Feb 4 17:03:22 2019 +0100

    roms: build the EfiRom utility from the roms/edk2 submodule

    Building the EfiRom utility from "roms/edk2/BaseTools" should make
    "roms/Makefile" more self-contained. Otherwise, we'd call the system-wide
    EfiRom for building the combined iPXE option ROMs, but call the sibling
    utilities from "roms/edk2/BaseTools" for building "roms/edk2" content.

Without this patch, if you ran "make -C roms", you'd use one instance of
EfiRom (from who knows where) for producing the combined iPXE oproms,
and another EfiRom, from the edk2.git submodule, for anything inside
that same edk2.git submodule that requires EfiRom. That's *wrong*.

- You are invoking "make -C roms" in QEMU, so you should use precisely
  the same EfiRom for all purposes that need EfiRom.

- And given that the EfiRom source code is available in the submodule,
  the one EfiRom used (for whatever purpose) should be *that* EfiRom
  (i.e., built from source).

If you need to inject specific compiler/linker flags, into the building
of EfiRom itself, you can already do that; you just need to update your
spec file to take advantage of that edk2 BaseTools build feature.

Laszlo

  parent reply	other threads:[~2019-04-08  9:42 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-05 10:39 [Qemu-devel] edk2 fails to compile in v4.0.0-rc2 Olaf Hering
2019-04-05 10:39 ` Olaf Hering
2019-04-05 10:49 ` Philippe Mathieu-Daudé
2019-04-05 10:49   ` Philippe Mathieu-Daudé
2019-04-05 10:59   ` Olaf Hering
2019-04-05 10:59     ` Olaf Hering
2019-04-05 11:14     ` Philippe Mathieu-Daudé
2019-04-05 11:14       ` Philippe Mathieu-Daudé
2019-04-05 11:24       ` Philippe Mathieu-Daudé
2019-04-05 11:24         ` Philippe Mathieu-Daudé
2019-04-05 11:27       ` Olaf Hering
2019-04-05 11:27         ` Olaf Hering
2019-04-05 11:16     ` Olaf Hering
2019-04-05 11:16       ` Olaf Hering
2019-04-05 11:29       ` Philippe Mathieu-Daudé
2019-04-05 11:29         ` Philippe Mathieu-Daudé
2019-04-05 11:31         ` Olaf Hering
2019-04-05 11:31           ` Olaf Hering
2019-04-08  9:04     ` Laszlo Ersek
2019-04-08  9:04       ` Laszlo Ersek
2019-04-08  9:09       ` Olaf Hering
2019-04-08  9:09         ` Olaf Hering
2019-04-08  9:42         ` Laszlo Ersek [this message]
2019-04-08  9:42           ` Laszlo Ersek

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=002dd129-cda3-77b5-ac8b-4734cdb1b902@redhat.com \
    --to=lersek@redhat.com \
    --cc=mst@redhat.com \
    --cc=olaf@aepfle.de \
    --cc=philmd@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: link
Be 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).