From nobody Wed Apr 24 20:27:10 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1552512386339843.7459044283106; Wed, 13 Mar 2019 14:26:26 -0700 (PDT) Received: from localhost ([127.0.0.1]:51139 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4BOI-0003cO-4A for importer@patchew.org; Wed, 13 Mar 2019 17:26:22 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51286) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4B8Z-0007B2-5W for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:10:09 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h4B04-0006CZ-Qa for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:01:22 -0400 Received: from mx1.redhat.com ([209.132.183.28]:36744) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1h4B04-0006C0-CT for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:01:20 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id AAE94306C3EA for ; Wed, 13 Mar 2019 21:01:19 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-120-225.rdu2.redhat.com [10.10.120.225]) by smtp.corp.redhat.com (Postfix) with ESMTP id D6AB35C57A; Wed, 13 Mar 2019 21:01:15 +0000 (UTC) From: Laszlo Ersek To: berrange@redhat.com, eblake@redhat.com, imammedo@redhat.com, kraxel@redhat.com, mprivozn@redhat.com, mst@redhat.com, philmd@redhat.com, qemu-devel@nongnu.org Date: Wed, 13 Mar 2019 22:00:46 +0100 Message-Id: <20190313210057.32584-2-lersek@redhat.com> In-Reply-To: <20190313210057.32584-1-lersek@redhat.com> References: <20190313210057.32584-1-lersek@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.45]); Wed, 13 Mar 2019 21:01:19 +0000 (UTC) Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v2 01/12] roms: lift "edk2-funcs.sh" from "tests/uefi-test-tools/build.sh" X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" Extract the dense logic for architecture and toolchain massaging from "tests/uefi-test-tools/build.sh", to a set of small functions. We'll reuse these functions for building full platform firmware images. Signed-off-by: Laszlo Ersek Reviewed-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Michal Privoznik Reviewed-by: Michael S. Tsirkin Tested-by: Igor Mammedov --- Notes: v2: =20 - Pick up Phil's R-b and T-b. (I hope that's okay, after the discussion about cross-building on Ubuntu and/or with Linaro toolchains!) =20 - drop comma after copyright year, in the new file [Eric] =20 - clarify in the leading comment of "edk2-funcs.sh" that the file requires bash [Phil, Eric] =20 - pick up Michal's and Michael's R-b's roms/edk2-funcs.sh | 240 ++++++++++++++++++++ tests/uefi-test-tools/build.sh | 97 +------- 2 files changed, 246 insertions(+), 91 deletions(-) diff --git a/roms/edk2-funcs.sh b/roms/edk2-funcs.sh new file mode 100644 index 000000000000..8930479dcb44 --- /dev/null +++ b/roms/edk2-funcs.sh @@ -0,0 +1,240 @@ +# Shell script that defines functions for determining some environmental +# characteristics for the edk2 "build" utility. +# +# This script is meant to be sourced, in a bash environment. +# +# Copyright (C) 2019 Red Hat, Inc. +# +# This program and the accompanying materials are licensed and made availa= ble +# under the terms and conditions of the BSD License that accompanies this +# distribution. The full text of the license may be found at +# . +# +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WI= THOUT +# WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + + +# Verify whether the QEMU system emulation target is supported by the UEFI= spec +# and edk2. Print a message to the standard error, and return with nonzero +# status, if verification fails. +# +# Parameters: +# $1: QEMU system emulation target +qemu_edk2_verify_arch() +{ + local emulation_target=3D"$1" + local program_name=3D$(basename -- "$0") + + case "$emulation_target" in + (arm|aarch64|i386|x86_64) + ;; + (*) + printf '%s: unknown/unsupported QEMU system emulation target "%s"\n'= \ + "$program_name" "$emulation_target" >&2 + return 1 + ;; + esac +} + + +# Translate the QEMU system emulation target to the edk2 architecture +# identifier. Print the result to the standard output. +# +# Parameters: +# $1: QEMU system emulation target +qemu_edk2_get_arch() +{ + local emulation_target=3D"$1" + + if ! qemu_edk2_verify_arch "$emulation_target"; then + return 1 + fi + + case "$emulation_target" in + (arm) + printf 'ARM\n' + ;; + (aarch64) + printf 'AARCH64\n' + ;; + (i386) + printf 'IA32\n' + ;; + (x86_64) + printf 'X64\n' + ;; + esac +} + + +# Translate the QEMU system emulation target to the gcc cross-compilation +# architecture identifier. Print the result to the standard output. +# +# Parameters: +# $1: QEMU system emulation target +qemu_edk2_get_gcc_arch() +{ + local emulation_target=3D"$1" + + if ! qemu_edk2_verify_arch "$emulation_target"; then + return 1 + fi + + case "$emulation_target" in + (arm|aarch64|x86_64) + printf '%s\n' "$emulation_target" + ;; + (i386) + printf 'i686\n' + ;; + esac +} + + +# Determine the gcc cross-compiler prefix (if any) for use with the edk2 +# toolchain. Print the result to the standard output. +# +# Parameters: +# $1: QEMU system emulation target +qemu_edk2_get_cross_prefix() +{ + local emulation_target=3D"$1" + local gcc_arch + local host_arch + + if ! gcc_arch=3D$(qemu_edk2_get_gcc_arch "$emulation_target"); then + return 1 + fi + + host_arch=3D$(uname -m) + + if [ "$gcc_arch" =3D=3D "$host_arch" ] || + ( [ "$gcc_arch" =3D=3D i686 ] && [ "$host_arch" =3D=3D x86_64 ] ); th= en + # no cross-compiler needed + : + else + printf '%s-linux-gnu-\n' "$gcc_arch" + fi +} + + +# Determine the edk2 toolchain tag for the QEMU system emulation target. P= rint +# the result to the standard output. Print a message to the standard error= , and +# return with nonzero status, if the (conditional) gcc version check fails. +# +# Parameters: +# $1: QEMU system emulation target +qemu_edk2_get_toolchain() +{ + local emulation_target=3D"$1" + local program_name=3D$(basename -- "$0") + local cross_prefix + local gcc_version + + if ! qemu_edk2_verify_arch "$emulation_target"; then + return 1 + fi + + case "$emulation_target" in + (arm|aarch64) + printf 'GCC5\n' + ;; + + (i386|x86_64) + if ! cross_prefix=3D$(qemu_edk2_get_cross_prefix "$emulation_target"= ); then + return 1 + fi + + gcc_version=3D$("${cross_prefix}gcc" -v 2>&1 | tail -1 | awk '{print= $3}') + # Run "git-blame" on "OvmfPkg/build.sh" in edk2 for more information= on + # the mapping below. + case "$gcc_version" in + ([1-3].*|4.[0-3].*) + printf '%s: unsupported gcc version "%s"\n' \ + "$program_name" "$gcc_version" >&2 + return 1 + ;; + (4.4.*) + printf 'GCC44\n' + ;; + (4.5.*) + printf 'GCC45\n' + ;; + (4.6.*) + printf 'GCC46\n' + ;; + (4.7.*) + printf 'GCC47\n' + ;; + (4.8.*) + printf 'GCC48\n' + ;; + (4.9.*|6.[0-2].*) + printf 'GCC49\n' + ;; + (*) + printf 'GCC5\n' + ;; + esac + ;; + esac +} + + +# Determine the name of the environment variable that exposes the +# cross-compiler prefix to the edk2 "build" utility. Print the result to t= he +# standard output. +# +# Parameters: +# $1: QEMU system emulation target +qemu_edk2_get_cross_prefix_var() +{ + local emulation_target=3D"$1" + local edk2_toolchain + local edk2_arch + + if ! edk2_toolchain=3D$(qemu_edk2_get_toolchain "$emulation_target"); th= en + return 1 + fi + + case "$emulation_target" in + (arm|aarch64) + if ! edk2_arch=3D$(qemu_edk2_get_arch "$emulation_target"); then + return 1 + fi + printf '%s_%s_PREFIX\n' "$edk2_toolchain" "$edk2_arch" + ;; + (i386|x86_64) + printf '%s_BIN\n' "$edk2_toolchain" + ;; + esac +} + + +# Set and export the environment variable(s) necessary for cross-compilati= on, +# whenever needed by the edk2 "build" utility. +# +# Parameters: +# $1: QEMU system emulation target +qemu_edk2_set_cross_env() +{ + local emulation_target=3D"$1" + local cross_prefix + local cross_prefix_var + + if ! cross_prefix=3D$(qemu_edk2_get_cross_prefix "$emulation_target"); t= hen + return 1 + fi + + if [ -z "$cross_prefix" ]; then + # Nothing to do. + return 0 + fi + + if ! cross_prefix_var=3D$(qemu_edk2_get_cross_prefix_var \ + "$emulation_target"); then + return 1 + fi + + eval "export $cross_prefix_var=3D\$cross_prefix" +} diff --git a/tests/uefi-test-tools/build.sh b/tests/uefi-test-tools/build.sh index 155cb75c4ddb..e2b52c855c39 100755 --- a/tests/uefi-test-tools/build.sh +++ b/tests/uefi-test-tools/build.sh @@ -38,97 +38,12 @@ if [ $ret -ne 0 ]; then exit $ret fi =20 -# Map the QEMU system emulation target to the following types of architect= ure -# identifiers: -# - edk2, -# - gcc cross-compilation. -# Cover only those targets that are supported by the UEFI spec and edk2. -case "$emulation_target" in - (arm) - edk2_arch=3DARM - gcc_arch=3Darm - ;; - (aarch64) - edk2_arch=3DAARCH64 - gcc_arch=3Daarch64 - ;; - (i386) - edk2_arch=3DIA32 - gcc_arch=3Di686 - ;; - (x86_64) - edk2_arch=3DX64 - gcc_arch=3Dx86_64 - ;; - (*) - printf '%s: unknown/unsupported QEMU system emulation target "%s"\n' \ - "$program_name" "$emulation_target" >&2 - exit 1 - ;; -esac - -# Check if cross-compilation is needed. -host_arch=3D$(uname -m) -if [ "$gcc_arch" =3D=3D "$host_arch" ] || - ( [ "$gcc_arch" =3D=3D i686 ] && [ "$host_arch" =3D=3D x86_64 ] ); then - cross_prefix=3D -else - cross_prefix=3D${gcc_arch}-linux-gnu- -fi - -# Expose cross_prefix (which is possibly empty) to the edk2 tools. While a= t it, -# determine the suitable edk2 toolchain as well. -# - For ARM and AARCH64, edk2 only offers the GCC5 toolchain tag, which co= vers -# the gcc-5+ releases. -# - For IA32 and X64, edk2 offers the GCC44 through GCC49 toolchain tags, = in -# addition to GCC5. Unfortunately, the mapping between the toolchain tag= s and -# the actual gcc releases isn't entirely trivial. Run "git-blame" on -# "OvmfPkg/build.sh" in edk2 for more information. -# And, because the above is too simple, we have to assign cross_prefix to = an -# edk2 build variable that is specific to both the toolchain tag and the t= arget -# architecture. -case "$edk2_arch" in - (ARM) - edk2_toolchain=3DGCC5 - export GCC5_ARM_PREFIX=3D$cross_prefix - ;; - (AARCH64) - edk2_toolchain=3DGCC5 - export GCC5_AARCH64_PREFIX=3D$cross_prefix - ;; - (IA32|X64) - gcc_version=3D$("${cross_prefix}gcc" -v 2>&1 | tail -1 | awk '{print $= 3}') - case "$gcc_version" in - ([1-3].*|4.[0-3].*) - printf '%s: unsupported gcc version "%s"\n' \ - "$program_name" "$gcc_version" >&2 - exit 1 - ;; - (4.4.*) - edk2_toolchain=3DGCC44 - ;; - (4.5.*) - edk2_toolchain=3DGCC45 - ;; - (4.6.*) - edk2_toolchain=3DGCC46 - ;; - (4.7.*) - edk2_toolchain=3DGCC47 - ;; - (4.8.*) - edk2_toolchain=3DGCC48 - ;; - (4.9.*|6.[0-2].*) - edk2_toolchain=3DGCC49 - ;; - (*) - edk2_toolchain=3DGCC5 - ;; - esac - eval "export ${edk2_toolchain}_BIN=3D\$cross_prefix" - ;; -esac +# Fetch some option arguments, and set the cross-compilation environment (= if +# any), for the edk2 "build" utility. +source "$edk2_dir/../edk2-funcs.sh" +edk2_arch=3D$(qemu_edk2_get_arch "$emulation_target") +edk2_toolchain=3D$(qemu_edk2_get_toolchain "$emulation_target") +qemu_edk2_set_cross_env "$emulation_target" =20 # Build the UEFI binary mkdir -p log --=20 2.19.1.3.g30247aa5d201 From nobody Wed Apr 24 20:27:10 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1552512157188535.7950428781072; Wed, 13 Mar 2019 14:22:37 -0700 (PDT) Received: from localhost ([127.0.0.1]:51077 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4BKb-0000Xu-WB for importer@patchew.org; Wed, 13 Mar 2019 17:22:34 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51171) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4B8X-00076a-2q for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:10:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h4B07-0006E0-85 for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:01:24 -0400 Received: from mx1.redhat.com ([209.132.183.28]:54282) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1h4B06-0006DW-VI for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:01:23 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 457B5300376D for ; Wed, 13 Mar 2019 21:01:22 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-120-225.rdu2.redhat.com [10.10.120.225]) by smtp.corp.redhat.com (Postfix) with ESMTP id 178C35C57A; Wed, 13 Mar 2019 21:01:19 +0000 (UTC) From: Laszlo Ersek To: berrange@redhat.com, eblake@redhat.com, imammedo@redhat.com, kraxel@redhat.com, mprivozn@redhat.com, mst@redhat.com, philmd@redhat.com, qemu-devel@nongnu.org Date: Wed, 13 Mar 2019 22:00:47 +0100 Message-Id: <20190313210057.32584-3-lersek@redhat.com> In-Reply-To: <20190313210057.32584-1-lersek@redhat.com> References: <20190313210057.32584-1-lersek@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.44]); Wed, 13 Mar 2019 21:01:22 +0000 (UTC) Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v2 02/12] roms/edk2-funcs.sh: require gcc-4.8+ for building i386 and x86_64 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" Adapt the qemu_edk2_get_toolchain() function in "roms/edk2-funcs.sh" in advance to edk2 commit 8d7cdfae8cb8 ("OvmfPkg: require GCC48 or later", 2019-01-08), which is part of the "edk2-stable201903" tag. Signed-off-by: Laszlo Ersek Reviewed-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Michal Privoznik Reviewed-by: Michael S. Tsirkin Tested-by: Igor Mammedov --- Notes: v2: =20 - pick up Phil's R-b / T-b =20 - pick up Michal's and Michael's R-b's roms/edk2-funcs.sh | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/roms/edk2-funcs.sh b/roms/edk2-funcs.sh index 8930479dcb44..d1cb1e4a111e 100644 --- a/roms/edk2-funcs.sh +++ b/roms/edk2-funcs.sh @@ -149,23 +149,11 @@ qemu_edk2_get_toolchain() # Run "git-blame" on "OvmfPkg/build.sh" in edk2 for more information= on # the mapping below. case "$gcc_version" in - ([1-3].*|4.[0-3].*) + ([1-3].*|4.[0-7].*) printf '%s: unsupported gcc version "%s"\n' \ "$program_name" "$gcc_version" >&2 return 1 ;; - (4.4.*) - printf 'GCC44\n' - ;; - (4.5.*) - printf 'GCC45\n' - ;; - (4.6.*) - printf 'GCC46\n' - ;; - (4.7.*) - printf 'GCC47\n' - ;; (4.8.*) printf 'GCC48\n' ;; --=20 2.19.1.3.g30247aa5d201 From nobody Wed Apr 24 20:27:10 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1552512222676461.46341040059406; Wed, 13 Mar 2019 14:23:42 -0700 (PDT) Received: from localhost ([127.0.0.1]:51085 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4BLa-0001H6-Iq for importer@patchew.org; Wed, 13 Mar 2019 17:23:34 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51171) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4B8V-00076a-4D for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:10:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h4B0N-0006aE-MR for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:01:40 -0400 Received: from mx1.redhat.com ([209.132.183.28]:24254) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1h4B0N-0006We-DB for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:01:39 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id AFF24C0AC34B for ; Wed, 13 Mar 2019 21:01:38 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-120-225.rdu2.redhat.com [10.10.120.225]) by smtp.corp.redhat.com (Postfix) with ESMTP id 86FB35C57A; Wed, 13 Mar 2019 21:01:22 +0000 (UTC) From: Laszlo Ersek To: berrange@redhat.com, eblake@redhat.com, imammedo@redhat.com, kraxel@redhat.com, mprivozn@redhat.com, mst@redhat.com, philmd@redhat.com, qemu-devel@nongnu.org Date: Wed, 13 Mar 2019 22:00:48 +0100 Message-Id: <20190313210057.32584-4-lersek@redhat.com> In-Reply-To: <20190313210057.32584-1-lersek@redhat.com> References: <20190313210057.32584-1-lersek@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.31]); Wed, 13 Mar 2019 21:01:38 +0000 (UTC) Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v2 03/12] tests/uefi-test-tools/build.sh: work around TianoCore#1607 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" The edk2-stabe201903 release introduced Python3 support to edk2's BaseTools; however the Python3 enablement breaks in a corner case (which is nevertheless supported by the edk2 community), namely the in-module parallelization that we utilize. This is tracked under . For now, work around the issue (in advance) by forcing Python2. (The workaround is a no-op before we move to edk2-stabe201903 in the roms/edk2 submodule.) Signed-off-by: Laszlo Ersek Reviewed-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Michal Privoznik Reviewed-by: Michael S. Tsirkin Tested-by: Igor Mammedov --- Notes: v2: =20 - pick up Phil's R-b / T-b =20 - pick up Michal's and Michael's R-b's tests/uefi-test-tools/build.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/uefi-test-tools/build.sh b/tests/uefi-test-tools/build.sh index e2b52c855c39..8aa7935c43bb 100755 --- a/tests/uefi-test-tools/build.sh +++ b/tests/uefi-test-tools/build.sh @@ -29,6 +29,9 @@ export PACKAGES_PATH=3D$(realpath -- "$edk2_dir") export WORKSPACE=3D$PWD mkdir -p Conf =20 +# Work around . +export PYTHON_COMMAND=3Dpython2 + # Source "edksetup.sh" carefully. set +e +u +C source "$PACKAGES_PATH/edksetup.sh" --=20 2.19.1.3.g30247aa5d201 From nobody Wed Apr 24 20:27:10 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1552511972875738.3217787271012; Wed, 13 Mar 2019 14:19:32 -0700 (PDT) Received: from localhost ([127.0.0.1]:51009 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4BHZ-0006Oa-D6 for importer@patchew.org; Wed, 13 Mar 2019 17:19:25 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51286) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4B8T-0007B2-5m for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:10:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h4B0Q-0006ik-Ub for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:01:47 -0400 Received: from mx1.redhat.com ([209.132.183.28]:27653) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1h4B0Q-0006i5-Ds for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:01:42 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id B589130B9E07 for ; Wed, 13 Mar 2019 21:01:41 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-120-225.rdu2.redhat.com [10.10.120.225]) by smtp.corp.redhat.com (Postfix) with ESMTP id 1BEBE5F9D7; Wed, 13 Mar 2019 21:01:38 +0000 (UTC) From: Laszlo Ersek To: berrange@redhat.com, eblake@redhat.com, imammedo@redhat.com, kraxel@redhat.com, mprivozn@redhat.com, mst@redhat.com, philmd@redhat.com, qemu-devel@nongnu.org Date: Wed, 13 Mar 2019 22:00:49 +0100 Message-Id: <20190313210057.32584-5-lersek@redhat.com> In-Reply-To: <20190313210057.32584-1-lersek@redhat.com> References: <20190313210057.32584-1-lersek@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.49]); Wed, 13 Mar 2019 21:01:41 +0000 (UTC) Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v2 04/12] roms/edk2: advance to tag edk2-stable201903 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" Update the roms/edk2 submodule hash from edk2-stable201811 to edk2-stable201903. The release notes are available at . $ git shortlog edk2-stable201811..edk2-stable201903 Achin Gupta (9): ArmPkg: Add PCDs needed for MM communication driver. ArmPkg/Drivers: Add EFI_MM_COMMUNICATION_PROTOCOL DXE driver. ArmPkg/Include: Add MM interface SVC return codes. ArmPkg/ArmMmuLib: Add MMU Library suitable for use in S-EL0. StandaloneMmPkg: Add missing dependency on PL011UartClockLib StandaloneMmPkg: Enforce alignment check for AArch64 StandaloneMmPkg: Zero data structure explicitly StandaloneMmPkg: Replace dependency on ArmMmuLib StandaloneMmPkg: Update dependency on PeCoffExtraActionLib Albecki, Mateusz (1): MdeModulePkg/SdMmcPciHcDxe Fix eMMC HS400 switch sequence Alex James (2): StdLib/sys/termios: Define cc_t as unsigned StdLib/Environs: Avoid infinite recursion in _Exit Antoine Coeur (5): ArmVirtPkg: Fix various typos CryptoPkg: Fix various typos CorebootPayloadPkg: Fix various typos CorebootModulePkg: Fix various typos BaseTools: Various typo Ard Biesheuvel (116): MdePkg/BaseIoLibIntrinsicArmVirt ARM: avoid double word loads and sto= res ArmPkg/ArmGicDxe ARM: fix encoding for GICv3 interrupt acknowledge ArmPlatformPkg: clear frame pointer in startup code ArmVirtPkg/PrePi: clear frame pointer in startup code ArmPkg/ArmSmcPsciResetSystemLib: add missing call to ExitBootServices= () ArmPkg: remove now unused BsdLib.h ArmPlatformPkg/NorFlashDxe: prepare for devicepath format change ArmPlatformPkg/NorFlashDxe: use one GUID plus index to identify flash= banks ArmVirtPkg/FdtClientDxe: take DT node 'status' properties into account ArmVirtPkg/NorFlashQemuLib: discover NOR flash banks dynamically ArmPlatformPkg/NorFlashPlatformLib: remove unused Guid member from st= ruct ArmPkg/ArmPkg.dsc: move ArmMmuStandaloneMmLib.inf to AARCH64 section EmbeddedPkg/TemplateSec: remove unused module EmbeddedPkg/PrePiHobLib: drop CreateHobList() from library ArmVirtPkg/FdtPciHostBridgeLib: map ECAM and I/O spaces in GCD memory= map ArmVirtPkg/QemuVirtMemInfoLib: remove 1:1 mapping of top of PA range MdePkg/ProcessorBind.h AARCH64: limit MAX_ADDRESS to 48 bits ArmPkg/ArmLib: add support for reading the max physical address space= size ArmVirtPkg/XenVirtMemInfoLib: refactor reading of the PA space size ArmPkg/ArmMmuLib: take the CPU supported maximum PA space into account ArmPkg/CpuPei: base GCD memory space size on CPU's PA range ArmPlatformPkg/PrePi: base GCD memory space size on CPU's PA range ArmVirtPkg/PrePi: base GCD memory space size on CPU's PA range BeagleBoardPkg/PrePi: base GCD memory space size on CPU's PA range ArmPlatformPkg/PlatformPei: drop unused PCD references EmbeddedPkg/PrePiLib: drop unused PCD reference ArmVirtPkg: drop PcdPrePiCpuMemorySize assignments from all platforms EmbeddedPkg/EmbeddedPkg.dec: drop PcdPrePiCpuMemorySize declarations ArmPkg/ArmMmuLib ARM: handle unmapped section in GetMemoryRegion() ArmPkg/ArmMmuLib ARM: handle unmapped sections when updating permissi= ons ArmVirtPkg/NorFlashQemuLib: disregard our primary FV ArmVirtPkg/QemuVirtMemInfoLib: trim the MMIO region mapping BaseTools/CommonLib: avoid using 'native' word size in IP address han= dling BaseTools/CommonLib: use explicit 64-bit type in Strtoi() BaseTools/DevicePath: use explicit 64-bit number parsing routines BaseTools/CommonLib: add definition of MAX_UINT32 BaseTools/DevicePath: use MAX_UINT32 as default device path max size BaseTools/CommonLib: get rid of 'native' type string parsing routines BaseTools/CommonLib: drop definition of MAX_UINTN BaseTools/CommonLib: drop the use of MAX_ADDRESS Revert "MdePkg/ProcessorBind.h AARCH64: limit MAX_ADDRESS to 48 bits" MdeModulePkg/FileExplorerLib: avoid packed struct for program data BaseTools/tools_def AARCH64 RELEASE: move GCC49/GGC5 to 4 KB alignment ArmVirtPkg/ArmVirtQemuKernel ARM: make some PCD settings apply to ARM ArmVirtPkg/PrePiUniCoreRelocatable CLANG38: work around build issues BaseTools/GenFw ARM: don't permit R_ARM_GOT_PREL relocations MdePkg/BaseMemoryLibOptDxe ARM: add missing function annotations BaseTools/tools_def ARM CLANG35: work around -mno-movt option name ch= ange ArmVirtPkg/PrePi ARM CLANG35: drop incompatible command line option ArmVirtPkg/ArmVirt.dsc.inc: define TcpIoLib resolution unconditionally ArmPkg: remove redundant _ARM_PLATFORM_FLAGS overrides EmbeddedPkg: remove GdbDebugAgent library BaseTools/tools_def ARM: emit PIC veneers ArmPkg/DefaultExceptionHandlerLib ARM: avoid endless loop in RELEASE = builds MdePkg/Base: introduce MAX_ALLOC_ADDRESS MdeModulePkg/Dxe/Gcd: disregard memory above MAX_ALLOC_ADDRESS MdeModulePkg/Dxe/Page: take MAX_ALLOC_ADDRESS into account ArmPkg/ArmMmuLib: take MAX_ALLOC_ADDRESS into account ArmPlatformPkg/MemoryInitPeim: take MAX_ALLOC_ADDRESS into account ArmVirtPkg/MemoryInitPeiLib: split memory HOB based on MAX_ALLOC_ADDR= ESS MdePkg/Arm/ProcessorBind.h: fix copy/paste error ArmPlatformPkg/SP805WatchdogDxe: cosmetic cleanup ArmPlatformPkg/SP805WatchdogDxe: switch to interrupt mode ArmPkg/GenericWatchdogDxe: clean up the code ArmPkg/GenericWatchdogDxe: implement RegisterHandler() method ArmPlatformPkg/PL011SerialPortLib: use untyped PCD for register base BaseTools/tools_def ARM: use softfloat target for CLANG3x BaseTools/GenFds: permit stripped MM_CORE_STANDALONE binaries BaseTools/Conf/tools_def.template: drop ARM/AARCH support from GCC46/= GCC47 ArmPkg/ArmMmuLib ARM: add missing support for non-shareable cached ma= ppings ArmPkg/ArmMmuLib ARM: fix thinko in second level page table handling MdePkg: implement MmServicesTableLib based on traditional SMM BaseTools/tools_def GCC5: disable LTO for ASLC invocations ArmPkg/ArmMmuLib ARM: disregard high memory when setting permissions ArmPkg/ArmMmuLib AARCH64: fix out of bounds access MdeModulePkg/MdeModulePkg.dsc: add MmServicesTableLib resolution OvmfPkg: add MmServicesTableLib resolution QuarkPlatformPkg: add MmServicesTableLib resolution Vlv2TbltDevicePkg: add MmServicesTableLib resolution MdeModulePkg/FaultTolerantWriteDxe: factor out boot service accesses MdeModulePkg/FaultTolerantWriteDxe: implement standalone MM version MdeModulePkg/VariableRuntimeDxe: factor out boot service accesses MdeModulePkg/VariableRuntimeDxe: implement standalone MM version MdePkg: introduce standalone MM entry point library class MdePkg: introduce standalone MM entry point library implementation MdePkg: add MM_STANDALONE implementation of MmServicesTableLib MdeModulePkg: implement NULL instance of HobLib library class MdeModulePkg: implement NULL instance of MemoryAllocationLib library = class MdeModulePkg/MdeModulePkg/dsc: move DxeDebugSupportDxe to x86 only se= ction MdeModulePkg/AuthVariableLibNull: add MM_STANDALONE support MdeModulePkg/VarCheckLib: add MM_STANDALONE support MdeModulePkg/MdeModulePkg.dsc: add MM_STANDALONE FTW and variable mod= ules ArmPkg/DebugAgentSymbolsBaseLib: remove exception handling ArmPkg/DefaultExceptionHandlerLib: declare the permitted usage context ArmVirtPkg: drop reference to ArmPkg/DefaultExceptionHandlerLibBase ArmPkg/DefaultExceptionHandlerLib: drop BASE variant ArmPkg/DefaultExceptionHandlerLib: use console if available EmbeddedPkg/NorFlashInfoLib: convert to BASE library ArmPkg/DefaultExceptionHandlerLib: add missing UefiLib include CryptoPkg/SmmCryptLib: permit use by MM_STANDALONE modules SecurityPkg/PlatformSecureLibNull: permit use by MM_STANDALONE modules MdeModulePkg/VarCheckUefiLib: permit use by MM_STANDALONE modules MdePkg/UefiDevicePathLib: permit use by MM_STANDALONE modules StandaloneMmPkg: add HobLib implementation for MM_STANDALONE modules StandaloneMmPkg: add MM_STANDALONE MemoryAllocationLib implementation StandaloneMmPkg/StandaloneMmCoreHobLib: restrict to MM_CORE_STANDALONE StandaloneMmPkg/StandaloneMmCpu: fix typo Standlone -> Standalone StandaloneMmPkg/StandaloneMmCoreEntryPoint: use %a modifier for ASCII= strings StandaloneMmPkg/StandaloneMmCoreEntryPoint: remove bogus ASSERT_EFI_E= RROR()s StandaloneMmPkg/StandaloneMmPeCoffExtraActionLib: ignore runtime attr= ibute StandaloneMmPkg/Core/Dispatcher: don't copy dispatched image twice StandaloneMmPkg/StandaloneMmCoreEntryPoint: permit the use of TE imag= es MdeModulePkg/MdeModulePkg.dsc: ignore standalone MM modules for EBC o= r XCODE5 ArmPkg/ArmMmuLib ARM: trim high memory regions instead of rejecting t= hem ArmPkg/ArmMmuLib AARCH64: get rid of needless TLB invalidation MdePkg/BaseLib: implement SpeculationBarrier() for ARM and AArch64 Ashish Singhal (6): MdeModulePkg/SdMmcPciHcDxe: Add SDMMC HC v4 and above Support. MdePkg/UefiLib: Abstract driver model protocol uninstallation NetworkPkg/IScsiDxe: Use UEFILib APIs to uninstall protocols. NetworkPkg: Protocol Uninstallation Cleanup DynamicTablesPkg/DynamicTableManagerDxe: Update DEPEX DynamicTablesPkg/AcpiSpcrLibArm: Support 16550 UART. Bret Barkelew (4): MdePkg/IndustryStandard: Introduce a correctly spelled macro SecurityPkg/Tcg: Fix typos in TcgDxe.c and Tcg2Dxe.c MdePkg/IndustryStandard: Remove an incorrectly spelled macro MdePkg/UefiLib: Add a new API GetVariable3 Chasel, Chiu (16): IntelFsp2WrapperPkg: Support FSP Dispatch mode IntelFsp2WrapperPkg: Revert 90c5bc08 IntelFsp2WrapperPkg: Support FSP Dispatch mode IntelFsp2WrapperPkg: Fix line ending format issue IntelFsp2WrapperPkg: Fix constant if statements issue Maintainers.txt: Change package maintainer of IntelFsp*Pkg BaseTools/GenFv: Support SecCore and PeiCore in different FV IntelFsp2Pkg: Add FspmArchConfigPpi to support Dispatch mode IntelFsp2Pkg: Remove unused keyword in new PPI header IntelFsp2Pkg: Add function to get bootloader stack pointer IntelFsp2Pkg: FSP can utilize bootloader stack MdePkg: Support EFI_PEI_CORE_FV_LOCATION_PPI MdeModulePkg/PeiMain: Support EFI_PEI_CORE_FV_LOCATION_PPI UefiCpuPkg/SecCore: Support EFI_PEI_CORE_FV_LOCATION_PPI UefiCpuPkg/SecCore: Support EFI_PEI_CORE_FV_LOCATION_PPI UefiCpuPkg/SecCore: Wrong Debug Information for SecCore Chen A Chen (18): SecurityPkg: Remove dead code and inf redundant definitions. SecurityPkg: Remove code under UserIdentification folder. FatPkg: Break down Part.c file. MdePkg/UefiGpt.h: Add new definition for enable GPT support FatPkg: Add GPT check in FatPei to support Capsule-on-Disk feature. MdePkg/UefiSpec.h: Add definition to support Capsule-on-Disk feature MdeModulePkg/CapsuleApp: Add a function used to get next DevicePath MdeModulePkg/CapsuleApp: Add functions to support Capsule-on-Disk MdeModulePkg/CapsuleApp: Enhance CapsuleApp to support Capsule-on-Disk FatPkg/FatPei/Gpt.c: Fix uninitialized variable issue MdeModulePkg/CapsuleApp: Fix potential NULL pointer dereference issue MdeModulePkg/CapsuleApp: Fix potential NULL pointer dereference issue MdeModulePkg/CapsuleApp: Fix memory leak issue. UefiCpuPkg/Microcode: Fix incorrect checksum issue for extended table IntelSiliconPkg/MicrocodeUpdate: Fix incorrect checksum issue MdeModulePkg: Rename confusion function name UefiCpuPkg/Microcode: Fix InComplete CheckSum32 issue UefiCpuPkg/Microcode.c: Add verification before calculate CheckSum32 Chu, Maggie (2): SecurityPkg: Incorrect warning message for Opal admin revert action SecurityPkg: Add a PCD to skip Opal password prompt Dandan Bi (12): MdeModulePkg/DisplayEngine: Remove useless NULL ptr check for NewPos MdePkg: check Length para before use in DevPathToTextUsbWWID MdePkg: Check input Ptrs in GetSectionFromAnyFvByFileType BaseTools/VfrCompile: report error for Integer overflow MdeModulePkg/NonDiscoverablePciDevice: Remove the redundant check MdePkg/BasePeCoffLib: Add more check for relocation data MdePkg/BasePeCoffLib: Correct the address of RelocBaseEnd ShellPkg/UefiShellAcpiViewCommandLib: Fix VS tool chain build failure MdeModulePkg: Fix coding style issues MdePkg: Fix coding style issues MdePkg/StatusCodeDataTypeId.h: Add new definition per PI1.7 Spec MdeModulePkg/BmBoot: Report status when fail to load/start boot option Derek Lin (1): BaseTools: Fix GenFds error doesn't break build. Edgar Handal (1): MdeModulePkg/SdMmcPciHcDxe: Use 16/32-bit IO widths Eric Dong (9): UefiCpuPkg/Cpuid.h: Sync CPUID definition to latest SDM. UefiCpuPkg/Cpuid: Add code to support new definition. UefiCpuPkg/RegisterCpuFeaturesLib: Enhance debug message. UefiCpuPkg/RegisterCpuFeaturesLib: Avoid AP calls PeiService. UefiCpuPkg/S3Resume2Pei: check 64BIT_WAKE_F in FACS.OSPMFlags. MdeModulePkg/BootScriptExecuteorDxe: check 64BIT_WAKE_F in FACS.OSPMF= lags UefiCpuPkg/RegisterCpuFeaturesLib: Replace AcquireSpinLock. SecurityPkg/OpalPassword: Update strings on Opal Setup page SecurityPkg/OpalPassword: Add NULL pointer check before using it Felix Polyudov (1): BaseTools: Fix incorrect formatting of GenFds command dictionary Feng, Bob C (52): BaseTools: Fix the problem using FILE_GUID override in .dsc BaseTools: Enable Pcd Array support. BaseTool: Filter out unused structure pcds BaseTools: Replace the sqlite database with list BaseTools: Optimize string concatenation BaseTools: Customize deepcopy function. BaseTools: Correct CCFLAG for PcdValueInit BaseTools: Fix PcdNvStoreDefaultValueBuffer Value. BaseTools: Fixed bugs in CopyDict function BaseTools: Fixed the build fail issue for cases BaseTools: Fix PcdArray issue BaseTools: Fixed metafile parser issues BaseTools: Reset FdsGlobalVariable BaseTools: Fixed build report issue. BaseTools: Correct PcdArray value assigment statement BaseTools: Report Error if use SET in Dsc BaseTools: Remove unused logic for EDKI BaseTools: Remove unused logic for IPF BaseTools: Remove unused logic from C tools BaseTools: Enable component override functionality BaseTools: Remove unused logic for EDKI BaseTools: Remove EDK_SOURCE keyword from ECC Tool BaseTools: Remove EDK_SOURCE keyword from GenFds tool. BaseTools: Remove EDK_SOURCE keyword from Inf Parser. BaseTools: Allow empty value for HiiPcd in Dsc BaseTools: Fix build report issue. BaseTools: use OrderedDict instead of sdict BaseTools: Make sure AllPcdList valid. BaseTools:File open failed for VPD MapFile BaseTools:Fixed Rsa issue and a set define issue. BaseTools:ord() don't match in py2 and py3 BaseTools: the list and iterator translation BaseTools: Handle the bytes and str difference BaseTools: ECC tool Python3 adaption BaseTools: Eot tool Python3 adaption BaseTools: Enable CODE format in DEC file BaseTools: Fixed incorrect line number in PcdValueInit.c BaseTools: Correct the error message for UPT BaseTools: Fixed a build report issue. BaseTools: Fix the build report issue about Structure PCD BaseTools: Fixed an issue about StructurePcd BaseTools: Add MaxSizeUserSet to Pcd deepcopy function BaseTools: Fix a ParseDevPathValue function issue. BaseTools: Fixed a bug in Vpd handling BaseTools: Fixed a code bug for Pcd Array. BaseTools: replace Sdict with OrderedDict in UPT BaseTool: Fixed incremental rebuild issue. BaseTools: Fix a bug about Structure PCD BaseTools: Add parameter check for the AsciiStringToUint64 BaseTools: Eot failed when enable python3 BaseTools: Fix a Eot issue. BaseTools: Add python3-distutils Ubuntu package checking Gary Lin (2): MdePkg ACPI: fix the typos in Acpi61.h and Acpi62.h MdeModulePkg/UefiBootManagerLib: Match the nested partitions Gonzalez Del Cueto, Rodrigo (1): SecurityPkg/TcgConfigDxe: Allow enabling TPM 1.2 device from disabled= state. Hao Wu (25): MdePkg/BaseLib: Introduce new SpeculationBarrier API MdeModulePkg/FaultTolerantWrite: Update to consume SpeculationBarrier MdeModulePkg/SmmLockBox: Update to consume SpeculationBarrier MdeModulePkg/Variable: Update to consume SpeculationBarrier UefiCpuPkg/PiSmmCpuDxeSmm: Update to consume SpeculationBarrier UefiCpuPkg: Merge StuffRsb.inc files into one in UefiCpuPkg/Include MdeModulePkg/SdMmcPciHcDxe: Fix VS2015 IA32 NOOPT build failure MdeModulePkg/SdMmcPciHcDxe: Update comment for spec compliance status MdeModulePkg: Add definitions for ATA AHCI host controller PPI MdeModulePkg: Add definitions for EDKII PEI ATA PassThru PPI MdeModulePkg: Add definitions for Storage Security Command PPI MdeModulePkg: Add GUID for LockBox to save storage dev to init in S3 MdeModulePkg/NvmExpressPei: Avoid updating the module-level variable MdeModulePkg/NvmExpressPei: Add logic to produce SSC PPI MdeModulePkg/NvmExpressPei: Consume S3StorageDeviceInitList LockBox MdeModulePkg/AhciPei: Add AHCI mode ATA device support in PEI MdeModulePkg/SmmLockBoxLib: Use 'DEBUG_' prefix instead of 'EFI_D_' MdeModulePkg/SmmLockBox(PEI): Remove an ASSERT in RestoreLockBox() MdeModulePkg/SmmLockBoxLib: Support LockBox enlarge in UpdateLockBox() OvmfPkg/LockBoxLib: Update the comments for API UpdateLockBox() SecurityPkg/OpalPassword: Remove HW init codes and consume SSC PPI SecurityPkg/HddPassword: Add Security feature set support for ATA dev MdeModulePkg/UfsBlockIoPei: Correct use of 'DeviceIndex' in BlkIO PPI MdeModulePkg/PartitionDxe: Ensure blocksize holds MBR (CVE-2018-12180) MdeModulePkg/RamDiskDxe: Restrict on RAM disk size (CVE-2018-12180) Hess Chen (1): BaseTools/ECC: Add a new type of exception Hsueh, Hong-chihX (1): MdePkg/BasePeCoffLib: skip runtime relocation if reloc info is invalid Jaben Carsey (14): BaseTools: Move Identification file to Eot BaseTools: cleanup LongFilePathSupport usage BaseTools: create and use a standard shared variable for '*' BaseTools: fix imports MdeModulePkg: fix comments in BaseSortLib BaseTools/build/build: refactor and move functions BaseTools/Workspace/InfBuildData: move functions BaseTools/DscBuildData: move function BaseTools/AutoGen: move functions BaseTools/GenFds/Capsule: move function logic BaseTools/Common/Misc: move private functions BaseTools/Common/Misc: remove uncalled code BaseTools/Common/Misc: Cleanup the imports BaseTools/build/build: delete variable Jagadeesh Ujja (2): SecurityPkg/AuthVariableLib: allow MM_STANDALONE drivers to use this = library MdePkg/Include: add MmServicesTableLib header file Jeff Brasen (5): MdeModulePkg/SdDxe: Fix potential NULL pointer access EmbeddedPkg/PrePiMemoryAllocationLib: Added AllocateZeroPool() MdeModulePkg/BaseSortLib: Enable for all module types ArmPkg/ArmScmiDxe: Add clock enable function EmbeddedPkg/PrePiLib: Correct function name Jian J Wang (7): CryptoPkg/IntrinsicLib: add missing BaseLib declaration Upgrade OpenSSL to 1.1.0j CryptoPkg/BaseCryptLib: split CryptPkcs7Verify.c on behalf of runtime MdePkg/UefiDevicePathLib: Add sanity check for FilePath device path MdePkg/UefiDevicePathLibDevicePathProtocol: Add sanity check for File= Path device path UefiCpuPkg: restore strict page attributes via #DB in nonstop mode on= ly Maintainers.txt: remove unexpected unicode BOM Jiaxin Wu (7): MdeModulePkg/Dhcp4Dxe: Remove unnecessary NULL pointer check. NetworkPkg/IScsiDxe: Remove unnecessary NULL pointer check. NetworkPkg/DnsDxe: Remove unnecessary NULL pointer check. MdeModulePkg/Ip4Dxe: Uninstall protocols when error happen in Driver = Binding Start. NetworkPkg/Ip6Dxe: Uninstall protocols when error happen in Driver Bi= nding Start. NetworkPkg/Ip6Dxe: Clean the invalid IPv6 configuration during driver= start. NetworkPkg/DnsDxe: [CVE-2018-12178] Check the received packet size be= fore parsing the message. Jiewen Yao (6): MdeModulePkg/LockboxNullLib: clean up INF file. BaseTool/GenC: Fix build error when type is BASE or USER_DEFINED. MdePkg/Include: Add Nasm.inc MdePkg/BaseLib: Add Shadow Stack Support for X86. UefiCpuPkg/ExceptionLib: Add CET support. UefiCpuPkg/PiSmmCpu: Add Shadow Stack Support for X86 SMM. Jordan Justen (1): OvmfPkg/build.sh: Enable flash for qemu 3 or later Julien Grall (1): Maintainers.txt: Update e-mail address for Julien Grall Krzysztof Koch (1): ShellPkg/UefiShellAcpiViewCommandLib: Add support for PPTT Laszlo Ersek (47): EmulatorPkg: require GCC48 or later OvmfPkg: require GCC48 or later Vlv2TbltDevicePkg: assume GCC48 or later BaseTools/tools_def.template: fix up LF-only line terminator BaseTools/tools_def.template: strip trailing whitespace BaseTools/tools_def.template: remove GCC48_IA32_X64_DLINK_COMMON dead= -end BaseTools/tools_def.template: remove GCC47 leaf definitions BaseTools/tools_def.template: propagate loss of GCC47 references BaseTools/tools_def.template: remove GCC47 documentation BaseTools/tools_def.template: remove GCC46 leaf definitions BaseTools/tools_def.template: propagate loss of GCC46 references BaseTools/tools_def.template: remove GCC46 documentation BaseTools/tools_def.template: remove GCC45 leaf definitions BaseTools/tools_def.template: propagate loss of GCC45 references BaseTools/tools_def.template: remove GCC45 documentation BaseTools/tools_def.template: remove GCC44 leaf definitions BaseTools/tools_def.template: propagate loss of GCC44 references BaseTools/tools_def.template: rename GCC44_ALL_CC_FLAGS to GCC48_ALL_= CC_FLAGS BaseTools/tools_def.template: eliminate GCC44_IA32_X64_DLINK_FLAGS BaseTools/tools_def.template: rename GCC44_IA32_X64_DLINK_COMMON to G= CC48_IA32_X64_DLINK_COMMON BaseTools/tools_def.template: remove comment about GCC44 + LzmaF86Com= press BaseTools/tools_def.template: remove GCC44 documentation ArmPkg/ArmSoftFloatLib: drop build flags specific to GCC46/GCC47 CryptoPkg/BaseCryptLib: drop build flags specific to GCC44 Revert "MdePkg: avoid __builtin_unreachable() on GCC v4.4" BaseTools/BuildReport: fix report for platforms/arches without struct= PCDs ArmVirtPkg/ArmVirtQemuKernel: don't set PcdCPUCoresStackBase ArmVirtPkg: don't set PcdRelocateVectorTable ArmVirtPkg/{ArmVirtQemu,ArmVirtQemuKernel}: don't set PcdTrustzoneSup= port ArmVirtPkg: don't set PcdPostCodePropertyMask ArmVirtPkg: clean up PcdSetNxForStack setting (applies to ArmVirtQemu= only) ArmVirtPkg/PrePi: drop wrong PcdCoreCount dependency ArmVirtPkg: don't set PcdCoreCount ArmVirtPkg: don't set PcdDebugClearMemoryValue ArmVirtPkg: don't set PcdDebugPrintErrorLevel in RELEASE builds ArmVirtPkg/ArmVirtXen: don't set PcdPL031RtcBase ArmVirtPkg/ArmVirtXen: don't set PcdTerminalTypeGuidBuffer ArmVirtPkg/ArmVirtXen: don't set PcdShellFile ArmVirtPkg/ArmVirtXen: don't set PcdTurnOffUsbLegacySupport ArmVirtPkg/ArmVirtXen: don't set Pcd*ImageVerificationPolicy Maintainers: add TPM2 reviewers for OvmfPkg Maintainers: specify the scope for OvmfPkg/ArmVirtPkg Xen module revi= ewers MdeModulePkg/UefiBootManagerLib: fix LoadImage/StartImage status code= rep. OvmfPkg: add library to track boot option loading/starting on the con= sole OvmfPkg/PlatformBootManagerLib: display boot option loading/starting ArmVirtPkg/ArmVirtQemu*: enable minimal Status Code Routing in DXE ArmVirtPkg/PlatformBootManagerLib: display boot option loading/starti= ng Leif Lindholm (8): ArmPkg: fix StandaloneMmMmuLib subdirectory case ArmPkg: drop ArmBds remnant Pcds from .dec ArmPkg: delete unused ArmTrustZoneSmc.h AppPkg: fix webserver build for !Ia32/X64 IntelFrameworkModulePkg: fix build for AARCH64/ARM IntelFrameworkPkg: fix build for AARCH64/ARM SecurityPkg: fix package build on ARM SignedCapsulePkg: enable package build for AARCH64/ARM Liming Gao (12): OvmfPkg: Don't include TftpDynamicCommand in XCODE5 tool chain MdeModulePkg PCD: Add DynamicEx PcdVpdBaseAddress64 for non SPI platf= orm Maintainers.txt: Add the rule to hand over the package maintain role BaseTools Script: Update ConvertFceToStructurePcd to report warning m= essages MdeModulePkg: Correct PCD name in MdeModulePkg.uni Readme.md: Add edk2 release tag and edk2 release plan BaseTools GenFw: Fix XCODE5 build issue BaseTools VolInfo: Fix XCODE5 build issue BaseTools: Update PYTHON env to PYTHON_COMMAND MdeModulePkg DxeCapsuleLibFmp: Update SupportCapsuleImage() for Fake = Capsule BaseTools: Remove unused txt files Revert "BaseTools:BaseTools supports to the driver combination." Liu Yu (1): EmulatorPkg/build.sh: Fix 'run' path to simulator host executable Marcin Wojtas (2): MdeModulePkg/SdMmcPciHcDxe: Add an optional parameter in NotifyPhase MdeModulePkg/SdMmcPciHcDxe: Allow overriding base clock frequency Max Knutsen (1): MdeModulePkg/ReportStatusCodeLib: Avoid using AllocatePool if possible Meenakshi Aggarwal (1): EmbeddedPkg: Fix Command Argument for SD/eMMC R/W operation. Mike Maslenkin (1): UefiCpuPkg/CpuExceptionHandlerLib: Fix spelling issue Mike Turner (4): MdePkg/BaseLib: Introduce CharToUpper and AsciiCharToUpper publicly MdePkg/UefiDevicePathLib: Add a checking step BaseTools/DevicePath: Add a checking step MdePkg/BaseLib: Add Base64Encode() and Base64Decode() Pete Batard (2): EmbeddedPkg/Library: Add VirtualRealTimeClockLib EmbeddedPkg/VirtualRealTimeClockLib: Fix correctness issues Philippe Mathieu-Daude (1): BaseTools: Fix build failure when specifying multiple BUILDTARGET Ray Ni (10): MdeModulePkg/PciBus: Shadow option ROM after BARs are programmed MdeModulePkg/PciBus: Fix system hang when no PCI Option ROM exists Maintainers.txt: Update mail address MdeModulePkg/PciBus: Change PCI_IO_DEVICE.RomSize to UINT32 type MdeModulePkg/PciBus: Correct typos MdeModulePkg/PciBus: Fix a bug PPB MEM32 BAR isn't restored sometimes UefiCpuPkg/MtrrLib: Fix a bug that may wrongly set memory <1MB to UC ShellBinPkg: Ia32/X64 Shell binary update. MdeModulePkg/HiiDatabase: Fix potential integer overflow (CVE-2018-12= 181) MdeModulePkg/HiiImage: Fix stack overflow when corrupted BMP is parse= d (CVE-2018-12181) Sami Mujawar (36): Maintainers.txt: Change DynamicTablesPkg maintainer DynamicTablesPkg: Dynamic Tables Framework DynamicTablesPkg: Table Generator definition DynamicTablesPkg: Acpi Table Generator DynamicTablesPkg: SMBIOS Table Generator DynamicTablesPkg: DT Table Generator DynamicTablesPkg: Standard NameSpace Objects DynamicTablesPkg: Arm NameSpace Objects DynamicTablesPkg: Configuration Manager Objects DynamicTablesPkg: Configuration Manager Protocol DynamicTablesPkg: Configuration Manager Helper DynamicTablesPkg: Table Helper Library DynamicTablesPkg: Dynamic Table Factory Protocol DynamicTablesPkg: Dynamic Table Factory Dxe DynamicTablesPkg: Dynamic Table Manager Dxe DynamicTablesPkg: Arm Raw/DSDT/SSDT Generator DynamicTablesPkg: Arm ACPI FADT Generator DynamicTablesPkg: Arm ACPI MADT Generator DynamicTablesPkg: Arm ACPI GTDT Generator DynamicTablesPkg: Arm SPCR Table Generator DynamicTablesPkg: Arm DBG2 Table Generator DynamicTablesPkg: Arm PCI MCFG Table Generator DynamicTablesPkg: Arm IORT Table Generator DynamicTablesPkg: Fix protocol section DynamicTablesPkg: Rename enum used for ID Mapping DynamicTablesPkg: Add OEM Info DynamicTablesPkg: DGB2: Update DBG2_DEBUG_PORT_DDI DynamicTablesPkg: Remove GIC Distributor Id field DynamicTablesPkg: Minor updates and fix typos ArmPkg: Fix writes to GICv3 GICD_IROUTER reg Revert "DynamicTablesPkg: Minor updates and fix typos" Revert "DynamicTablesPkg: Remove GIC Distributor Id field" Revert "DynamicTablesPkg: DGB2: Update DBG2_DEBUG_PORT_DDI" Revert "DynamicTablesPkg: Add OEM Info" Revert "DynamicTablesPkg: Rename enum used for ID Mapping" Revert "DynamicTablesPkg: Fix protocol section" Sean Brogan (1): MdeModulePkg/NvmExpressDxe: Report StatusCode for device init failure Shenglei Zhang (37): EmulatorPkg: Remove EdkShellBinPkg in FDF and DEC Nt32Pkg: Remove EdkShellBinPkg in FDF and DEC OvmfPkg: Remove EdkShellBinPkg in FDF Vlv2TbltDevicePkg: Remove EdkShellBinPkg with ShellPkg EdkShellBinPkg: Remove EdkShellBinPkg EdkShellPkg: Remove EdkShellPkg Maintainers.txt: Remove EdkShellPkg and EkdShellBinPkg UnixPkg: Remove UnixPkg and update Maintainers.txt MdeModulePkg: Remove PcdIdentifyMappingPageTablePtr ShellPkg: Remove ShellPkg wrapper header files BaseTools: Remove GenVtf DuetPkg: Remove DuetPkg BaseTools: Remove tools only used by DuetPkg Maintainers.txt: Remove DuetPkg ShellPkg/UefiShellDebug1CommandsLib: Remove the unused function CharT= oUpper MdeModulePkg/EbcDebugger: Change function names MdePkg/BaseLib: Remove definitions of two functions MdeModulePkg/EbcDebugger: Use AsciiCharToUpper and CharToUpper MdeModulePkg/DxeHttpLib: Use BaseLib api AsciiCharToUpper ShellPkg/Shell: Use BaseLib api CharToUpper ShellPkg/UefiShellLib: Use BaseLib api CharToUpper MdePkg: Change function parameter type MdeModulePkg/S3SaveStateDxe: Change function parameter types MdeModulePkg/SmmS3SaveStateDxe: Change function parameter types BaseTools/tools_def.template: Remove CYGGCC OptionRomPkg/ReadMe.txt: Remove CYGGCC BaseTools: Update MYTOOLS BaseTools/tools_def.template: Remove VS2003 and VS2005 OptionRomPkg/ReadMe.txt: Remove VS2005 BaseTools/tools_def.template: Remove UNIXGCC OvmfPkg/README: Remove UNIXGCC BaseTools/tools_def.template: Remove ELFGCC BaseTools/tools_def.template: Remove DDK3790 BaseTools/build_rule.template: Remove GCCLD MdePkg/BaseLib: Change a variable type in a bitwise operation MdeModulePkg/PropertiesTableAttributesDxe: Remove this driver IntelSiliconPkg/MicrocodeUpdateDxe: Error message enhancement Siyuan Fu (8): ArmVirtPkg: Replace obsoleted network drivers from platform DSC/FDF. ArmVirtPkg: Remove redundant library instances in ArmVirtQemuKernel.d= sc MdeModulePkg: Delete Tcp4Dxe in MdeModulePkg. NetworkPkg: Remove some clarification from TcpDxe.inf MdeModulePkg: Delete IScsiDxe in MdeModulePkg. NetworkPkg: Remove some clarification from IScsiDxe.inf MdeModulePkg: Delete UefiPxeBcDxe in MdeModulePkg. NetworkPkg: Remove some clarification from UefiPxeBcDxe.inf Solanki, Digant H (1): IntelSiliconPkg\Include\IndustryStandard: Update IGD_OPREGION_MBOX3 S= tructure Songpeng Li (3): ShellPkg/TftpDynamicCommand: Change file writing method in tftp NetworkPkg/IScsiDxe: Remove unused global variables. NetworkPkg/Dhcp6Dxe: Remove an unused global variable. Star Zeng (30): Maintainers.txt: Update FmpDevicePkg maintainer Maintainers.txt: Update MdeModulePkg maintainers MdeModulePkg PeiCore: Remove the using of PcdPeiCoreMaxPeimPerFv SecurityPkg Tcg(2)Pei: Remove the using of PcdPeiCoreMaxFvSupported MdeModulePkg PeiCore: Remove the using of PcdPeiCoreMaxFvSupported MdeModulePkg PeiCore: Remove the using of PcdPeiCoreMaxPpiSupported OvmfPkg: Remove PcdPeiCoreMaxXXX PCDs' statement Vlv2TbltDevicePkg: Remove PcdPeiCoreMaxXXX PCDs' statement MdeModulePkg: Remove PcdPeiCoreMaxXXX PCDs MdeModulePkg Variable: Add some missing changes for 9b18845 MdeModulePkg Variable: Abstract InitRealNonVolatileVariableStore MdeModulePkg Variable: Move "extern XXX" to Variable.h MdeModulePkg Variable: Not get NV PCD in VariableWriteServiceInitiali= ze MdeModulePkg Variable: Abstract VariableWriteServiceInitializeDxe/Smm MdeModulePkg Variable: Remove CacheOffset in UpdateVariable() MdeModulePkg Variable: type case VolatileBase to UINTN directly MdeModulePkg: Add PcdEmuVariableNvModeEnable in dec MdeModulePkg: Refine description a little for PcdEmuVariableNvStoreRe= served MdeModulePkg Variable: Add emulated variable NV mode support MdeModulePkg VariablePei: Don't check BOOT_IN_RECOVERY_MODE ArmVirtXen: Use merged variable driver for emulated NV mode ArmVirtXen: Link VarCheckUefiLib NULL class library instance BeagleBoardPkg: Use merged variable driver for emulated NV mode QuarkMin: Use merged variable driver for emulated NV mode CorebootPayloadPkg: Use merged variable driver for emulated NV mode MdeModulePkg VariableStandaloneMm: Add PcdEmuVariableNvModeEnable in = inf MdeModulePkg: Remove EmuVariableRuntimeDxe MdeModulePkg/PeiCore: Ensure FfsFileHeader 8 bytes aligned MdeModulePkg/DxeCore: Ensure FfsFileHeader 8 bytes aligned IntelFrameworkModulePkg/FwVolDxe: Ensure FfsFileHeader 8 bytes aligned Stefan Berger (1): OvmfPkg: Add TCG2 Configuration menu to the Device Manager menu Sughosh Ganu (3): ArmPkg/Include: Fix the SPM version SVC ID StandaloneMM: Include the newly added library class for MMU functions StandaloneMM: Update permissions for Standalone MM drivers memory area Sumit Garg (2): ArmPkg/OpteeLib: Add dummy RPC handler ArmPkg/OpteeLib: Add OPTEE_SUCCESS return code Sun, Zailiang (1): Maintainers.txt: update Vlv2*Pkg maintainers. Tomasz Michalec (2): MdeModulePkg/SdMmcPciHcDxe: Add UhsSignaling to SdMmcOverride protocol MdeModulePkg/SdMmcPciHcDxe: Add SwitchClockFreqPost to SdMmcOverride Vijayenthiran Subramaniam (2): MdeModulePkg/Variable: add debug logs in VariableServiceSetVariable NetworkPkg/IScsiDxe: add debug logs for failed SetVariable attempts Vladimir Olovyannikov (1): MdeModulePkg/NonDiscoverablePciDeviceDxe: add missing validation Vladimir Olovyannikov via edk2-devel (1): ShellPkg/TftpDynamicCommand: Return proper status Wang Fan (2): NetworkPkg: Add WiFi Connection Manager to NetworkPkg NetworkPkg: Fix Duplicate FreePool Error in WCM Ye Ting (1): Maintainers.txt: Change package maintainer and reviewer of CryptoPkg. Yonghong Zhu (1): Maintainers.txt: Update BaseTools maintainers Yunhua Feng (3): BaseTools: nametuple not have verbose parameter in python3 BaseTools: Remove unnecessary super function BaseTools: replace long by int Zhang, Chao B (6): SecurityPkg: TCG Add more Event type SecurityPkg: Update TCG PFP spec revision. SecurityPkg/Tcg: Fix Warnings and Remarks reported by IASL SecurityPkg/TCG: Upgrade UEFI supporting TCG spec info MdeModulePkg:Tpm2Acpi.h: Upgrade UEFI supporting TCG spec info Maintainers.txt: Change package maintainer and reviewer of SecurityPk= g. Zhao, ZhiqiangX (1): BaseTools: AutoGen and GenFds share the parser data. Zhichao Gao (8): ShellPkg: add array index check for shell delay option MdeModulePkg: change the function name ResetSystem MdeModulePkg: Add the new API ResetSystem in the head file MdeModulePkg: Add a new API ResetSystem for DXE ResetSystemLib MdeModulePkg: Add a new API ResetSystem for Null version MdeModulePkg: Add a new API ResetSystem for PEI ResetSystemLib MdeModulePkg: Add a runtime library instance of ResetSystemLib MdeModulePkg: Add the runtime ResetSystemLib in MdeModulePkg.dsc Zhijux Fan (38): BaseTools: Update nasm file build rule to support $(INC) BaseTools: Add $(INC)-like support when compiling .nasm files BaseTools:Build fail when PCD use in the [DEPEX] section of INF files BaseTools:build break if the Path contains SingleFile.Ext BaseTools:The BuildOptionPcd value is wrong BaseTools: Fix Pcd Array changes build report issue. BaseTools:Define Macro in Inf file, the pcdvalue Can't convert BaseTool:Rename xrange() to range() BaseTools:use iterate list to replace the itertools BaseTools: Rename iteritems to items BaseTools: replace get_bytes_le() to bytes_le BaseTools:Solve the data sorting problem use python3 BaseTools: Update argparse arguments since it not have version now BaseTools:Similar to octal data rectification BaseTools/UPT:merge UPT Tool use Python2 and Python3 BaseTools: update Test scripts support python3 BaseTools/Scripts: Porting PackageDocumentTools code to use Python3 Basetools: It went wrong when use os.linesep BaseTools:Fv BaseAddress must set If it not set BaseTools:TestTools character encoding issue BaseTools:Double carriage return inserted from Trim.py on Python3 BaseTools: change the Division Operator BaseTools:There is extra blank line in datalog BaseTools: Similar to octal data rectification BaseTools: Update windows and linux run scripts file to use Python3 BaseTools:Update build tool to print python version information BaseTools:Linux Python highest version check. BaseTools: PCD value incorrect in structure pcd sku case. BaseTools:StructurePCD value display incorrect in "Not used" section. BaseTools:Fix a ECC issue BaseTools:BaseTools supports to the driver combination. BaseTools:Fixed build failure when specifying multiple BUILDTARGET BaseTools:PCD value error in structure pcd sku case. BaseTools:Build fail if define [DEPEX] in library inf BaseTools:Some build generated files content are not ordered on linux BaseTools:PackageDocumentTools import lib error occurs. BaseTools:The BOM character is processed when python reads a file BaseTools:Run packagedoc_cli.py to generate doc failed yuchenlin (5): Revert "OvmfPkg/QemuVideoDxe: list "UnalignedIoInternal.h" in the INF= file" Revert "OvmfPkg/QemuVideoDxe: VMWare SVGA device support" Revert "OvmfPkg/QemuVideoDxe: Helper functions for unaligned port I/O= ." Revert "OvmfPkg: VMWare SVGA display device register definitions" OvmfPkg: simply use the Bochs interface for vmsvga zwei4 (1): Vlv2TbltDevicePkg:Fix build and boot failure of Minnowboard Max platf= orm. Signed-off-by: Laszlo Ersek Reviewed-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Michal Privoznik Reviewed-by: Michael S. Tsirkin Tested-by: Igor Mammedov --- Notes: v2: =20 - pick up Phil's R-b =20 - pick up Michal's and Michael's R-b's roms/edk2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roms/edk2 b/roms/edk2 index 85588389222a..89910a39dcfd 160000 --- a/roms/edk2 +++ b/roms/edk2 @@ -1 +1 @@ -Subproject commit 85588389222a3636baf0f9ed8227f2434af4c3f9 +Subproject commit 89910a39dcfd788057caa5d88b7e76e112d187b5 --=20 2.19.1.3.g30247aa5d201 From nobody Wed Apr 24 20:27:10 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1552511770689922.1952305893569; Wed, 13 Mar 2019 14:16:10 -0700 (PDT) Received: from localhost ([127.0.0.1]:50980 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4BEP-00049J-C6 for importer@patchew.org; Wed, 13 Mar 2019 17:16:09 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51192) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4B8T-000778-6U for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:10:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h4B0T-0006kF-8Z for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:01:46 -0400 Received: from mx1.redhat.com ([209.132.183.28]:44442) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1h4B0T-0006jl-08 for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:01:45 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 50B447CFA8 for ; Wed, 13 Mar 2019 21:01:44 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-120-225.rdu2.redhat.com [10.10.120.225]) by smtp.corp.redhat.com (Postfix) with ESMTP id 225A13844; Wed, 13 Mar 2019 21:01:41 +0000 (UTC) From: Laszlo Ersek To: berrange@redhat.com, eblake@redhat.com, imammedo@redhat.com, kraxel@redhat.com, mprivozn@redhat.com, mst@redhat.com, philmd@redhat.com, qemu-devel@nongnu.org Date: Wed, 13 Mar 2019 22:00:50 +0100 Message-Id: <20190313210057.32584-6-lersek@redhat.com> In-Reply-To: <20190313210057.32584-1-lersek@redhat.com> References: <20190313210057.32584-1-lersek@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.27]); Wed, 13 Mar 2019 21:01:44 +0000 (UTC) Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v2 05/12] roms/edk2-funcs.sh: add the qemu_edk2_get_thread_count() function X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" The edk2 "build" utility natively supports building modules (that is, INF files) in parallel. The feature is not useful when building a single module (with the "-m" option), but it is useful for platform firmware builds (which include many modules). Add a function that determines the "-n" option argument for "build", from the MAKEFLAGS variable (i.e. based on the presence of a make job server). Signed-off-by: Laszlo Ersek Reviewed-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Michal Privoznik Reviewed-by: Michael S. Tsirkin Tested-by: Igor Mammedov --- Notes: v2: =20 - pick up Phil's R-b / T-b =20 - pick up Michal's and Michael's R-b's roms/edk2-funcs.sh | 25 ++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/roms/edk2-funcs.sh b/roms/edk2-funcs.sh index d1cb1e4a111e..a9fae7ee891b 100644 --- a/roms/edk2-funcs.sh +++ b/roms/edk2-funcs.sh @@ -226,3 +226,28 @@ qemu_edk2_set_cross_env() =20 eval "export $cross_prefix_var=3D\$cross_prefix" } + + +# Determine the "-n" option argument (that is, the number of modules to bu= ild +# in parallel) for the edk2 "build" utility. Print the result to the stand= ard +# output. +# +# Parameters: +# $1: the value of the MAKEFLAGS variable +qemu_edk2_get_thread_count() +{ + local makeflags=3D"$1" + + if [[ "$makeflags" =3D=3D *--jobserver-auth=3D* ]] || + [[ "$makeflags" =3D=3D *--jobserver-fds=3D* ]]; then + # If there is a job server, allow the edk2 "build" utility to parallel= ize + # as many module builds as there are logical CPUs in the system. The "= make" + # instances forked by "build" are supposed to limit themselves through= the + # job server. The zero value below causes the edk2 "build" utility to = fetch + # the logical CPU count with Python's multiprocessing.cpu_count() meth= od. + printf '0\n' + else + # Build a single module at a time. + printf '1\n' + fi +} --=20 2.19.1.3.g30247aa5d201 From nobody Wed Apr 24 20:27:10 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 155251156075274.70592885846031; Wed, 13 Mar 2019 14:12:40 -0700 (PDT) Received: from localhost ([127.0.0.1]:50901 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4BAy-0000lr-NO for importer@patchew.org; Wed, 13 Mar 2019 17:12:36 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51286) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4B8R-0007B2-9S for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:10:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h4B0Y-0006nf-07 for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:01:50 -0400 Received: from mx1.redhat.com ([209.132.183.28]:56548) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1h4B0X-0006n2-Nk for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:01:49 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 0C32030EEF8F for ; Wed, 13 Mar 2019 21:01:49 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-120-225.rdu2.redhat.com [10.10.120.225]) by smtp.corp.redhat.com (Postfix) with ESMTP id B0EEC5F9D7; Wed, 13 Mar 2019 21:01:44 +0000 (UTC) From: Laszlo Ersek To: berrange@redhat.com, eblake@redhat.com, imammedo@redhat.com, kraxel@redhat.com, mprivozn@redhat.com, mst@redhat.com, philmd@redhat.com, qemu-devel@nongnu.org Date: Wed, 13 Mar 2019 22:00:51 +0100 Message-Id: <20190313210057.32584-7-lersek@redhat.com> In-Reply-To: <20190313210057.32584-1-lersek@redhat.com> References: <20190313210057.32584-1-lersek@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.48]); Wed, 13 Mar 2019 21:01:49 +0000 (UTC) Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v2 06/12] roms/Makefile: replace the $(EFIROM) target with "edk2-basetools" X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" We don't (can't) have a recipe for building just $(EFIROM); therefore, while we call the target $(EFIROM), we actually build all of the edk2 BaseTools. Rename the target to edk2-basetools, and update the iPXE prerequisite accordingly. This will let other targets depend on "edk2-basetools", where an $(EFIROM) pre-requisite would be misleading. Signed-off-by: Laszlo Ersek Reviewed-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Michal Privoznik Reviewed-by: Michael S. Tsirkin Tested-by: Igor Mammedov --- Notes: v2: =20 - pick up Phil's R-b / T-b =20 - pick up Michal's and Michael's R-b's roms/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/roms/Makefile b/roms/Makefile index 78d5dd18c301..2e83ececa25a 100644 --- a/roms/Makefile +++ b/roms/Makefile @@ -102,7 +102,7 @@ pxe-rom-%: build-pxe-roms =20 efirom: $(patsubst %,efi-rom-%,$(pxerom_variants)) =20 -efi-rom-%: build-pxe-roms build-efi-roms $(EFIROM) +efi-rom-%: build-pxe-roms build-efi-roms edk2-basetools $(EFIROM) -f "0x$(VID)" -i "0x$(DID)" -l 0x02 \ -b ipxe/src/bin/$(VID)$(DID).rom \ -ec ipxe/src/bin-i386-efi/$(VID)$(DID).efidrv \ @@ -120,7 +120,7 @@ build-efi-roms: build-pxe-roms $(patsubst %,bin-i386-efi/%.efidrv,$(pxerom_targets)) \ $(patsubst %,bin-x86_64-efi/%.efidrv,$(pxerom_targets)) =20 -$(EFIROM): +edk2-basetools: $(MAKE) -C edk2/BaseTools =20 slof: --=20 2.19.1.3.g30247aa5d201 From nobody Wed Apr 24 20:27:10 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1552512034240473.36349160466557; Wed, 13 Mar 2019 14:20:34 -0700 (PDT) Received: from localhost ([127.0.0.1]:51024 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4BId-0007Dl-3w for importer@patchew.org; Wed, 13 Mar 2019 17:20:31 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51171) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4B8P-00076a-CO for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:09:59 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h4B0g-0006ty-0T for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:01:59 -0400 Received: from mx1.redhat.com ([209.132.183.28]:54031) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1h4B0f-0006tO-JA for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:01:57 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id DD9C330BC673 for ; Wed, 13 Mar 2019 21:01:56 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-120-225.rdu2.redhat.com [10.10.120.225]) by smtp.corp.redhat.com (Postfix) with ESMTP id B6DE45F9D7; Wed, 13 Mar 2019 21:01:49 +0000 (UTC) From: Laszlo Ersek To: berrange@redhat.com, eblake@redhat.com, imammedo@redhat.com, kraxel@redhat.com, mprivozn@redhat.com, mst@redhat.com, philmd@redhat.com, qemu-devel@nongnu.org Date: Wed, 13 Mar 2019 22:00:52 +0100 Message-Id: <20190313210057.32584-8-lersek@redhat.com> In-Reply-To: <20190313210057.32584-1-lersek@redhat.com> References: <20190313210057.32584-1-lersek@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.46]); Wed, 13 Mar 2019 21:01:56 +0000 (UTC) Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v2 07/12] roms: build edk2 firmware binaries and variable store templates X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" Add the "efi" target to "Makefile". Introduce "Makefile.edk2" for building and cleaning the firmware images and varstore templates. Collect the common bits from the recipes in the helper script "edk2-build.sh". Signed-off-by: Laszlo Ersek Reviewed-by: Michael S. Tsirkin Reviewed-by: Michal Privoznik Reviewed-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Igor Mammedov Tested-by: Philippe Mathieu-Daud=C3=A9 --- Notes: v2: =20 - drop comma after copyright year, in both new files [Eric] =20 - define the SHELL macro as /bin/bash near the top of "Makefile.edk2", so that various bashisms (e.g. the "source" built-in, and the =3D=3D operator of "[") work even if /bin/sh isn't bash [Phil, Eric] =20 - rework "Makefile.edk2" to produce xz-compressed flash device files [Dan, Michael, Phil]: =20 - add implicit rule for compression, =20 - mark uncompressed FD files as intermediate, =20 - factor out the "flashdevs" macro for sharing between the "all" and ".INTERMEDIATE" targets =20 - due to said rework above, do not pick up Phil's R-b / T-b, and Michal's and Michael's R-b's roms/Makefile | 5 + roms/Makefile.edk2 | 148 ++++++++++++++++++++ roms/edk2-build.sh | 55 ++++++++ 3 files changed, 208 insertions(+) diff --git a/roms/Makefile b/roms/Makefile index 2e83ececa25a..054b432834ba 100644 --- a/roms/Makefile +++ b/roms/Makefile @@ -61,6 +61,7 @@ default: @echo " skiboot -- update skiboot.lid" @echo " u-boot.e500 -- update u-boot.e500" @echo " u-boot.sam460 -- update u-boot.sam460" + @echo " efi -- update UEFI (edk2) platform firmware" =20 bios: build-seabios-config-seabios-128k build-seabios-config-seabios-256k cp seabios/builds/seabios-128k/bios.bin ../pc-bios/bios.bin @@ -143,6 +144,9 @@ skiboot: $(MAKE) -C skiboot CROSS=3D$(powerpc64_cross_prefix) cp skiboot/skiboot.lid ../pc-bios/skiboot.lid =20 +efi: edk2-basetools + $(MAKE) -f Makefile.edk2 + clean: rm -rf seabios/.config seabios/out seabios/builds $(MAKE) -C sgabios clean @@ -153,3 +157,4 @@ clean: rm -rf u-boot/build.e500 $(MAKE) -C u-boot-sam460ex distclean $(MAKE) -C skiboot clean + $(MAKE) -f Makefile.edk2 clean diff --git a/roms/Makefile.edk2 b/roms/Makefile.edk2 new file mode 100644 index 000000000000..e5c3036949c8 --- /dev/null +++ b/roms/Makefile.edk2 @@ -0,0 +1,148 @@ +# Makefile for building firmware binaries and variable store templates for= a +# number of virtual platforms in edk2. +# +# Copyright (C) 2019 Red Hat, Inc. +# +# This program and the accompanying materials are licensed and made availa= ble +# under the terms and conditions of the BSD License that accompanies this +# distribution. The full text of the license may be found at +# . +# +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WI= THOUT +# WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + +SHELL =3D /bin/bash + +toolchain =3D $(shell source ./edk2-funcs.sh && qemu_edk2_get_toolchain $(= 1)) + +licenses :=3D \ + edk2/License.txt \ + edk2/OvmfPkg/License.txt \ + edk2/CryptoPkg/Library/OpensslLib/openssl/LICENSE + +# The "edk2-arm-vars.fd" varstore template is suitable for aarch64 as well. +# Similarly, the "edk2-i386-vars.fd" varstore template is suitable for x86= _64 +# as well, independently of "secure" too. +flashdevs :=3D \ + aarch64-code \ + arm-code \ + i386-code \ + i386-secure-code \ + x86_64-code \ + x86_64-secure-code \ + \ + arm-vars \ + i386-vars + +all: $(foreach flashdev,$(flashdevs),../pc-bios/edk2-$(flashdev).fd.xz) \ + ../pc-bios/edk2-licenses.txt + +../pc-bios/edk2-%.fd.xz: ../pc-bios/edk2-%.fd + xz -9 -e -c $< > $@ + +# When the build completes, we need not keep the uncompressed flash device +# files. +.INTERMEDIATE: $(foreach flashdev,$(flashdevs),../pc-bios/edk2-$(flashdev)= .fd) + +submodules: + cd edk2 && git submodule update --init --force + +# See notes on the ".NOTPARALLEL" target and the "+" indicator in +# "tests/uefi-test-tools/Makefile". +.NOTPARALLEL: + +../pc-bios/edk2-aarch64-code.fd: submodules + +./edk2-build.sh \ + aarch64 \ + --arch=3DAARCH64 \ + --platform=3DArmVirtPkg/ArmVirtQemu.dsc \ + -D NETWORK_IP6_ENABLE \ + -D HTTP_BOOT_ENABLE + cp edk2/Build/ArmVirtQemu-AARCH64/DEBUG_$(call toolchain,aarch64)/FV/QEMU= _EFI.fd \ + $@ + truncate --size=3D64M $@ + +../pc-bios/edk2-arm-code.fd: submodules + +./edk2-build.sh \ + arm \ + --arch=3DARM \ + --platform=3DArmVirtPkg/ArmVirtQemu.dsc \ + -D NETWORK_IP6_ENABLE \ + -D HTTP_BOOT_ENABLE + cp edk2/Build/ArmVirtQemu-ARM/DEBUG_$(call toolchain,arm)/FV/QEMU_EFI.fd \ + $@ + truncate --size=3D64M $@ + +../pc-bios/edk2-i386-code.fd: submodules + +./edk2-build.sh \ + i386 \ + --arch=3DIA32 \ + --platform=3DOvmfPkg/OvmfPkgIa32.dsc \ + -D NETWORK_IP6_ENABLE \ + -D HTTP_BOOT_ENABLE \ + -D TLS_ENABLE \ + -D TPM2_ENABLE \ + -D TPM2_CONFIG_ENABLE + cp edk2/Build/OvmfIa32/DEBUG_$(call toolchain,i386)/FV/OVMF_CODE.fd $@ + +../pc-bios/edk2-i386-secure-code.fd: submodules + +./edk2-build.sh \ + i386 \ + --arch=3DIA32 \ + --platform=3DOvmfPkg/OvmfPkgIa32.dsc \ + -D NETWORK_IP6_ENABLE \ + -D HTTP_BOOT_ENABLE \ + -D TLS_ENABLE \ + -D TPM2_ENABLE \ + -D TPM2_CONFIG_ENABLE \ + -D SECURE_BOOT_ENABLE \ + -D SMM_REQUIRE + cp edk2/Build/OvmfIa32/DEBUG_$(call toolchain,i386)/FV/OVMF_CODE.fd $@ + +../pc-bios/edk2-x86_64-code.fd: submodules + +./edk2-build.sh \ + x86_64 \ + --arch=3DX64 \ + --platform=3DOvmfPkg/OvmfPkgX64.dsc \ + -D NETWORK_IP6_ENABLE \ + -D HTTP_BOOT_ENABLE \ + -D TLS_ENABLE \ + -D TPM2_ENABLE \ + -D TPM2_CONFIG_ENABLE + cp edk2/Build/OvmfX64/DEBUG_$(call toolchain,x86_64)/FV/OVMF_CODE.fd $@ + +../pc-bios/edk2-x86_64-secure-code.fd: submodules + +./edk2-build.sh \ + x86_64 \ + --arch=3DIA32 \ + --arch=3DX64 \ + --platform=3DOvmfPkg/OvmfPkgIa32X64.dsc \ + -D NETWORK_IP6_ENABLE \ + -D HTTP_BOOT_ENABLE \ + -D TLS_ENABLE \ + -D TPM2_ENABLE \ + -D TPM2_CONFIG_ENABLE \ + -D SECURE_BOOT_ENABLE \ + -D SMM_REQUIRE + cp edk2/Build/Ovmf3264/DEBUG_$(call toolchain,x86_64)/FV/OVMF_CODE.fd $@ + +../pc-bios/edk2-arm-vars.fd: ../pc-bios/edk2-arm-code.fd + cp edk2/Build/ArmVirtQemu-ARM/DEBUG_$(call toolchain,arm)/FV/QEMU_VARS.fd= \ + $@ + truncate --size=3D64M $@ + +../pc-bios/edk2-i386-vars.fd: ../pc-bios/edk2-i386-code.fd + cp edk2/Build/OvmfIa32/DEBUG_$(call toolchain,i386)/FV/OVMF_VARS.fd $@ + +# The license file accumulates several individual licenses from under edk2, +# prefixing each individual license with a header (generated by "tail") th= at +# states its pathname. +../pc-bios/edk2-licenses.txt: submodules + tail -n $(shell cat $(licenses) | wc -l) $(licenses) > $@ + dos2unix $@ + +clean: + rm -rf edk2/Build + cd edk2/Conf && \ + rm -rf .cache BuildEnv.sh build_rule.txt target.txt \ + tools_def.txt diff --git a/roms/edk2-build.sh b/roms/edk2-build.sh new file mode 100755 index 000000000000..4f46f8a6a217 --- /dev/null +++ b/roms/edk2-build.sh @@ -0,0 +1,55 @@ +#!/bin/bash + +# Wrapper shell script for building a virtual platform firmware in edk2. +# +# Copyright (C) 2019 Red Hat, Inc. +# +# This program and the accompanying materials are licensed and made availa= ble +# under the terms and conditions of the BSD License that accompanies this +# distribution. The full text of the license may be found at +# . +# +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WI= THOUT +# WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + +set -e -u -C + +# Save the command line arguments. We need to reset $# to 0 before sourcing +# "edksetup.sh", as it will inherit $@. +emulation_target=3D$1 +shift +num_args=3D0 +args=3D() +for arg in "$@"; do + args[num_args++]=3D"$arg" +done +shift $num_args + +cd edk2 + +# Work around . +export PYTHON_COMMAND=3Dpython2 + +# Source "edksetup.sh" carefully. +set +e +u +C +source ./edksetup.sh +ret=3D$? +set -e -u -C +if [ $ret -ne 0 ]; then + exit $ret +fi + +# Fetch some option arguments, and set the cross-compilation environment (= if +# any), for the edk2 "build" utility. +source ../edk2-funcs.sh +edk2_toolchain=3D$(qemu_edk2_get_toolchain "$emulation_target") +edk2_thread_count=3D$(qemu_edk2_get_thread_count "$MAKEFLAGS") +qemu_edk2_set_cross_env "$emulation_target" + +# Build the platform firmware. +build \ + --cmd-len=3D65536 \ + -n "$edk2_thread_count" \ + --buildtarget=3DDEBUG \ + --tagname=3D"$edk2_toolchain" \ + "${args[@]}" --=20 2.19.1.3.g30247aa5d201 From nobody Wed Apr 24 20:27:10 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1552511693689309.9987585778673; Wed, 13 Mar 2019 14:14:53 -0700 (PDT) Received: from localhost ([127.0.0.1]:50928 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4BD7-0002gX-G3 for importer@patchew.org; Wed, 13 Mar 2019 17:14:49 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51286) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4B8N-0007B2-FL for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:09:57 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h4B0i-0006w7-Ko for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:02:05 -0400 Received: from mx1.redhat.com ([209.132.183.28]:44592) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1h4B0i-0006vD-7o for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:02:00 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 761958AE57 for ; Wed, 13 Mar 2019 21:01:59 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-120-225.rdu2.redhat.com [10.10.120.225]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4B3385F9D7; Wed, 13 Mar 2019 21:01:57 +0000 (UTC) From: Laszlo Ersek To: berrange@redhat.com, eblake@redhat.com, imammedo@redhat.com, kraxel@redhat.com, mprivozn@redhat.com, mst@redhat.com, philmd@redhat.com, qemu-devel@nongnu.org Date: Wed, 13 Mar 2019 22:00:53 +0100 Message-Id: <20190313210057.32584-9-lersek@redhat.com> In-Reply-To: <20190313210057.32584-1-lersek@redhat.com> References: <20190313210057.32584-1-lersek@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.27]); Wed, 13 Mar 2019 21:01:59 +0000 (UTC) Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v2 08/12] pc-bios: add edk2 firmware binaries and variable store templates X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" Add the files built by the last patch: (compressed) binaries, and the cumulative license text that covers them. Signed-off-by: Laszlo Ersek Reviewed-by: Michael S. Tsirkin Reviewed-by: Michal Privoznik Reviewed-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Igor Mammedov --- Notes: v2: =20 - capture the compressed build outputs of the last patch; slightly update the commit message [Dan, Michael, Phil] =20 - consequently, do not pick up Michal's and Michael's R-b's pc-bios/edk2-licenses.txt | 209 ++++++++++++++++++++ pc-bios/edk2-aarch64-code.fd.xz | Bin 0 -> 1146804 bytes pc-bios/edk2-arm-code.fd.xz | Bin 0 -> 1147852 bytes pc-bios/edk2-arm-vars.fd.xz | Bin 0 -> 10008 bytes pc-bios/edk2-i386-code.fd.xz | Bin 0 -> 1674764 bytes pc-bios/edk2-i386-secure-code.fd.xz | Bin 0 -> 1870024 bytes pc-bios/edk2-i386-vars.fd.xz | Bin 0 -> 320 bytes pc-bios/edk2-x86_64-code.fd.xz | Bin 0 -> 1655276 bytes pc-bios/edk2-x86_64-secure-code.fd.xz | Bin 0 -> 1889024 bytes 9 files changed, 209 insertions(+) diff --git a/pc-bios/edk2-licenses.txt b/pc-bios/edk2-licenses.txt new file mode 100644 index 000000000000..8bdb1abc993e --- /dev/null +++ b/pc-bios/edk2-licenses.txt @@ -0,0 +1,209 @@ +=3D=3D> edk2/License.txt <=3D=3D +Copyright (c) 2004 - 2016, Intel Corporation. All rights reserved. +Copyright (c) 2008 - 2010, Apple Inc. All rights reserved. +Copyright (c) 2011 - 2015, ARM Limited. All rights reserved. +Copyright (c) 2014 - 2015, Linaro Limited. All rights reserved. +Copyright (c) 2013 - 2015, Red Hat, Inc. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + +=3D=3D> edk2/OvmfPkg/License.txt <=3D=3D +Copyright (c) 2012, Intel Corporation. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + + +Some files are subject to the following license, the MIT license. Those fi= les +are located in: +- OvmfPkg/Include/IndustryStandard/Xen/ +- OvmfPkg/XenBusDxe/ +- OvmfPkg/XenPvBlkDxe/ + +Permission is hereby granted, free of charge, to any person obtaining a co= py +of this software and associated documentation files (the "Software"), to d= eal +in the Software without restriction, including without limitation the righ= ts +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FR= OM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +=3D=3D> edk2/CryptoPkg/Library/OpensslLib/openssl/LICENSE <=3D=3D + + LICENSE ISSUES + =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D + + The OpenSSL toolkit stays under a double license, i.e. both the conditio= ns of + the OpenSSL License and the original SSLeay license apply to the toolkit. + See below for the actual license texts. + + OpenSSL License + --------------- + +/* =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D + * Copyright (c) 1998-2018 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer.=20 + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ + + Original SSLeay License + ----------------------- + +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + *=20 + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + *=20 + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attrib= ution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + *=20 + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the lib= rary + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) f= rom=20 + * the apps directory (application code) you must include an acknowledg= ement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft= .com)" + *=20 + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURP= OSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENT= IAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STR= ICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY W= AY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + *=20 + * The licence and distribution terms for any publically available version= or + * derivative of this code cannot be changed. i.e. this code cannot simpl= y be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ + diff --git a/pc-bios/edk2-aarch64-code.fd.xz b/pc-bios/edk2-aarch64-code.fd= .xz new file mode 100644 index 000000000000..8ca34c56b51b Binary files /dev/null and b/pc-bios/edk2-aarch64-code.fd.xz differ diff --git a/pc-bios/edk2-arm-code.fd.xz b/pc-bios/edk2-arm-code.fd.xz new file mode 100644 index 000000000000..db2c20b71e29 Binary files /dev/null and b/pc-bios/edk2-arm-code.fd.xz differ diff --git a/pc-bios/edk2-arm-vars.fd.xz b/pc-bios/edk2-arm-vars.fd.xz new file mode 100644 index 000000000000..8c3a4b5c8bdc Binary files /dev/null and b/pc-bios/edk2-arm-vars.fd.xz differ diff --git a/pc-bios/edk2-i386-code.fd.xz b/pc-bios/edk2-i386-code.fd.xz new file mode 100644 index 000000000000..f25dbec37e72 Binary files /dev/null and b/pc-bios/edk2-i386-code.fd.xz differ diff --git a/pc-bios/edk2-i386-secure-code.fd.xz b/pc-bios/edk2-i386-secure= -code.fd.xz new file mode 100644 index 000000000000..11d499b90d85 Binary files /dev/null and b/pc-bios/edk2-i386-secure-code.fd.xz differ diff --git a/pc-bios/edk2-i386-vars.fd.xz b/pc-bios/edk2-i386-vars.fd.xz new file mode 100644 index 000000000000..1656532daa6e Binary files /dev/null and b/pc-bios/edk2-i386-vars.fd.xz differ diff --git a/pc-bios/edk2-x86_64-code.fd.xz b/pc-bios/edk2-x86_64-code.fd.xz new file mode 100644 index 000000000000..92398935a482 Binary files /dev/null and b/pc-bios/edk2-x86_64-code.fd.xz differ diff --git a/pc-bios/edk2-x86_64-secure-code.fd.xz b/pc-bios/edk2-x86_64-se= cure-code.fd.xz new file mode 100644 index 000000000000..a95891dcf134 Binary files /dev/null and b/pc-bios/edk2-x86_64-secure-code.fd.xz differ --=20 2.19.1.3.g30247aa5d201 From nobody Wed Apr 24 20:27:10 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1552511843088783.8284802318105; Wed, 13 Mar 2019 14:17:23 -0700 (PDT) Received: from localhost ([127.0.0.1]:50984 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4BFZ-0004pR-Nh for importer@patchew.org; Wed, 13 Mar 2019 17:17:21 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51192) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4B8N-000778-Dq for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:09:56 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h4B0z-0007Aj-PB for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:02:19 -0400 Received: from mx1.redhat.com ([209.132.183.28]:56706) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1h4B0z-0007A3-EB for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:02:17 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id B1A763061234 for ; Wed, 13 Mar 2019 21:02:16 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-120-225.rdu2.redhat.com [10.10.120.225]) by smtp.corp.redhat.com (Postfix) with ESMTP id D900A5C57A; Wed, 13 Mar 2019 21:01:59 +0000 (UTC) From: Laszlo Ersek To: berrange@redhat.com, eblake@redhat.com, imammedo@redhat.com, kraxel@redhat.com, mprivozn@redhat.com, mst@redhat.com, philmd@redhat.com, qemu-devel@nongnu.org Date: Wed, 13 Mar 2019 22:00:54 +0100 Message-Id: <20190313210057.32584-10-lersek@redhat.com> In-Reply-To: <20190313210057.32584-1-lersek@redhat.com> References: <20190313210057.32584-1-lersek@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.48]); Wed, 13 Mar 2019 21:02:16 +0000 (UTC) Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v2 09/12] pc-bios: document the edk2 firmware images; add firmware descriptors X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" Update the README file with information on the images added previously, and provide firmware descriptor documents that conform to "docs/interop/firmware.json". Signed-off-by: Laszlo Ersek Reviewed-by: Michal Privoznik Reviewed-by: Michael S. Tsirkin Tested-by: Igor Mammedov --- Notes: v2: =20 - refer to "edk2-*.fd.xz" rather than "edk2-*.fd" in the README hunk [Dan, Michael, Phil] =20 - pick up Michal's and Michael's R-b's pc-bios/descriptors/50-edk2-i386-secure.json | 34 +++++++++++++++++++ pc-bios/descriptors/50-edk2-x86_64-secure.json | 35 ++++++++++++++++++++ pc-bios/descriptors/60-edk2-aarch64.json | 31 +++++++++++++++++ pc-bios/descriptors/60-edk2-arm.json | 31 +++++++++++++++++ pc-bios/descriptors/60-edk2-i386.json | 33 ++++++++++++++++++ pc-bios/descriptors/60-edk2-x86_64.json | 34 +++++++++++++++++++ pc-bios/README | 11 ++++++ 7 files changed, 209 insertions(+) diff --git a/pc-bios/descriptors/50-edk2-i386-secure.json b/pc-bios/descrip= tors/50-edk2-i386-secure.json new file mode 100644 index 000000000000..d7108c1da05a --- /dev/null +++ b/pc-bios/descriptors/50-edk2-i386-secure.json @@ -0,0 +1,34 @@ +{ + "description": "UEFI firmware for i386, with Secure Boot and SMM", + "interface-types": [ + "uefi" + ], + "mapping": { + "device": "flash", + "executable": { + "filename": "@DATADIR@/edk2-i386-secure-code.fd", + "format": "raw" + }, + "nvram-template": { + "filename": "@DATADIR@/edk2-i386-vars.fd", + "format": "raw" + } + }, + "targets": [ + { + "architecture": "i386", + "machines": [ + "pc-q35-*" + ] + } + ], + "features": [ + "acpi-s3", + "requires-smm", + "secure-boot", + "verbose-dynamic" + ], + "tags": [ + + ] +} diff --git a/pc-bios/descriptors/50-edk2-x86_64-secure.json b/pc-bios/descr= iptors/50-edk2-x86_64-secure.json new file mode 100644 index 000000000000..387eb356236b --- /dev/null +++ b/pc-bios/descriptors/50-edk2-x86_64-secure.json @@ -0,0 +1,35 @@ +{ + "description": "UEFI firmware for x86_64, with Secure Boot and SMM", + "interface-types": [ + "uefi" + ], + "mapping": { + "device": "flash", + "executable": { + "filename": "@DATADIR@/edk2-x86_64-secure-code.fd", + "format": "raw" + }, + "nvram-template": { + "filename": "@DATADIR@/edk2-i386-vars.fd", + "format": "raw" + } + }, + "targets": [ + { + "architecture": "x86_64", + "machines": [ + "pc-q35-*" + ] + } + ], + "features": [ + "acpi-s3", + "amd-sev", + "requires-smm", + "secure-boot", + "verbose-dynamic" + ], + "tags": [ + + ] +} diff --git a/pc-bios/descriptors/60-edk2-aarch64.json b/pc-bios/descriptors= /60-edk2-aarch64.json new file mode 100644 index 000000000000..800a21bda691 --- /dev/null +++ b/pc-bios/descriptors/60-edk2-aarch64.json @@ -0,0 +1,31 @@ +{ + "description": "UEFI firmware for aarch64", + "interface-types": [ + "uefi" + ], + "mapping": { + "device": "flash", + "executable": { + "filename": "@DATADIR@/edk2-aarch64-code.fd", + "format": "raw" + }, + "nvram-template": { + "filename": "@DATADIR@/edk2-arm-vars.fd", + "format": "raw" + } + }, + "targets": [ + { + "architecture": "aarch64", + "machines": [ + "virt-*" + ] + } + ], + "features": [ + "verbose-static" + ], + "tags": [ + + ] +} diff --git a/pc-bios/descriptors/60-edk2-arm.json b/pc-bios/descriptors/60-= edk2-arm.json new file mode 100644 index 000000000000..d5f1bba6cc82 --- /dev/null +++ b/pc-bios/descriptors/60-edk2-arm.json @@ -0,0 +1,31 @@ +{ + "description": "UEFI firmware for arm", + "interface-types": [ + "uefi" + ], + "mapping": { + "device": "flash", + "executable": { + "filename": "@DATADIR@/edk2-arm-code.fd", + "format": "raw" + }, + "nvram-template": { + "filename": "@DATADIR@/edk2-arm-vars.fd", + "format": "raw" + } + }, + "targets": [ + { + "architecture": "arm", + "machines": [ + "virt-*" + ] + } + ], + "features": [ + "verbose-static" + ], + "tags": [ + + ] +} diff --git a/pc-bios/descriptors/60-edk2-i386.json b/pc-bios/descriptors/60= -edk2-i386.json new file mode 100644 index 000000000000..2f8dec74fecb --- /dev/null +++ b/pc-bios/descriptors/60-edk2-i386.json @@ -0,0 +1,33 @@ +{ + "description": "UEFI firmware for i386", + "interface-types": [ + "uefi" + ], + "mapping": { + "device": "flash", + "executable": { + "filename": "@DATADIR@/edk2-i386-code.fd", + "format": "raw" + }, + "nvram-template": { + "filename": "@DATADIR@/edk2-i386-vars.fd", + "format": "raw" + } + }, + "targets": [ + { + "architecture": "i386", + "machines": [ + "pc-i440fx-*", + "pc-q35-*" + ] + } + ], + "features": [ + "acpi-s3", + "verbose-dynamic" + ], + "tags": [ + + ] +} diff --git a/pc-bios/descriptors/60-edk2-x86_64.json b/pc-bios/descriptors/= 60-edk2-x86_64.json new file mode 100644 index 000000000000..968cb65cf973 --- /dev/null +++ b/pc-bios/descriptors/60-edk2-x86_64.json @@ -0,0 +1,34 @@ +{ + "description": "UEFI firmware for x86_64", + "interface-types": [ + "uefi" + ], + "mapping": { + "device": "flash", + "executable": { + "filename": "@DATADIR@/edk2-x86_64-code.fd", + "format": "raw" + }, + "nvram-template": { + "filename": "@DATADIR@/edk2-i386-vars.fd", + "format": "raw" + } + }, + "targets": [ + { + "architecture": "x86_64", + "machines": [ + "pc-i440fx-*", + "pc-q35-*" + ] + } + ], + "features": [ + "acpi-s3", + "amd-sev", + "verbose-dynamic" + ], + "tags": [ + + ] +} diff --git a/pc-bios/README b/pc-bios/README index d421cb3f1f97..f6acd3209610 100644 --- a/pc-bios/README +++ b/pc-bios/README @@ -50,3 +50,14 @@ =20 - QemuMacDrivers (https://github.com/ozbenh/QemuMacDrivers) is a project to provide virtualised drivers for PPC MacOS guests. + +- The "edk2-*.fd.xz" images are platform firmware binaries and matching UE= FI + variable store templates built from the TianoCore community's EFI Develo= pment + Kit II project + . The imag= es + were built at git tag "edk2-stable201903". The firmware binaries bundle = parts + of the OpenSSL project, at git tag "OpenSSL_1_1_0j" (the OpenSSL tag is a + function of the edk2 tag). Licensing information is given in + "edk2-licenses.txt". The image files are described by the JSON documents= in + the "pc-bios/descriptors" directory, which conform to the + "docs/interop/firmware.json" schema. --=20 2.19.1.3.g30247aa5d201 From nobody Wed Apr 24 20:27:10 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1552511524053518.6819233274266; Wed, 13 Mar 2019 14:12:04 -0700 (PDT) Received: from localhost ([127.0.0.1]:50897 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4BAJ-0000Bs-V8 for importer@patchew.org; Wed, 13 Mar 2019 17:11:55 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51171) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4B8K-00076a-8l for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:09:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h4B14-0007E8-Ir for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:02:23 -0400 Received: from mx1.redhat.com ([209.132.183.28]:54922) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1h4B14-0007Db-BD for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:02:22 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id A1C4A300179D for ; Wed, 13 Mar 2019 21:02:21 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-120-225.rdu2.redhat.com [10.10.120.225]) by smtp.corp.redhat.com (Postfix) with ESMTP id 7227C5C57A; Wed, 13 Mar 2019 21:02:16 +0000 (UTC) From: Laszlo Ersek To: berrange@redhat.com, eblake@redhat.com, imammedo@redhat.com, kraxel@redhat.com, mprivozn@redhat.com, mst@redhat.com, philmd@redhat.com, qemu-devel@nongnu.org Date: Wed, 13 Mar 2019 22:00:55 +0100 Message-Id: <20190313210057.32584-11-lersek@redhat.com> In-Reply-To: <20190313210057.32584-1-lersek@redhat.com> References: <20190313210057.32584-1-lersek@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.44]); Wed, 13 Mar 2019 21:02:21 +0000 (UTC) Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v2 10/12] tests: add missing dependency to build QTEST_QEMU_BINARY, round 2 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" In commit b94b330e2333 ("tests: add missing dependency to build QTEST_QEMU_BINARY", 2017-07-31), Phil fixed the dependency list of make target "check-qtest-%". Namely, the recipe would set QTEST_QEMU_BINARY to the softmmu emulator for the emulation target, but the prerequisites didn't include the emulator. The same issue affects the "check-report-qtest-%.tap" make target, which is the other make target whose recipe sets QTEST_QEMU_BINARY: > $ make -j4 check-report-qtest-aarch64.tap > TAP check-report-qtest-aarch64.tap > sh: /.../aarch64-softmmu/qemu-system-aarch64: No such file or directory Apply Phil's fix to this make target too. Signed-off-by: Laszlo Ersek Reviewed-by: Michael S. Tsirkin Reviewed-by: Michal Privoznik Tested-by: Igor Mammedov --- Notes: v2: =20 - new patch, relied upon by the next patch tests/Makefile.include | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Makefile.include b/tests/Makefile.include index a5719551dd1b..6c116addafe4 100644 --- a/tests/Makefile.include +++ b/tests/Makefile.include @@ -915,7 +915,7 @@ check-speed: $(check-speed-y) =20 # gtester tests with TAP output =20 -$(patsubst %, check-report-qtest-%.tap, $(QTEST_TARGETS)): check-report-qt= est-%.tap: $(check-qtest-y) +$(patsubst %, check-report-qtest-%.tap, $(QTEST_TARGETS)): check-report-qt= est-%.tap: subdir-%-softmmu $(check-qtest-y) $(call do_test_tap, $(check-qtest-$*-y) $(check-qtest-generic-y), \ QTEST_QEMU_BINARY=3D$*-softmmu/qemu-system-$* \ QTEST_QEMU_IMG=3Dqemu-img$(EXESUF)) --=20 2.19.1.3.g30247aa5d201 From nobody Wed Apr 24 20:27:10 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1552511680052196.30651100885723; Wed, 13 Mar 2019 14:14:40 -0700 (PDT) Received: from localhost ([127.0.0.1]:50926 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4BCv-0002TE-1N for importer@patchew.org; Wed, 13 Mar 2019 17:14:37 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51171) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4B8H-00076a-Es for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:09:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h4B1A-0007Je-Lx for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:02:29 -0400 Received: from mx1.redhat.com ([209.132.183.28]:44888) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1h4B1A-0007Ih-8D for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:02:28 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 887B1811D7 for ; Wed, 13 Mar 2019 21:02:27 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-120-225.rdu2.redhat.com [10.10.120.225]) by smtp.corp.redhat.com (Postfix) with ESMTP id 0C9FE5F9D7; Wed, 13 Mar 2019 21:02:21 +0000 (UTC) From: Laszlo Ersek To: berrange@redhat.com, eblake@redhat.com, imammedo@redhat.com, kraxel@redhat.com, mprivozn@redhat.com, mst@redhat.com, philmd@redhat.com, qemu-devel@nongnu.org Date: Wed, 13 Mar 2019 22:00:56 +0100 Message-Id: <20190313210057.32584-12-lersek@redhat.com> In-Reply-To: <20190313210057.32584-1-lersek@redhat.com> References: <20190313210057.32584-1-lersek@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.27]); Wed, 13 Mar 2019 21:02:27 +0000 (UTC) Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v2 11/12] Makefile: install the edk2 firmware images and their descriptors X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" Decompress and install the edk2 firmware blobs as part of "make install", unless blob installation was disabled with configure's "--disable-blobs" option. Additionally, decompress the blobs as a pre-requisite for building softmmu binaries -- this is helpful for both "make check" and other ad-hoc tests one might want to run in the build directory. Signed-off-by: Laszlo Ersek Reviewed-by: Michael S. Tsirkin Reviewed-by: Michal Privoznik Reviewed-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Igor Mammedov Tested-by: Philippe Mathieu-Daud=C3=A9 --- Notes: v2: =20 - adapt to tracking the edk2 flash device files in compressed form [Dan, Michael, Phil] =20 - do not pick up Michal's and Michael's R-b's due to the above change configure | 1 + Makefile | 29 +++++++++++++++++++- .gitignore | 1 + 3 files changed, 30 insertions(+), 1 deletion(-) diff --git a/configure b/configure index cab830a4c920..a8e5c14899d6 100755 --- a/configure +++ b/configure @@ -7770,6 +7770,7 @@ for bios_file in \ $source_path/pc-bios/*.img \ $source_path/pc-bios/openbios-* \ $source_path/pc-bios/u-boot.* \ + $source_path/pc-bios/edk2-*.fd.xz \ $source_path/pc-bios/palcode-* do LINKS=3D"$LINKS pc-bios/$(basename $bios_file)" diff --git a/Makefile b/Makefile index 6ccb8639b08a..4b325052005e 100644 --- a/Makefile +++ b/Makefile @@ -296,6 +296,10 @@ ui/input-keymap-%.c: $(KEYCODEMAP_GEN) $(KEYCODEMAP_CS= V) $(SRC_PATH)/ui/Makefile $(KEYCODEMAP_GEN): .git-submodule-status $(KEYCODEMAP_CSV): .git-submodule-status =20 +edk2-decompressed =3D $(basename $(wildcard pc-bios/edk2-*.fd.xz)) +pc-bios/edk2-%.fd: pc-bios/edk2-%.fd.xz + $(call quiet-command,xz -d -c $< > $@,"UNXZ",$<) + # Don't try to regenerate Makefile or configure # We don't generate any of them Makefile: ; @@ -444,6 +448,7 @@ $(SOFTMMU_SUBDIR_RULES): $(block-obj-y) $(SOFTMMU_SUBDIR_RULES): $(crypto-obj-y) $(SOFTMMU_SUBDIR_RULES): $(io-obj-y) $(SOFTMMU_SUBDIR_RULES): config-all-devices.mak +$(SOFTMMU_SUBDIR_RULES): $(edk2-decompressed) =20 subdir-%: $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V=3D"$(V)" TARGET_= DIR=3D"$*/" all,) @@ -632,6 +637,7 @@ clean: ! -path ./roms/edk2/ArmPkg/Library/GccLto/liblto-arm.a \ ! -path ./roms/edk2/BaseTools/Source/Python/UPT/Dll/sqlite3.dll \ -exec rm {} + + rm -f $(edk2-decompressed) rm -f $(filter-out %.tlb,$(TOOLS)) $(HELPERS-y) qemu-ga TAGS cscope.* *.p= od *~ */*~ rm -f fsdev/*.pod scsi/*.pod rm -f qemu-img-cmds.h @@ -722,9 +728,14 @@ spapr-rtas.bin slof.bin skiboot.lid \ palcode-clipper \ u-boot.e500 u-boot-sam460-20100605.bin \ qemu_vga.ndrv \ +edk2-licenses.txt \ hppa-firmware.img + +DESCS=3D50-edk2-i386-secure.json 50-edk2-x86_64-secure.json \ +60-edk2-aarch64.json 60-edk2-arm.json 60-edk2-i386.json 60-edk2-x86_64.json else BLOBS=3D +DESCS=3D endif =20 # Note that we manually filter-out the non-Sphinx documentation which @@ -785,7 +796,8 @@ endif =20 ICON_SIZES=3D16x16 24x24 32x32 48x48 64x64 128x128 256x256 512x512 =20 -install: all $(if $(BUILD_DOCS),install-doc) install-datadir install-local= statedir +install: all $(if $(BUILD_DOCS),install-doc) install-datadir install-local= statedir \ + $(if $(INSTALL_BLOBS),$(edk2-decompressed)) ifneq ($(TOOLS),) $(call install-prog,$(subst qemu-ga,qemu-ga$(EXESUF),$(TOOLS)),$(DESTDIR)= $(bindir)) endif @@ -807,6 +819,21 @@ ifneq ($(BLOBS),) set -e; for x in $(BLOBS); do \ $(INSTALL_DATA) $(SRC_PATH)/pc-bios/$$x "$(DESTDIR)$(qemu_datadir)"; \ done +endif +ifdef INSTALL_BLOBS + set -e; for x in $(edk2-decompressed); do \ + $(INSTALL_DATA) $$x "$(DESTDIR)$(qemu_datadir)"; \ + done +endif +ifneq ($(DESCS),) + $(INSTALL_DIR) "$(DESTDIR)$(qemu_datadir)/firmware" + set -e; tmpf=3D$$(mktemp); trap 'rm -f -- "$$tmpf"' EXIT; \ + for x in $(DESCS); do \ + sed -e 's,@DATADIR@,$(DESTDIR)$(qemu_datadir),' \ + "$(SRC_PATH)/pc-bios/descriptors/$$x" > "$$tmpf"; \ + $(INSTALL_DATA) "$$tmpf" \ + "$(DESTDIR)$(qemu_datadir)/firmware/$$x"; \ + done endif for s in $(ICON_SIZES); do \ mkdir -p "$(DESTDIR)/$(qemu_icondir)/hicolor/$${s}/apps"; \ diff --git a/.gitignore b/.gitignore index 77522561b8ea..889896c023fd 100644 --- a/.gitignore +++ b/.gitignore @@ -96,6 +96,7 @@ *.gcno *.gcov /pc-bios/bios-pq/status +/pc-bios/edk2-*.fd /pc-bios/vgabios-pq/status /pc-bios/optionrom/linuxboot.asm /pc-bios/optionrom/linuxboot.bin --=20 2.19.1.3.g30247aa5d201 From nobody Wed Apr 24 20:27:10 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1552511520328543.7127738907053; Wed, 13 Mar 2019 14:12:00 -0700 (PDT) Received: from localhost ([127.0.0.1]:50895 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4BAC-000054-6w for importer@patchew.org; Wed, 13 Mar 2019 17:11:48 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51171) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h4B8G-00076a-Gb for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:09:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h4B1M-0007SH-EM for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:02:41 -0400 Received: from mx1.redhat.com ([209.132.183.28]:46745) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1h4B1M-0007RT-70 for qemu-devel@nongnu.org; Wed, 13 Mar 2019 17:02:40 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 52945315879C for ; Wed, 13 Mar 2019 21:02:39 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-120-225.rdu2.redhat.com [10.10.120.225]) by smtp.corp.redhat.com (Postfix) with ESMTP id E617F5F9D7; Wed, 13 Mar 2019 21:02:27 +0000 (UTC) From: Laszlo Ersek To: berrange@redhat.com, eblake@redhat.com, imammedo@redhat.com, kraxel@redhat.com, mprivozn@redhat.com, mst@redhat.com, philmd@redhat.com, qemu-devel@nongnu.org Date: Wed, 13 Mar 2019 22:00:57 +0100 Message-Id: <20190313210057.32584-13-lersek@redhat.com> In-Reply-To: <20190313210057.32584-1-lersek@redhat.com> References: <20190313210057.32584-1-lersek@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.41]); Wed, 13 Mar 2019 21:02:39 +0000 (UTC) Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v2 12/12] MAINTAINERS: add the "EDK2 Firmware" subsystem X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" We now have the edk2 submodule, somewhat elaborate build helpers for it, and even a UEFI application written against edk2 whose genuine home is the QEMU repository. Add the "EDK2 Firmware" subsystem such that all relevant pathnames be covered. Suggested-by: Daniel P. Berrang=C3=A9 Suggested-by: Michael S. Tsirkin Suggested-by: Philippe Mathieu-Daud=C3=A9 Signed-off-by: Laszlo Ersek Reviewed-by: Michael S. Tsirkin Reviewed-by: Michal Privoznik Reviewed-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Igor Mammedov Tested-by: Philippe Mathieu-Daud=C3=A9 --- Notes: v2: =20 - new patch [Dan, Michael, Phil] =20 - compared to the suggestions, upgrade the maintenance status ("S") from Maintained to Supported MAINTAINERS | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index d3267560799b..eefa225a234a 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -2207,6 +2207,18 @@ F: include/hw/i2c/smbus_master.h F: include/hw/i2c/smbus_slave.h F: include/hw/i2c/smbus_eeprom.h =20 +EDK2 Firmware +M: Laszlo Ersek +M: Philippe Mathieu-Daud=C3=A9 +S: Supported +F: pc-bios/descriptors/??-edk2-*.json +F: pc-bios/edk2-* +F: roms/Makefile.edk2 +F: roms/edk2 +F: roms/edk2-* +F: tests/data/uefi-boot-images/ +F: tests/uefi-test-tools/ + Usermode Emulation ------------------ Overall --=20 2.19.1.3.g30247aa5d201