qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] 45c61c: make-release: pull in edk2 submodules


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] 45c61c: make-release: pull in edk2 submodules so we can bu...
Date: Tue, 08 Oct 2019 05:06:09 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 45c61c6c23918e3b05ed9ecac5b2328ebae5f774
      
https://github.com/qemu/qemu/commit/45c61c6c23918e3b05ed9ecac5b2328ebae5f774
  Author: Michael Roth <address@hidden>
  Date:   2019-10-07 (Mon, 07 Oct 2019)

  Changed paths:
    M scripts/make-release

  Log Message:
  -----------
  make-release: pull in edk2 submodules so we can build it from tarballs

The `make efi` target added by 536d2173 is built from the roms/edk2
submodule, which in turn relies on additional submodules nested under
roms/edk2.

The make-release script currently only pulls in top-level submodules,
so these nested submodules are missing in the resulting tarball.

We could try to address this situation more generally by recursively
pulling in all submodules, but this doesn't necessarily ensure the
end-result will build properly (this case also required other changes).

Additionally, due to the nature of submodules, we may not always have
control over how these sorts of things are dealt with, so for now we
continue to handle it on a case-by-case in the make-release script.

Cc: Laszlo Ersek <address@hidden>
Cc: Bruce Rogers <address@hidden>
Cc: address@hidden # v4.1.0
Reported-by: Bruce Rogers <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Tested-by: Philippe Mathieu-Daudé <address@hidden>
Signed-off-by: Michael Roth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Philippe Mathieu-Daudé <address@hidden>


  Commit: f3e330e3c319160ac04954399b5a10afc965098c
      
https://github.com/qemu/qemu/commit/f3e330e3c319160ac04954399b5a10afc965098c
  Author: Michael Roth <address@hidden>
  Date:   2019-10-07 (Mon, 07 Oct 2019)

  Changed paths:
    M roms/Makefile.edk2

  Log Message:
  -----------
  roms/Makefile.edk2: don't pull in submodules when building from tarball

Currently the `make efi` target pulls submodules nested under the
roms/edk2 submodule as dependencies. However, when we attempt to build
from a tarball this fails since we are no longer in a git tree.

A preceding patch will pre-populate these submodules in the tarball,
so assume this build dependency is only needed when building from a
git tree.

Cc: Laszlo Ersek <address@hidden>
Cc: Bruce Rogers <address@hidden>
Cc: address@hidden # v4.1.0
Reported-by: Bruce Rogers <address@hidden>
Reviewed-by: Laszlo Ersek <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Tested-by: Philippe Mathieu-Daudé <address@hidden>
Signed-off-by: Michael Roth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Philippe Mathieu-Daudé <address@hidden>


  Commit: 6f8a70f62f8a4089567ea05d475f6f112dec5601
      
https://github.com/qemu/qemu/commit/6f8a70f62f8a4089567ea05d475f6f112dec5601
  Author: Philippe Mathieu-Daudé <address@hidden>
  Date:   2019-10-07 (Mon, 07 Oct 2019)

  Changed paths:
    M roms/Makefile

  Log Message:
  -----------
  roms: Add a 'make help' target alias

Various C projects provide a 'make help' target. Our root directory
does so. The roms/ directory lacks a such rule, but already displays
a help output when the default target is called.
Add a 'help' target aliased to the default one, to avoid:

  $ make -C roms help
  make: *** No rule to make target 'help'.  Stop.

Reviewed-by: John Snow <address@hidden>
Reviewed-by: Laszlo Ersek <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Philippe Mathieu-Daudé <address@hidden>


  Commit: 53fde085edf397c8de69de4e9f85561fe6668b09
      
https://github.com/qemu/qemu/commit/53fde085edf397c8de69de4e9f85561fe6668b09
  Author: Laszlo Ersek <address@hidden>
  Date:   2019-10-07 (Mon, 07 Oct 2019)

  Changed paths:
    M tests/uefi-test-tools/Makefile

  Log Message:
  -----------
  edk2 build scripts: honor external BaseTools flags with uefi-test-tools

Unify the recipe for "build-edk2-tools" in
"tests/uefi-test-tools/Makefile" with the recipe for "edk2-basetools" in
"roms/Makefile".

