[edk2-devel] [edk2-platforms][PATCH V2 22/47] Features/Intel/AdvancedFeaturePkg: Add package

Kubacki, Michael A via Groups.Io michael.a.kubacki=intel.com at groups.io
Thu Nov 28 01:05:49 UTC 2019


This change adds AdvancedFeaturePkg to the Features/Intel
directory. AdvancedFeaturePkg is a special package that is
located at the root level of Features/Intel.

All advanced features can be built 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.chaganty at intel.com>
Cc: Liming Gao <liming.gao at intel.com>
Signed-off-by: Michael Kubacki <michael.a.kubacki at intel.com>
---
 Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec       | 31 +++++++++++
 Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc       | 51 ++++++++++++++++++
 Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeatures.dsc | 56 ++++++++++++++++++++
 3 files changed, 138 insertions(+)

diff --git a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec
new file mode 100644
index 0000000000..797a1eeb98
--- /dev/null
+++ b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec
@@ -0,0 +1,31 @@
+## @file
+#  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
+# for the build infrastructure.
+#
+# Copyright (c) 2017 - 2019, Intel Corporation. All rights reserved.<BR>
+#
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+##
+[Defines]
+DEC_SPECIFICATION = 0x00010017
+PACKAGE_NAME      = AdvancedFeaturePkg
+PACKAGE_VERSION   = 0.1
+PACKAGE_GUID      = 086F1F68-76CD-4F40-A712-06939A0BDD12
+
+[Includes]
+Include
+
+[Guids]
+gAdvancedFeaturePkgTokenSpaceGuid         =  {0xa8514688, 0x6693, 0x4ab5, {0xaa, 0xc8, 0xcc, 0xa9, 0x8d, 0xde, 0x90, 0xe1}}
+
+[PcdsFeatureFlag]
diff --git a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
new file mode 100644
index 0000000000..50c0e81048
--- /dev/null
+++ b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
@@ -0,0 +1,51 @@
+## @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
+#
+##
+
+################################################################################
+#
+# Defines Section - statements that will be processed to create a Makefile.
+#
+################################################################################
+[Defines]
+  PLATFORM_NAME                       = AdvancedFeaturePkg
+  PLATFORM_GUID                       = 5E4C05BC-C5F0-4843-BAE1-3AAFE269DB8F
+  PLATFORM_VERSION                    = 0.1
+  DSC_SPECIFICATION                   = 0x00010005
+  OUTPUT_DIRECTORY                    = Build/AdvancedFeaturePkg
+  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 (#51407): https://edk2.groups.io/g/devel/message/51407
Mute This Topic: https://groups.io/mt/63458367/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