[edk2-devel][edk2-platforms][PATCH V1 16/27] LogoFeaturePkg: Use MinPlatformPkg build include files

Oram, Isaac W posted 27 patches 4 years ago
There is a newer version of this series
[edk2-devel][edk2-platforms][PATCH V1 16/27] LogoFeaturePkg: Use MinPlatformPkg build include files
Posted by Oram, Isaac W 4 years ago
Use the MinPlatformPkg common core build files to build libraries
needed by this feature.

Cc: Dandan Bi <dandan.bi@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>

Signed-off-by: Isaac Oram <isaac.w.oram@intel.com>
---
 Features/Intel/UserInterface/LogoFeaturePkg/Include/LogoFeature.dsc | 69 ++++----------------
 Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dec      |  2 -
 Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dsc      | 38 ++++++++---
 3 files changed, 41 insertions(+), 68 deletions(-)

diff --git a/Features/Intel/UserInterface/LogoFeaturePkg/Include/LogoFeature.dsc b/Features/Intel/UserInterface/LogoFeaturePkg/Include/LogoFeature.dsc
index 1898be12ed..0acce1c7df 100644
--- a/Features/Intel/UserInterface/LogoFeaturePkg/Include/LogoFeature.dsc
+++ b/Features/Intel/UserInterface/LogoFeaturePkg/Include/LogoFeature.dsc
@@ -18,36 +18,12 @@
 #
 ################################################################################
 [Defines]
-!ifndef $(PEI_ARCH)
-  !error "PEI_ARCH must be specified to build this feature!"
-!endif
-!ifndef $(DXE_ARCH)
-  !error "DXE_ARCH must be specified to build this feature!"
-!endif
-
-################################################################################
-#
-# Library Class section - list of all Library Classes needed by this feature.
-#
-################################################################################
-
-!include MdePkg/MdeLibs.dsc.inc
-
-[LibraryClasses]
-  #######################################
-  # Edk2 Packages
-  #######################################
-  BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
-  BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
-  DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
-  UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
-  UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
-
-[LibraryClasses.common.DXE_DRIVER]
-  #######################################
-  # Edk2 Packages
-  #######################################
-  PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
+  !ifndef $(PEI_ARCH)
+    !error "PEI_ARCH must be specified to build this feature!"
+  !endif
+  !ifndef $(DXE_ARCH)
+    !error "DXE_ARCH must be specified to build this feature!"
+  !endif
 
 ################################################################################
 #
@@ -71,31 +47,8 @@
 # @todo: Change below line to [Components.$(DXE_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308
 #        is completed.
 [Components.X64]
-  #####################################
-  # Logo Feature Package
-  #####################################
-
-  # Add library instances here that are not included in package components and should be tested
-  # in the package build.
-
-  # Add components here that should be included in the package build.
-!if gLogoFeaturePkgTokenSpaceGuid.PcdJpgEnable == TRUE
-  LogoFeaturePkg/LogoDxe/JpegLogoDxe.inf
-!else
-  LogoFeaturePkg/LogoDxe/LogoDxe.inf
-!endif
-
-###################################################################################################
-#
-# BuildOptions Section - Define the module specific tool chain flags that should be used as
-#                        the default flags for a module. These flags are appended to any
-#                        standard flags that are defined by the build process. They can be
-#                        applied for any modules or only those modules with the specific
-#                        module style (EDK or EDKII) specified in [Components] section.
-#
-#                        For advanced features, it is recommended to enable [BuildOptions] in
-#                        the applicable INF file so it does not affect the whole board package
-#                        build when this DSC file is active.
-#
-###################################################################################################
-[BuildOptions]
+  !if gLogoFeaturePkgTokenSpaceGuid.PcdJpgEnable == TRUE
+    LogoFeaturePkg/LogoDxe/JpegLogoDxe.inf
+  !else
+    LogoFeaturePkg/LogoDxe/LogoDxe.inf
+  !endif
diff --git a/Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dec b/Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dec
index 1418eb2137..4fa7dfea0f 100644
--- a/Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dec
+++ b/Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dec
@@ -21,8 +21,6 @@
 [Includes]
   Include
 
-[LibraryClasses]
-
 [Guids]
   gLogoFeaturePkgTokenSpaceGuid  =  {0x567199de, 0xb448, 0x4aa0, {0x99, 0x4e, 0xd5, 0xd6, 0x82, 0x59, 0x91, 0x17}}
 
diff --git a/Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dsc b/Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dsc
index fca413b46b..5a6436178c 100644
--- a/Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dsc
+++ b/Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dsc
@@ -21,17 +21,39 @@
   SUPPORTED_ARCHITECTURES        = IA32|X64
   BUILD_TARGETS                  = DEBUG|RELEASE|NOOPT
   SKUID_IDENTIFIER               = DEFAULT
