[edk2-devel] [PATCH] Remove temporary build workaround in Features/Intel/AdvancedFeaturePkg

Dong, Eric eric.dong at intel.com
Wed Apr 29 04:30:16 UTC 2020


Reviewed-by: Eric Dong <eric.dong at intel.com>

> -----Original Message-----
> From: devel at edk2.groups.io [mailto:devel at edk2.groups.io] On Behalf Of
> Heng Luo
> Sent: Friday, April 24, 2020 3:31 PM
> To: devel at edk2.groups.io
> Cc: Gao, Liming <liming.gao at intel.com>; Dong, Eric <eric.dong at intel.com>;
> Ni, Ray <ray.ni at intel.com>
> Subject: [edk2-devel] [PATCH] Remove temporary build workaround in
> Features/Intel/AdvancedFeaturePkg
> 
> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2688
> 
> Remove Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround,
> Add
> Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
> to support Feature PCDs.
> Use AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc instead of
> AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaro
> und.dsc
> 
> Cc: Liming Gao <liming.gao at intel.com>
> Cc: Eric Dong <eric.dong at intel.com>
> Cc: Ray Ni <ray.ni at intel.com>
> Signed-off-by: Heng Luo <heng.luo at intel.com>
> ---
>  Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
> |  2 +-
>  Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
> | 41 +++++++++++++++++++++++++++++++++++++++++
> 
> Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/Tempora
> ryBuildWorkaround.c   | 31 -------------------------------
> 
> Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/Tempora
> ryBuildWorkaround.dsc | 76 -----------------------------------------------------------
> -----------------
> 
> Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/Tempora
> ryBuildWorkaround.inf | 60 ------------------------------------------------------------
> 
> Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/OpenBoardPkg.d
> sc                     |  2 +-
>  Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc
> |  2 +-
>  Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc
> |  2 +-
>  Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc
> |  2 +-
>  Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/OpenBoardPkg.dsc
> |  2 +-
> 
> Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPk
> g.dsc                 |  2 +-
>  11 files changed, 48 insertions(+), 174 deletions(-)
> 
> diff --git a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
> b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
> index ea879680ba..e509ef3e1b 100644
> --- a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
> +++ b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
> @@ -30,7 +30,7 @@
>    PEI_ARCH                            = IA32   DXE_ARCH                            = X64 -!include
> AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaro
> und.dsc+!include AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
> ##########################################################
> ###################### #diff --git
> a/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
> b/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
> new file mode 100644
> index 0000000000..2eacec18a0
> --- /dev/null
> +++
> b/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
> @@ -0,0 +1,41 @@
> +## @file+#  DSC file for defining Pcd of advanced features.+#+#  This file is
> intended to be included into another package so advanced features+#  can
> be conditionally built by enabling the respective feature via its
> FeaturePCD.+#+# Copyright (c) 2020, Intel Corporation. All rights
> reserved.<BR>+#+# SPDX-License-Identifier: BSD-2-Clause-
> Patent+#+##++#+# The section references the package DEC files,+# it allow
> a FeaturePCD to be used in a conditional statement+#+[Packages]+
> MdePkg/MdePkg.dec+  AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dec+
> Usb3DebugFeaturePkg/Usb3DebugFeaturePkg.dec+
> NetworkFeaturePkg/NetworkFeaturePkg.dec+
> IpmiFeaturePkg/IpmiFeaturePkg.dec+  S3FeaturePkg/S3FeaturePkg.dec+
> SmbiosFeaturePkg/SmbiosFeaturePkg.dec+
> UserAuthFeaturePkg/UserAuthFeaturePkg.dec+
> LogoFeaturePkg/LogoFeaturePkg.dec++#+# The section below sets all PCDs
> to FALSE in this DSC file so the feature is not enabled by default.+# Board can
> set PCDs to TRUE in its DSC file to enable a subset of advanced
> features+#+[PcdsFeatureFlag]+
> gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable
> |FALSE+  gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable
> |FALSE+  gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable
> |FALSE+  gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable
> |FALSE+  gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable
> |FALSE+
> gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable
> |FALSE+
> gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnabl
> e    |FALSE+  gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable
> |FALSE+  gLogoFeaturePkgTokenSpaceGuid.PcdJpgEnable
> |FALSEdiff --git
> a/Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/Tempo
> raryBuildWorkaround.c
> b/Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/Tempo
> raryBuildWorkaround.c
> deleted file mode 100644
> index 2cd91b06f0..0000000000
> ---
> a/Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/Tempo
> raryBuildWorkaround.c
> +++ /dev/null
> @@ -1,31 +0,0 @@
> -/** @file-  Source code file for a temporary build workaround.--  The
> purpose of this workaround is described in the module INF file.--Copyright (c)
> 2019, Intel Corporation. All rights reserved.<BR>-SPDX-License-Identifier:
> BSD-2-Clause-Patent--**/--#include <Base.h>-#include <Library/BaseLib.h>-
> -/**-  An empty entry point function.--  @param  FileHandle  Handle of the
> file being invoked.-  @param  PeiServices Describes the list of possible PEI
> Services.--  @retval  EFI_SUCCESS  This function always returns
> EFI_SUCCESS.--**/-EFI_STATUS-EFIAPI-TemporaryBuildWorkaroundEntry (-
> IN       EFI_PEI_FILE_HANDLE  FileHandle,-  IN CONST EFI_PEI_SERVICES
> **PeiServices-  )-{-  return EFI_SUCCESS;-}diff --git
> a/Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/Tempo
> raryBuildWorkaround.dsc
> b/Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/Tempo
> raryBuildWorkaround.dsc
> deleted file mode 100644
> index c62f9ecc6e..0000000000
> ---
> a/Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/Tempo
> raryBuildWorkaround.dsc
> +++ /dev/null
> @@ -1,76 +0,0 @@
> -## @file-# Build description file for a temporary build workaround.-#-# The
> feature enable PCD for advanced features must be referenced in an INF-# to
> be referenced in DSC/FDF files. This DSC only exists in the build to-# allow the
> PCDs to be referenced. This workaround does not affect the final-# flash
> image or boot in any way.-#-# The request to update BaseTools to allow a
> PCD to be referenced in DSC/FDF-# files without requiring the PCD to be
> referenced in an INF file is tracked-# here:
> https://bugzilla.tianocore.org/show_bug.cgi?id=2270-#-# When the
> BaseTools update is complete, this file can entirely be removed-# from this
> package.-#-# Copyright (c) 2019 - 2020, Intel Corporation. All rights
> reserved.<BR>-#-# SPDX-License-Identifier: BSD-2-Clause-Patent-#-##--#-#
> BEGIN:Temporary Build Workaround (resolution:
> https://bugzilla.tianocore.org/show_bug.cgi?id=2270)-#--# THIS FILE IS
> TEMPORARY. PLEASE TRY TO LOOK PAST THE "HACKS" ASSOCIATED WITH IT.-
> #-# With the BaseTools change requested, the changes needed to move to
> the end state are simply:-#  1. Remove the !include for this file in
> AdvancedFeatures.dsc-#  2. Remove this directory--!if
> $(PLATFORM_NAME) != AdvancedFeaturePkg-#-# AdvancedFeaturePkg
> initializes all FeaturePCDs to TRUE so they can conveniently be built in one
> package.-# Board packages will normally only enable (and therefore
> reference) a small subset of advanced features-# relative to the board. If an
> INF does not reference a package DEC file (which will be the case if the-#
> feature is not enabled) then the DSC must set ("define") the PCD for the
> conditional statements based-# on the PCD to work.-#-#
> AdvancedFeaturePkg has no problem as it naturally has a need to set al PCDs
> to TRUE for build.-# The section below sets all PCDs to FALSE in the DSC file so
> if the feature is not enabled by a board,-# the build will still be successful.-#-
> [PcdsFeatureFlag]-
> gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable
> |FALSE-  gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable
> |FALSE-  gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable
> |FALSE-  gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable
> |FALSE-  gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable
> |FALSE-
> gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable
> |FALSE-
> gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnabl
> e    |FALSE-  gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable
> |FALSE-  gLogoFeaturePkgTokenSpaceGuid.PcdJpgEnable
> |FALSE-!endif--#-# The LibraryClasses required to build
> TemporaryBuildWorkaround.inf-# (mostly libraries requiring other libraries)-
> #-[LibraryClasses]-  BaseLib|MdePkg/Library/BaseLib/BaseLib.inf-
> BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibR
> epStr.inf-
> DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf-
> PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf-
> PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf-
> PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf-
> PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/P
> eiServicesTablePointerLibIdt.inf--#-# The driver that references all feature
> PCDs to satsify current build limitations-#-[Components]-
> AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaro
> und.inf-#-# END:Temporary Build Workaround (resolution:
> https://bugzilla.tianocore.org/show_bug.cgi?id=2270)-#diff --git
> a/Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/Tempo
> raryBuildWorkaround.inf
> b/Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/Tempo
> raryBuildWorkaround.inf
> deleted file mode 100644
> index 00818fbe0a..0000000000
> ---
> a/Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/Tempo
> raryBuildWorkaround.inf
> +++ /dev/null
> @@ -1,60 +0,0 @@
> -### @file-# Component information file for a temporary build workaround.-
> #-# The feature enable PCD for this package must be referenced in an INF to
> be-# referenced in DSC/FDF files. This driver is only included in the build to-#
> allow the PCD to be referenced. This driver is not included in the flash-#
> image and does not affect the boot in any way.-#-# The request to update
> BaseTools to allow a PCD to be referenced in DSC/FDF-# files without
> requiring the PCD to be referenced in an INF file is tracked-# here:
> https://bugzilla.tianocore.org/show_bug.cgi?id=2270-#-# When the
> BaseTools update is complete, this file can entirely be removed-# from this
> package.-#-# Copyright (c) 2019 - 2020, Intel Corporation. All rights
> reserved.<BR>-#-# SPDX-License-Identifier: BSD-2-Clause-Patent-#-###--
> [Defines]-  INF_VERSION       = 0x00010017-  BASE_NAME         =
> TemporaryBuildWorkaround-  FILE_GUID         = 8846A81E-F552-4917-81F5-
> 80B62E4EFBAC-  VERSION_STRING    = 1.0-  MODULE_TYPE       = PEIM-
> ENTRY_POINT       = TemporaryBuildWorkaroundEntry--[LibraryClasses]-
> BaseLib-  PeimEntryPoint--[Packages]-  MdePkg/MdePkg.dec-
> Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dec-
> Debugging/Usb3DebugFeaturePkg/Usb3DebugFeaturePkg.dec-
> Network/NetworkFeaturePkg/NetworkFeaturePkg.dec-
> OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dec-
> PowerManagement/S3FeaturePkg/S3FeaturePkg.dec-
> SystemInformation/SmbiosFeaturePkg/SmbiosFeaturePkg.dec-
> UserInterface/UserAuthFeaturePkg/UserAuthFeaturePkg.dec-
> UserInterface/LogoFeaturePkg/LogoFeaturePkg.dec--[FeaturePcd]-
> gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable-
> gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable-
> gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable-
> gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable-
> gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable-
> gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable-
> gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnabl
> e-  gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable-
> gLogoFeaturePkgTokenSpaceGuid.PcdJpgEnable--[Sources]-
> TemporaryBuildWorkaround.c--[Depex]- TRUEdiff --git
> a/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/OpenBoardPkg
> .dsc
> b/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/OpenBoardPkg
> .dsc
> index 14e82ba34d..8e04ca8a4f 100644
> ---
> a/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/OpenBoardPkg
> .dsc
> +++
> b/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/OpenBoardPkg
> .ds
> +++ c
> @@ -39,7 +39,7 @@
>    #   # Include PCD configuration for this board.   #-  !include
> AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaro
> und.dsc+  !include
> AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc   !include
> OpenBoardPkgPcd.dsc   !include
> AdvancedFeaturePkg/Include/AdvancedFeatures.dsc diff --git
> a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc
> b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc
> index bf63d53bef..7bb8cd5279 100644
> --- a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc
> +++
> b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc
> @@ -38,7 +38,7 @@
>    #   # Include PCD configuration for this board.   #-  !include
> AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaro
> und.dsc+  !include
> AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc   !include
> OpenBoardPkgPcd.dsc   !include
> AdvancedFeaturePkg/Include/AdvancedFeatures.dsc diff --git
> a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc
> b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc
> index 044688ba4e..ef82f8b716 100644
> ---
> a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc
> +++
> b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc
> @@ -37,7 +37,7 @@
>    #   # Include PCD configuration for this board.   #-  !include
> AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaro
> und.dsc+  !include
> AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc   !include
> OpenBoardPkgPcd.dsc   !include
> AdvancedFeaturePkg/Include/AdvancedFeatures.dsc diff --git
> a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc
> b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc
> index 350a75a313..3bafc1ff0a 100644
> ---
> a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc
> +++
> b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc
> @@ -42,7 +42,7 @@
>    DEFINE NETWORK_ISCSI_ENABLE           = FALSE   DEFINE
> NETWORK_ALLOW_HTTP_CONNECTIONS = TRUE -  !include
> AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaro
> und.dsc+  !include
> AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc   !include
> $(PROJECT)/OpenBoardPkgPcd.dsc   !include
> AdvancedFeaturePkg/Include/AdvancedFeatures.dsc diff --git
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/OpenBoardPkg.dsc
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/OpenBoardPkg.dsc
> index 2ab9cb03ea..07cf311210 100644
> ---
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/OpenBoardPkg.dsc
> +++
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/OpenBoardPkg.dsc
> @@ -39,7 +39,7 @@
>    #   # Include PCD configuration for this board.   #-  !include
> AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaro
> und.dsc+  !include
> AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc   !include
> OpenBoardPkgPcd.dsc   !include
> AdvancedFeaturePkg/Include/AdvancedFeatures.dsc diff --git
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard
> Pkg.dsc
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard
> Pkg.dsc
> index 1a9e608bd6..1dace5ee22 100644
> ---
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard
> Pkg.dsc
> +++
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard
> Pk
> +++ g.dsc
> @@ -39,7 +39,7 @@
>    #   # Include PCD configuration for this board.   #-  !include
> AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaro
> und.dsc+  !include
> AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc   !include
> OpenBoardPkgPcd.dsc   !include
> AdvancedFeaturePkg/Include/AdvancedFeatures.dsc --
> 2.24.0.windows.2
> 
> 
> -=-=-=-=-=-=
> Groups.io Links: You receive all messages sent to this group.
> 
> View/Reply Online (#58026): https://edk2.groups.io/g/devel/message/58026
> Mute This Topic: https://groups.io/mt/73236633/1768733
> Group Owner: devel+owner at edk2.groups.io
> Unsubscribe: https://edk2.groups.io/g/devel/unsub  [eric.dong at intel.com] -
> =-=-=-=-=-=


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#58294): https://edk2.groups.io/g/devel/message/58294
Mute This Topic: https://groups.io/mt/73236633/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-





More information about the edk2-devel-archive mailing list