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