+  PEI_ARCH                       = IA32
+  DXE_ARCH                       = X64
 
-[LibraryClasses]
-  BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
-  BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
-  DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
-  UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
-  UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
+[Packages]
+  MinPlatformPkg/MinPlatformPkg.dec
+  LogoFeaturePkg/LogoFeaturePkg.dec
 
-[LibraryClasses.common.DXE_DRIVER]
-  PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
+[PcdsFeatureFlag]
+  gLogoFeaturePkgTokenSpaceGuid.PcdJpgEnable                              |FALSE
 
+  #
+  # PCD needed for MinPlatform build includes
+  #
+  gMinPlatformPkgTokenSpaceGuid.PcdSmiHandlerProfileEnable                |FALSE
+  gMinPlatformPkgTokenSpaceGuid.PcdUefiSecureBootEnable                   |FALSE
+  gMinPlatformPkgTokenSpaceGuid.PcdPerformanceEnable                      |FALSE
+
+#
+# Include common libraries
+#
+!include MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc
+!include MinPlatformPkg/Include/Dsc/CorePeiLib.dsc
+!include MinPlatformPkg/Include/Dsc/CoreDxeLib.dsc
+
+#
+# This package always builds the feature.
+#
+!include Include/LogoFeature.dsc
+
+#
+# Since the feature include only builds the x64 BMP version, allow building
+# all drivers in this package in 32b or 64b modes
+#
 [Components]
   LogoFeaturePkg/LogoDxe/JpegLogoDxe.inf
   LogoFeaturePkg/LogoDxe/LogoDxe.inf
-- 
2.27.0.windows.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#85601): https://edk2.groups.io/g/devel/message/85601
Mute This Topic: https://groups.io/mt/88365345/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel][edk2-platforms][PATCH V1 16/27] LogoFeaturePkg: Use MinPlatformPkg build include files
Posted by Nate DeSimone 4 years ago
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>

> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Oram,
> Isaac W
> Sent: Tuesday, January 11, 2022 6:20 PM
> To: devel@edk2.groups.io
> Cc: Oram, Isaac W <isaac.w.oram@intel.com>; Bi, Dandan
> <dandan.bi@intel.com>; Gao, Liming <gaoliming@byosoft.com.cn>
> Subject: [edk2-devel][edk2-platforms][PATCH V1 16/27] LogoFeaturePkg:
> Use MinPlatformPkg build include files
> 
> Use the MinPlatformPkg common core build files to build libraries needed by
> this feature.
> 
> Cc: Dandan Bi <dandan.bi@intel.com>
> Cc: Liming Gao <gaoliming@byosoft.com.cn>
> 
> Signed-off-by: Isaac Oram <isaac.w.oram@intel.com>
> ---
>  Features/Intel/UserInterface/LogoFeaturePkg/Include/LogoFeature.dsc |
> 69 ++++----------------
>  Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dec      |  2 -
>  Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dsc      | 38
> ++++++++---
>  3 files changed, 41 insertions(+), 68 deletions(-)
> 
> diff --git
> a/Features/Intel/UserInterface/LogoFeaturePkg/Include/LogoFeature.dsc
> b/Features/Intel/UserInterface/LogoFeaturePkg/Include/LogoFeature.dsc
> index 1898be12ed..0acce1c7df 100644
> ---
> a/Features/Intel/UserInterface/LogoFeaturePkg/Include/LogoFeature.dsc
> +++
> b/Features/Intel/UserInterface/LogoFeaturePkg/Include/LogoFeature.ds
> +++ c
> @@ -18,36 +18,12 @@
>  #
> 
> ##########################################################
> ######################
>  [Defines]
> -!ifndef $(PEI_ARCH)
> -  !error "PEI_ARCH must be specified to build this feature!"
> -!endif
> -!ifndef $(DXE_ARCH)
> -  !error "DXE_ARCH must be specified to build this feature!"
> -!endif
> -
> -
> ##########################################################
> ######################
> -#
> -# Library Class section - list of all Library Classes needed by this feature.
> -#
> -
> ##########################################################
> ######################
> -
> -!include MdePkg/MdeLibs.dsc.inc
> -
> -[LibraryClasses]
> -  #######################################
> -  # Edk2 Packages
> -  #######################################
> -  BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
> -
> BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibR
> epStr.inf
> -  DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
> -
> UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBo
> otServicesTableLib.inf
> -
> UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntry
> Point.inf
> -
> -[LibraryClasses.common.DXE_DRIVER]
> -  #######################################
> -  # Edk2 Packages
> -  #######################################
> -  PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
> +  !ifndef $(PEI_ARCH)
> +    !error "PEI_ARCH must be specified to build this feature!"
> +  !endif
> +  !ifndef $(DXE_ARCH)
> +    !error "DXE_ARCH must be specified to build this feature!"
> +  !endif
> 
> 
> ##########################################################
> ######################
>  #
> @@ -71,31 +47,8 @@
>  # @todo: Change below line to [Components.$(DXE_ARCH)] after
> https://bugzilla.tianocore.org/show_bug.cgi?id=2308
>  #        is completed.
>  [Components.X64]
> -  #####################################
> -  # Logo Feature Package
> -  #####################################
> -
> -  # Add library instances here that are not included in package components
> and should be tested
> -  # in the package build.
> -
> -  # Add components here that should be included in the package build.
> -!if gLogoFeaturePkgTokenSpaceGuid.PcdJpgEnable == TRUE
> -  LogoFeaturePkg/LogoDxe/JpegLogoDxe.inf
> -!else
> -  LogoFeaturePkg/LogoDxe/LogoDxe.inf
> -!endif
> -
> -
> ##########################################################
> #########################################
> -#
> -# BuildOptions Section - Define the module specific tool chain flags that
> should be used as
> -#                        the default flags for a module. These flags are appended to any
> -#                        standard flags that are defined by the build process. They can
> be
> -#                        applied for any modules or only those modules with the
> specific
> -#                        module style (EDK or EDKII) specified in [Components] section.
> -#
> -#                        For advanced features, it is recommended to enable
> [BuildOptions] in
> -#                        the applicable INF file so it does not affect the whole board
> package
> -#                        build when this DSC file is active.
> -#
> -
> ##########################################################
> #########################################
> -[BuildOptions]
> +  !if gLogoFeaturePkgTokenSpaceGuid.PcdJpgEnable == TRUE
> +    LogoFeaturePkg/LogoDxe/JpegLogoDxe.inf
> +  !else
> +    LogoFeaturePkg/LogoDxe/LogoDxe.inf
> +  !endif
> diff --git
> a/Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dec
> b/Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dec
> index 1418eb2137..4fa7dfea0f 100644
> --- a/Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dec
> +++ b/Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dec
> @@ -21,8 +21,6 @@
>  [Includes]
>    Include
> 
> -[LibraryClasses]
> -
>  [Guids]
>    gLogoFeaturePkgTokenSpaceGuid  =  {0x567199de, 0xb448, 0x4aa0, {0x99,
> 0x4e, 0xd5, 0xd6, 0x82, 0x59, 0x91, 0x17}}
> 
> diff --git
> a/Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dsc
> b/Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dsc
> index fca413b46b..5a6436178c 100644
> --- a/Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dsc
> +++ b/Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dsc
> @@ -21,17 +21,39 @@
>    SUPPORTED_ARCHITECTURES        = IA32|X64
>    BUILD_TARGETS                  = DEBUG|RELEASE|NOOPT
>    SKUID_IDENTIFIER               = DEFAULT
> +  PEI_ARCH                       = IA32
> +  DXE_ARCH                       = X64
> 
> -[LibraryClasses]
> -  BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
> -
> BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibR
> epStr.inf
> -  DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
> -
> UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBo
> otServicesTableLib.inf
> -
> UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntry
> Point.inf
> +[Packages]
> +  MinPlatformPkg/MinPlatformPkg.dec
> +  LogoFeaturePkg/LogoFeaturePkg.dec
> 
> -[LibraryClasses.common.DXE_DRIVER]
> -  PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
> +[PcdsFeatureFlag]
> +  gLogoFeaturePkgTokenSpaceGuid.PcdJpgEnable                              |FALSE
> 
> +  #
> +  # PCD needed for MinPlatform build includes  #
> +  gMinPlatformPkgTokenSpaceGuid.PcdSmiHandlerProfileEnable
> |FALSE
> +  gMinPlatformPkgTokenSpaceGuid.PcdUefiSecureBootEnable
> |FALSE
> +  gMinPlatformPkgTokenSpaceGuid.PcdPerformanceEnable
> |FALSE
> +
> +#
> +# Include common libraries
> +#
> +!include MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc
> +!include MinPlatformPkg/Include/Dsc/CorePeiLib.dsc
> +!include MinPlatformPkg/Include/Dsc/CoreDxeLib.dsc
> +
> +#
> +# This package always builds the feature.
> +#
> +!include Include/LogoFeature.dsc
> +
> +#
> +# Since the feature include only builds the x64 BMP version, allow
> +building # all drivers in this package in 32b or 64b modes #
>  [Components]
>    LogoFeaturePkg/LogoDxe/JpegLogoDxe.inf
>    LogoFeaturePkg/LogoDxe/LogoDxe.inf
> --
> 2.27.0.windows.1
> 
> 
> 
> 
> 



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#85640): https://edk2.groups.io/g/devel/message/85640
Mute This Topic: https://groups.io/mt/88365345/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-