]> git.proxmox.com Git - mirror_edk2.git/blob - StandaloneMmPkg/StandaloneMmPkg.dsc
RedfishPkg: Use DSC include file
[mirror_edk2.git] / StandaloneMmPkg / StandaloneMmPkg.dsc
1 ## @file
2 # Standalone MM Platform.
3 #
4 # Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>
5 # Copyright (c) 2016 - 2019, ARM Limited. All rights reserved.<BR>
6 #
7 # SPDX-License-Identifier: BSD-2-Clause-Patent
8 #
9 ##
10
11 ################################################################################
12 #
13 # Defines Section - statements that will be processed to create a Makefile.
14 #
15 ################################################################################
16 [Defines]
17 PLATFORM_NAME = StandaloneMm
18 PLATFORM_GUID = 9A4BBA60-B4F9-47C7-9258-3BD77CAE9322
19 PLATFORM_VERSION = 1.0
20 DSC_SPECIFICATION = 0x00010011
21 OUTPUT_DIRECTORY = Build/StandaloneMm
22 SUPPORTED_ARCHITECTURES = AARCH64
23 BUILD_TARGETS = DEBUG|RELEASE
24 SKUID_IDENTIFIER = DEFAULT
25
26 # LzmaF86
27 DEFINE COMPRESSION_TOOL_GUID = D42AE6BD-1352-4bfb-909A-CA72A6EAE889
28
29 ################################################################################
30 #
31 # Library Class section - list of all Library Classes needed by this Platform.
32 #
33 ################################################################################
34 [LibraryClasses]
35 #
36 # Basic
37 #
38 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
39 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
40 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
41 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
42 ExtractGuidedSectionLib|EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf
43 FvLib|StandaloneMmPkg/Library/FvLib/FvLib.inf
44 HobLib|StandaloneMmPkg/Library/StandaloneMmHobLib/StandaloneMmHobLib.inf
45 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
46 MemLib|StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib.inf
47 MemoryAllocationLib|StandaloneMmPkg/Library/StandaloneMmCoreMemoryAllocationLib/StandaloneMmCoreMemoryAllocationLib.inf
48 MmServicesTableLib|MdePkg/Library/StandaloneMmServicesTableLib/StandaloneMmServicesTableLib.inf
49 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
50 PeCoffExtraActionLib|StandaloneMmPkg/Library/StandaloneMmPeCoffExtraActionLib/StandaloneMmPeCoffExtraActionLib.inf
51 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
52 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
53 ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf
54 StandaloneMmCoreEntryPoint|StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/StandaloneMmCoreEntryPoint.inf
55 StandaloneMmDriverEntryPoint|MdePkg/Library/StandaloneMmDriverEntryPoint/StandaloneMmDriverEntryPoint.inf
56
57 [LibraryClasses.AARCH64]
58 ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf
59 StandaloneMmMmuLib|ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStandaloneMmLib.inf
60 ArmSvcLib|ArmPkg/Library/ArmSvcLib/ArmSvcLib.inf
61 CacheMaintenanceLib|ArmPkg/Library/ArmCacheMaintenanceLib/ArmCacheMaintenanceLib.inf
62
63 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
64 NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
65
66 [LibraryClasses.common.MM_CORE_STANDALONE]
67 HobLib|StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmCoreHobLib.inf
68
69 ################################################################################
70 #
71 # Pcd Section - list of all EDK II PCD Entries defined by this Platform
72 #
73 ################################################################################
74 [PcdsFixedAtBuild]
75 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x800000CF
76 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xff
77 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x0f
78
79 ###################################################################################################
80 #
81 # Components Section - list of the modules and components that will be processed by compilation
82 # tools and the EDK II tools to generate PE32/PE32+/Coff image files.
83 #
84 # Note: The EDK II DSC file is not used to specify how compiled binary images get placed
85 # into firmware volume images. This section is just a list of modules to compile from
86 # source into UEFI-compliant binaries.
87 # It is the FDF file that contains information on combining binary files into firmware
88 # volume images, whose concept is beyond UEFI and is described in PI specification.
89 # Binary modules do not need to be listed in this section, as they should be
90 # specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi),
91 # Logo (Logo.bmp), and etc.
92 # There may also be modules listed in this section that are not required in the FDF file,
93 # When a module listed here is excluded from FDF file, then UEFI-compliant binary will be
94 # generated for it, but the binary will not be put into any firmware volume.
95 #
96 ###################################################################################################
97 [Components.common]
98 #
99 # MM Core
100 #
101 StandaloneMmPkg/Core/StandaloneMmCore.inf
102
103 [Components.AARCH64]
104 StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.inf
105
106 ###################################################################################################
107 #
108 # BuildOptions Section - Define the module specific tool chain flags that should be used as
109 # the default flags for a module. These flags are appended to any
110 # standard flags that are defined by the build process. They can be
111 # applied for any modules or only those modules with the specific
112 # module style (EDK or EDKII) specified in [Components] section.
113 #
114 ###################################################################################################
115 [BuildOptions.AARCH64]
116 GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 -march=armv8-a+nofp -mstrict-align
117 GCC:*_*_*_CC_FLAGS = -mstrict-align