On 04/08/19 11:09, Olaf Hering wrote: > Am Mon, 8 Apr 2019 11:04:09 +0200 > schrieb Laszlo Ersek <[email protected]>: > >> 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 <[email protected]> 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
