This change adds the ability to build all currently available
advanced features using the AdvancedFeaturePkg build. To build
all advanced features, follow the instructions in the
Feature/Intel/Readme.md file. The actual build is performed by
executing the following command in the Features/Intel directory:

"build -p AdvancedFeaturePkg/AdvancedFeaturePkg.dsc -a IA32 -a X64"

Cc: Sai Chaganty <rangasai.v.chaga...@intel.com>
Cc: Liming Gao <liming....@intel.com>
Signed-off-by: Michael Kubacki <michael.a.kuba...@intel.com>
---
 Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec       |  9 +++-
 Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc       | 28 ++++++++++
 Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeatures.dsc | 56 
++++++++++++++++++++
 3 files changed, 91 insertions(+), 2 deletions(-)

diff --git a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec 
b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec
index 7342539198..36c72b98e1 100644
--- a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec
+++ b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec
@@ -1,6 +1,11 @@
 ## @file
-# This package provides the modules that build for a full feature platform.
-# This AdvancedFeaturePkg should only depend on EDKII Core packages and 
MinPlatformPkg.
+#  Advanced Feature Package build declaration file.
+#
+# Advanced features allow a board package to be extended with advanced 
functionality.
+#
+# This package should not contain any specific advanced features. The package 
has two responsibilities:
+# 1. Present a consolidated and simplified view of all available advanced 
features to board packages.
+# 2. Provide a simple, single package build for all available advanced 
features.
 #
 # The DEC files are used by the utilities that parse DSC and
 # INF files to generate AutoGen.c and AutoGen.h files
diff --git a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc 
b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
index 38298e15e4..50c0e81048 100644
--- a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
+++ b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
@@ -1,6 +1,12 @@
 ## @file
 #  Advanced Feature Package build description file.
 #
+# Advanced features allow a board package to be extended with advanced 
functionality.
+#
+# This package should not contain any specific advanced features. The package 
has two responsibilities:
+# 1. Present a consolidated and simplified view of all available advanced 
features to board packages.
+# 2. Provide a simple, single package build for all available advanced 
features.
+#
 # Copyright (c) 2017 - 2019, Intel Corporation. All rights reserved.<BR>
 #
 # SPDX-License-Identifier: BSD-2-Clause-Patent
@@ -21,3 +27,25 @@
   SUPPORTED_ARCHITECTURES             = IA32|X64
   BUILD_TARGETS                       = DEBUG|RELEASE
   SKUID_IDENTIFIER                    = DEFAULT
+  PEI_ARCH                            = IA32
+  DXE_ARCH                            = X64
+
+################################################################################
+#
+# Advanced Feature Enable section - all advanced features are enabling for the
+#                                   AdvancedFeaturePkg build.
+#
+################################################################################
+[PcdsFeatureFlag]
+  gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable            |TRUE
+  gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable                      |TRUE
+  gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable                |TRUE
+  gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable                          |TRUE
+  gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable                  |TRUE
+  gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable            |TRUE
+  gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnable    |TRUE
+
+#
+# This package builds all advanced features.
+#
+!include Include/AdvancedFeatures.dsc
diff --git a/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeatures.dsc 
b/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeatures.dsc
new file mode 100644
index 0000000000..649774edf7
--- /dev/null
+++ b/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeatures.dsc
@@ -0,0 +1,56 @@
+## @file
+#  DSC file for 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) 2019, Intel Corporation. All rights reserved.<BR>
+#
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+##
+
+#
+# Debug Advanced Features
+#
+!if gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable == TRUE
+  !include Debugging/AcpiDebugFeaturePkg/Include/AcpiDebugFeature.dsc
+!endif
+!if gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable == TRUE
+  !include Debugging/Usb3DebugFeaturePkg/Include/Usb3DebugFeature.dsc
+!endif
+
+#
+# Network Advanced Features
+#
+!if gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable == TRUE
+  !include Network/NetworkFeaturePkg/Include/NetworkFeature.dsc
+!endif
+
+#
+# Out-of-Band Management Advanced Features
+#
+!if gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable == TRUE
+  !include OutOfBandManagement/IpmiFeaturePkg/Include/IpmiFeature.dsc
+!endif
+
+#
+# Power Management Advanced Features
+#
+!if gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable == TRUE
+  !include PowerManagement/S3FeaturePkg/Include/S3Feature.dsc
+!endif
+
+#
+# System Information Advanced Features
+#
+!if gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable == TRUE
+  !include SystemInformation/SmbiosFeaturePkg/Include/SmbiosFeature.dsc
+!endif
+
+#
+# User Interface Advanced Features
+#
+!if gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnable == 
TRUE
+  !include UserInterface/UserAuthFeaturePkg/Include/UserAuthFeature.dsc
+!endif
-- 
2.16.2.windows.1


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

View/Reply Online (#50537): https://edk2.groups.io/g/devel/message/50537
Mute This Topic: https://groups.io/mt/55161801/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to