]> git.proxmox.com Git - mirror_edk2.git/blob - ShellPkg/ShellPkg.dsc
38fde3dc71dd33601b922a53ff7b57a23aa31338
[mirror_edk2.git] / ShellPkg / ShellPkg.dsc
1 ## @file
2 # Shell Package
3 #
4 # Copyright (c) 2007 - 2021, Intel Corporation. All rights reserved.<BR>
5 # Copyright (c) 2018 - 2020, Arm Limited. All rights reserved.<BR>
6 # Copyright (c) 2020, Hewlett Packard Enterprise Development LP. All rights reserved.<BR>
7 #
8 # SPDX-License-Identifier: BSD-2-Clause-Patent
9 #
10 ##
11
12 [Defines]
13 PLATFORM_NAME = Shell
14 PLATFORM_GUID = E1DC9BF8-7013-4c99-9437-795DAA45F3BD
15 PLATFORM_VERSION = 1.02
16 DSC_SPECIFICATION = 0x00010006
17 OUTPUT_DIRECTORY = Build/Shell
18 SUPPORTED_ARCHITECTURES = IA32|X64|EBC|ARM|AARCH64|RISCV64
19 BUILD_TARGETS = DEBUG|RELEASE|NOOPT
20 SKUID_IDENTIFIER = DEFAULT
21
22 !include MdePkg/MdeLibs.dsc.inc
23
24 [LibraryClasses.common]
25 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
26 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
27 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
28 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLibOptionalDevicePathProtocol.inf
29 !if $(TARGET) == RELEASE
30 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
31 !else
32 DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf
33 !endif
34 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
35 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
36 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
37 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
38 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
39 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
40 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
41 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
42 SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
43 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
44 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
45 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
46 VariablePolicyHelperLib|MdeModulePkg/Library/VariablePolicyHelperLib/VariablePolicyHelperLib.inf
47 !include NetworkPkg/NetworkLibs.dsc.inc
48
49 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
50 ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
51 ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
52 HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
53 OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf
54
55 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
56 BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
57 AcpiViewCommandLib|ShellPkg/Library/UefiShellAcpiViewCommandLib/UefiShellAcpiViewCommandLib.inf
58 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
59
60 UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf
61 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
62 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
63 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
64 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
65 ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf
66
67 [LibraryClasses.ARM,LibraryClasses.AARCH64]
68 #
69 # It is not possible to prevent the ARM compiler for generic intrinsic functions.
70 # This library provides the instrinsic functions generate by a given compiler.
71 # [LibraryClasses.ARM] and NULL mean link this library into all ARM images.
72 #
73 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
74
75 # Add support for GCC stack protector
76 NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
77
78 [PcdsFixedAtBuild]
79 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
80 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|16000
81 !ifdef $(NO_SHELL_PROFILES)
82 gEfiShellPkgTokenSpaceGuid.PcdShellProfileMask|0x00
83 !endif #$(NO_SHELL_PROFILES)
84
85 [Components]
86 #
87 # Build all the libraries when building this package.
88 # This helps developers test changes and how they affect the package.
89 #
90 ShellPkg/Library/UefiShellLib/UefiShellLib.inf
91 ShellPkg/Library/UefiShellAcpiViewCommandLib/UefiShellAcpiViewCommandLib.inf
92 ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
93 ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
94 ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
95 ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
96 ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
97 ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
98 ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
99 ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
100 ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
101 ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
102 ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
103 ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf
104
105 ShellPkg/Application/Shell/Shell.inf {
106 <PcdsFixedAtBuild>
107 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
108 <LibraryClasses>
109 NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
110 NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
111 NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
112 !ifndef $(NO_SHELL_PROFILES)
113 NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
114 NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
115 NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
116 NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
117 NULL|ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf
118 !endif #$(NO_SHELL_PROFILES)
119 }
120
121 #
122 # Build a second version of the shell with all commands integrated
123 #
124 ShellPkg/Application/Shell/Shell.inf {
125 <Defines>
126 FILE_GUID = EA4BB293-2D7F-4456-A681-1F22F42CD0BC
127 <PcdsFixedAtBuild>
128 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
129 <LibraryClasses>
130 NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
131 NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
132 NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
133 NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
134 NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
135 NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
136 NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
137 NULL|ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf
138 NULL|ShellPkg/Library/UefiShellAcpiViewCommandLib/UefiShellAcpiViewCommandLib.inf
139 }
140
141 ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf {
142 <PcdsFixedAtBuild>
143 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
144 }
145 ShellPkg/DynamicCommand/TftpDynamicCommand/TftpApp.inf
146 ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf {
147 <PcdsFixedAtBuild>
148 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
149 }
150 ShellPkg/DynamicCommand/HttpDynamicCommand/HttpApp.inf
151 ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf {
152 <PcdsFixedAtBuild>
153 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
154 }
155 ShellPkg/DynamicCommand/DpDynamicCommand/DpApp.inf
156 ShellPkg/Application/AcpiViewApp/AcpiViewApp.inf
157
158 [BuildOptions]
159 *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES