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