13.4 Platform Summary

Platform summary displays at the beginning of the output report, including the following items:

  • Platform Name : %Platform UI name: 'PLATFORM_NAME' in DSC [Defines] section%
  • Platform DSC Path: %Path of platform DSC file%
  • Architectures : %List string of all architectures used in build%
  • Tool Chain : %Tool chain string%
  • Target : %Target String%
  • SKUID: %Platform SKUID String%
  • DefaultStore: %Platform DefaultStore String%
  • Output Path : %Path to platform build directory%
  • Build Environment : %Environment string reported by Python%
  • Build Duration : %Build duration time string%
  • AutoGen Duration : %AutoGen duration time string if it exists%
  • Make Duration : %Make duration time string if it exists%
  • GenFds Duration : %GenFds duration time string if it exists%
  • Report Content : %List of flags the control the report content%

Example

Platform Name:      NT32
Platform DSC Path:  s:\edk2\Nt32Pkg\Nt32Pkg.dsc
Architectures:      IA32
Tool Chain:         VS2008x86
Target:             DEBUG
SKUID:              DEFAULT
DefaultStore:       STANDARD
Output Path:        s:\edk2\Build\NT32IA32
Build Environment:  Windows-7-6.1.7601-SP1
Build Duration:     00:01:29
AutoGen Duration:   00:00:10
Make Duration:      00:01:02
GenFds Duration:    00:00:15
Report Contents:    PCD, LIBRARY, BUILD_FLAGS, DEPEX, FLASH, FIXED_ADDRESS

Note: Platform Summary is always present and appears at the beginning of report.


13.4.1 PCDs in Conditional Directives

If a PCD is used in a conditional directive statement in DSC or FDF file, this PCD section is generated. This is optional section.

PCD values derived from expressions or other PCDs are not differentiated in the report. Only the final value is displayed.

The first line is required:

[*P|*F|*B] <PcdCName>: <PcdType> (<DatumType>) = <PcdValue>

  • *P means the Pcd's value was obtained from the DSC file
  • *F means the PCD's value was obtained from the FDF file.
  • *B means the PCD's value set by a build option.
  • If no *P, *F or *B is shown, the PCD's value comes from DEC file. If the value obtained from either a build option, the DSC or FDF is the same as the value in the DEC, then *B, *P or *F will not be shown in the report.

Note: If the Pcd is a Structure PCD, <DatumType> is the Struct Name.

Additional lines may be displayed showing default values when the value is not a default value.

Example

>==========================================================================<
Conditional Directives used by the build system
============================================================================
PCD statements
>--------------------------------------------------------------------------<
gMyTokenSpaceGuid
*P SmmEnable                   : FEATURE (BOOLEAN) = 0x0
                                         DEC DEFAULT = 0x1
*B LogEnable                   : FIXED   (UNIT32) = 0x1
                                         DEC DEFAULT = 0x0
<-------------------------------------------------------------------------->
>==========================================================================<

13.4.2 PCDs not used

If a PCD defined in DSC or FDF file, but the PCD is not used in a conditional directive statement and not used by any module, the not used PCD section is generated. This is optional section.

PCD values derived from expressions or other PCDs are not differentiated in the report. Only the final value is displayed.

The first line is required:

[*P|*F|*B] <PcdCName>: <PcdType> (<DatumType>) [(<SKUID>)][(<DefaultStore>)] = <PcdValue>

  • *P means the Pcd's value was obtained from the DSC file
  • *F means the PCD's value was obtained from the FDF file.
  • *B means the PCD's value set by a build option.
  • If no *P, *F or *B is shown, the PCD's value comes from DEC file. If the value obtained from either a build option, the DSC or FDF is the same as the value in the DEC, then *B, *P or *F will not be shown in the report.

Note: If the Pcd is a Structure PCD, <DatumType> is the Struct Name.

Additional lines may be displayed showing default values when the value is not a default value.

Since the PCDs in this section are not used by any module, the PCD value is not evaluated to determine if it is a valid value or in a value in a valid range. Instead, the PCD value from the DSC file, FDF file, or build option are displayed exactly as they were entered.

Example

>==========================================================================<
PCDs not used by modules or in conditional directives
============================================================================
PCD statements
>--------------------------------------------------------------------------<
gMyTokenSpaceGuid
*P SmmEnable                   : FEATURE (BOOLEAN) = 0x0
                                         DEC DEFAULT = 0x1
*B UsbEnable                   : FIXED   (UNIT32) = 0x1
                                         DEC DEFAULT = 0x0
<-------------------------------------------------------------------------->
>==========================================================================<