1## @file 2# Shell Package 3# 4# Copyright (c) 2007 - 2019, 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[LibraryClasses.common] 23 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf 24 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf 25 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf 26 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLibOptionalDevicePathProtocol.inf 27!if $(TARGET) == RELEASE 28 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf 29!else 30 DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf 31!endif 32 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf 33 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf 34 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf 35 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf 36 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf 37 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf 38 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf 39 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf 40 SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf 41 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf 42 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf 43 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf 44 !include NetworkPkg/NetworkLibs.dsc.inc 45 46 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf 47 ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf 48 ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf 49 HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf 50 51 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf 52 BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf 53 AcpiViewCommandLib|ShellPkg/Library/UefiShellAcpiViewCommandLib/UefiShellAcpiViewCommandLib.inf 54 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf 55 56 UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf 57 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf 58 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf 59 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf 60 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf 61 ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf 62 63[LibraryClasses.ARM,LibraryClasses.AARCH64] 64 # 65 # It is not possible to prevent the ARM compiler for generic intrinsic functions. 66 # This library provides the instrinsic functions generate by a given compiler. 67 # [LibraryClasses.ARM] and NULL mean link this library into all ARM images. 68 # 69 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf 70 71 # Add support for GCC stack protector 72 NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf 73 74[PcdsFixedAtBuild] 75 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF 76 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|16000 77!ifdef $(NO_SHELL_PROFILES) 78 gEfiShellPkgTokenSpaceGuid.PcdShellProfileMask|0x00 79!endif #$(NO_SHELL_PROFILES) 80 81[Components] 82 # 83 # Build all the libraries when building this package. 84 # This helps developers test changes and how they affect the package. 85 # 86 ShellPkg/Library/UefiShellLib/UefiShellLib.inf 87 ShellPkg/Library/UefiShellAcpiViewCommandLib/UefiShellAcpiViewCommandLib.inf 88 ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf 89 ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf 90 ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf 91 ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf 92 ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf 93 ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf 94 ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf 95 ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf 96 ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf 97 ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf 98 ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf 99 ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf 100 101 ShellPkg/Application/Shell/Shell.inf { 102 <PcdsFixedAtBuild> 103 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE 104 <LibraryClasses> 105 NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf 106 NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf 107 NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf 108!ifndef $(NO_SHELL_PROFILES) 109 NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf 110 NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf 111 NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf 112 NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf 113 NULL|ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf 114!endif #$(NO_SHELL_PROFILES) 115 } 116 117 # 118 # Build a second version of the shell with all commands integrated 119 # 120 ShellPkg/Application/Shell/Shell.inf { 121 <Defines> 122 FILE_GUID = EA4BB293-2D7F-4456-A681-1F22F42CD0BC 123 <PcdsFixedAtBuild> 124 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE 125 <LibraryClasses> 126 NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf 127 NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf 128 NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf 129 NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf 130 NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf 131 NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf 132 NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf 133 NULL|ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf 134 NULL|ShellPkg/Library/UefiShellAcpiViewCommandLib/UefiShellAcpiViewCommandLib.inf 135 } 136 137 ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf { 138 <PcdsFixedAtBuild> 139 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE 140 } 141 ShellPkg/DynamicCommand/TftpDynamicCommand/TftpApp.inf 142 ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf { 143 <PcdsFixedAtBuild> 144 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE 145 } 146 ShellPkg/DynamicCommand/DpDynamicCommand/DpApp.inf 147 ShellPkg/Application/AcpiViewApp/AcpiViewApp.inf 148 149[BuildOptions] 150 *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES 151