]> xenbits.xensource.com Git - people/aperard/ovmf.git/commitdiff
OvmfPkg: Fix unable to build OVMF with -D NETWORK_ENABLE=0
authorMike Beaton <mjsbeaton@gmail.com>
Sat, 24 Aug 2024 08:18:10 +0000 (09:18 +0100)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Thu, 12 Sep 2024 21:34:33 +0000 (21:34 +0000)
https://bugzilla.tianocore.org/show_bug.cgi?id=4829

7f17a15 (2024/02/22)
"OvmfPkg: Shell*.inc: allow building without network support"
breaks building OVMF with `-D NETWORK_ENABLE=0`.

Before this commit we could build OVMF e.g. with the following
command in the OvmfPkg directory:

./build.sh -D NETWORK_ENABLE=0

After the commit the same command fails early with:

/home/user/OpenSource/edk2/OvmfPkg/OvmfPkgX64.dsc(15):
error F001: Pcd (gEfiNetworkPkgTokenSpaceGuid.PcdAllowHttpConnections)
defined in DSC is not declared in DEC files referenced in INF files in
FDF. Arch: ['X64']

The problem applies in Intel OvmfPkg platforms.
Additionally, it applies in various other OvmfPkg
platforms, but is masked buy another issue; namely
that these platforms incorrectly still include some
network packages when most are disabled.
(A fix for that issue has previously been
made, in OvmfPkg Intel platforms only, by
d933ec1 followed by
7f17a15 .)

This commit conditionally removes the undefined Pcd references
in all OvmfPkg platforms which are now affected by this
issue, and in all those which would be affected as and
when the other issue mentioned above is fixed.

Signed-off-by: Mike Beaton <mjsbeaton@gmail.com>
OvmfPkg/CloudHv/CloudHvX64.dsc
OvmfPkg/LoongArchVirt/LoongArchVirtQemu.dsc
OvmfPkg/Microvm/MicrovmX64.dsc
OvmfPkg/OvmfPkgIa32.dsc
OvmfPkg/OvmfPkgIa32X64.dsc
OvmfPkg/OvmfPkgX64.dsc
OvmfPkg/RiscVVirt/RiscVVirtQemu.dsc

index 0ad495545c8f6cbc33c762cdbf7b5fd41a2c38aa..3dcefb189623e07c1d6b56e3e8fc84a3b3b02532 100644 (file)
 \r
 !include OvmfPkg/Include/Dsc/OvmfTpmPcds.dsc.inc\r
 \r
+!if $(NETWORK_ENABLE) == TRUE\r
   # IPv4 and IPv6 PXE Boot support.\r
   gEfiNetworkPkgTokenSpaceGuid.PcdIPv4PXESupport|0x01\r
   gEfiNetworkPkgTokenSpaceGuid.PcdIPv6PXESupport|0x01\r
+!endif\r
 \r
   # Set ConfidentialComputing defaults\r
   gEfiMdePkgTokenSpaceGuid.PcdConfidentialComputingGuestAttr|0\r
index 29c945b0ee34f7957466e6b4bd9ce9d8089b6e3c..9064058bc510470912f904a89a5ff19e80436bcc 100644 (file)
   #\r
   # IPv4 and IPv6 PXE Boot support.\r
   #\r
+!if $(NETWORK_ENABLE) == TRUE\r
   gEfiNetworkPkgTokenSpaceGuid.PcdIPv4PXESupport                       | 0x01\r
   gEfiNetworkPkgTokenSpaceGuid.PcdIPv6PXESupport                       | 0x01\r
+!endif\r
 \r
   #\r
   # SMBIOS entry point version\r
index 3b2312ddbcc7c89af89a36f3db67b07663c7a9e2..1196ba98c90ed5f1bcf38f543641c028a98241fa 100644 (file)
 \r
   gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x00\r
 \r
+!if $(NETWORK_ENABLE) == TRUE\r
   # IPv4 and IPv6 PXE Boot support.\r
   gEfiNetworkPkgTokenSpaceGuid.PcdIPv4PXESupport|0x01\r
   gEfiNetworkPkgTokenSpaceGuid.PcdIPv6PXESupport|0x01\r
+!endif\r
 \r
   # Set ConfidentialComputing defaults\r
   gEfiMdePkgTokenSpaceGuid.PcdConfidentialComputingGuestAttr|0\r
index 974ab6236211b2e6c3045b7b8d68be595afd18a7..3f68d4d63b72bdeb8aa84d31c9f9448667df7733 100644 (file)
 \r
 !include OvmfPkg/Include/Dsc/OvmfTpmPcds.dsc.inc\r
 \r
+!if $(NETWORK_ENABLE) == TRUE\r
   # IPv4 and IPv6 PXE Boot support.\r
   gEfiNetworkPkgTokenSpaceGuid.PcdIPv4PXESupport|0x01\r
   gEfiNetworkPkgTokenSpaceGuid.PcdIPv6PXESupport|0x01\r
+!endif\r
 \r
   # Set ConfidentialComputing defaults\r
   gEfiMdePkgTokenSpaceGuid.PcdConfidentialComputingGuestAttr|0\r
index c0e3210a8340ce27f4a1f3fd0d16ee75504abc6b..67730b0f90b86d52fee8f58728820068b58cf890 100644 (file)
   gEfiMdePkgTokenSpaceGuid.PcdFSBClock|1000000000\r
 \r
 [PcdsDynamicDefault.X64]\r
+!if $(NETWORK_ENABLE) == TRUE\r
   # IPv4 and IPv6 PXE Boot support.\r
   gEfiNetworkPkgTokenSpaceGuid.PcdIPv4PXESupport|0x01\r
   gEfiNetworkPkgTokenSpaceGuid.PcdIPv6PXESupport|0x01\r
+!endif\r
 \r
 [PcdsDynamicHii]\r
 !include OvmfPkg/Include/Dsc/OvmfTpmPcdsHii.dsc.inc\r
index efb0eedb04595c936b98037739651244f3da4544..f4ff2e321a097dfabbd3dd14411d880306e4358b 100644 (file)
 \r
 !include OvmfPkg/Include/Dsc/OvmfTpmPcds.dsc.inc\r
 \r
+!if $(NETWORK_ENABLE) == TRUE\r
   # IPv4 and IPv6 PXE Boot support.\r
   gEfiNetworkPkgTokenSpaceGuid.PcdIPv4PXESupport|0x01\r
   gEfiNetworkPkgTokenSpaceGuid.PcdIPv6PXESupport|0x01\r
+!endif\r
 \r
   # Set ConfidentialComputing defaults\r
   gEfiMdePkgTokenSpaceGuid.PcdConfidentialComputingGuestAttr|0\r
index e0ed6fb9bcd856b1b2a32c3b7330c0445cb13cf7..63d896587b4a410884d4b30ec070040ed4ad191d 100644 (file)
   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0\r
 \r
+!if $(NETWORK_ENABLE) == TRUE\r
   #\r
   # IPv4 and IPv6 PXE Boot support.\r
   #\r
   gEfiNetworkPkgTokenSpaceGuid.PcdIPv4PXESupport|0x01\r
   gEfiNetworkPkgTokenSpaceGuid.PcdIPv6PXESupport|0x01\r
+!endif\r
 \r
   #\r
   # TPM2 support\r