Cc: Philippe Mathieu-Daudé <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Tested-by: Philippe Mathieu-Daudé <address@hidden>
Reviewed-by: John Snow <address@hidden>
Signed-off-by: Laszlo Ersek <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Philippe Mathieu-Daudé <address@hidden>


  Commit: 037973bb0d2b1a3c8618ccf41caa4da3666588c3
      
https://github.com/qemu/qemu/commit/037973bb0d2b1a3c8618ccf41caa4da3666588c3
  Author: Laszlo Ersek <address@hidden>
  Date:   2019-10-07 (Mon, 07 Oct 2019)

  Changed paths:
    M roms/Makefile
    M roms/edk2-build.sh
    M roms/edk2-funcs.sh
    M tests/uefi-test-tools/Makefile
    M tests/uefi-test-tools/build.sh

  Log Message:
  -----------
  edk2 build scripts: work around TianoCore#1607 without forcing Python 2

It turns out that forcing python2 for running the edk2 "build" utility is
neither necessary nor sufficient.

Forcing python2 is not sufficient for two reasons:

- QEMU is moving away from python2, with python2 nearing EOL,

- according to my most recent testing, the lacking dependency information
  in the makefiles that are generated by edk2's "build" utility can cause
  parallel build failures even when "build" is executed by python2.

And forcing python2 is not necessary because we can still return to the
original idea of filtering out jobserver-related options from MAKEFLAGS.
So do that.

While at it, cut short edk2's auto-detection of the python3.* minor
version, by setting PYTHON_COMMAND to "python3" (which we expect to be
available wherever we intend to build edk2).

With this patch, the guest UEFI binaries that are used as part of the BIOS
tables test, and the OVMF and ArmVirtQemu platform firmwares, will be
built strictly in a single job, regardless of an outermost "-jN" make
option. Alas, there appears to be no reliable way to build edk2 in an
(outer make, inner make) environment, with a jobserver enabled.

Cc: Eduardo Habkost <address@hidden>
Cc: John Snow <address@hidden>
Cc: Philippe Mathieu-Daudé <address@hidden>
Reported-by: John Snow <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Tested-by: Philippe Mathieu-Daudé <address@hidden>
Reviewed-by: John Snow <address@hidden>
Signed-off-by: Laszlo Ersek <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Philippe Mathieu-Daudé <address@hidden>


  Commit: 14d40ab1d55e54a87350d44769152dd7a59a7b42
      
https://github.com/qemu/qemu/commit/14d40ab1d55e54a87350d44769152dd7a59a7b42
  Author: Peter Maydell <address@hidden>
  Date:   2019-10-08 (Tue, 08 Oct 2019)

  Changed paths:
    M roms/Makefile
    M roms/Makefile.edk2
    M roms/edk2-build.sh
    M roms/edk2-funcs.sh
    M scripts/make-release
    M tests/uefi-test-tools/Makefile
    M tests/uefi-test-tools/build.sh

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/philmd-gitlab/tags/edk2-next-20191007' 
into staging

Improve scripts relying on the EDK2 submodule,
drop Python2 dependency in EDK2 build scripts.

# gpg: Signature made Mon 07 Oct 2019 14:31:38 BST
# gpg:                using RSA key 89C1E78F601EE86C867495CBA2A3FD6EDEADC0DE
# gpg: Good signature from "Philippe Mathieu-Daudé (Phil) <address@hidden>" 
[marginal]
# gpg: WARNING: This key is not certified with sufficiently trusted signatures!
# gpg:          It is not certain that the signature belongs to the owner.
# Primary key fingerprint: 89C1 E78F 601E E86C 8674  95CB A2A3 FD6E DEAD C0DE

* remotes/philmd-gitlab/tags/edk2-next-20191007:
  edk2 build scripts: work around TianoCore#1607 without forcing Python 2
  edk2 build scripts: honor external BaseTools flags with uefi-test-tools
  roms: Add a 'make help' target alias
  roms/Makefile.edk2: don't pull in submodules when building from tarball
  make-release: pull in edk2 submodules so we can build it from tarballs

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/ce701584c53d...14d40ab1d55e



reply via email to

[Prev in Thread] Current Thread [Next in Thread]