1##  @file
2# Shell Package
3#
4# Copyright (c) 2007 - 2015, Intel Corporation. All rights reserved.<BR>
5#
6#    This program and the accompanying materials
7#    are licensed and made available under the terms and conditions of the BSD License
8#    which accompanies this distribution. The full text of the license may be found at
9#    http://opensource.org/licenses/bsd-license.php
10#
11#    THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12#    WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13#
14##
15
16[Defines]
17  PLATFORM_NAME                  = Shell
18  PLATFORM_GUID                  = E1DC9BF8-7013-4c99-9437-795DAA45F3BD
19  PLATFORM_VERSION               = 1.0
20  DSC_SPECIFICATION              = 0x00010006
21  OUTPUT_DIRECTORY               = Build/Shell
22  SUPPORTED_ARCHITECTURES        = IA32|IPF|X64|EBC|ARM|AARCH64
23  BUILD_TARGETS                  = DEBUG|RELEASE
24  SKUID_IDENTIFIER               = DEFAULT
25
26[LibraryClasses.common]
27  UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
28  UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
29  DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLibOptionalDevicePathProtocol.inf
30  DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf
31  DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
32  PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
33  MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
34  UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
35  BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
36  BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
37  PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
38  FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
39  SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
40  UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
41  UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
42  HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
43  NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
44
45  ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
46  ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
47  ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
48  HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
49
50  PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
51  BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
52  IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
53
54[LibraryClasses.ARM]
55  #
56  # It is not possible to prevent the ARM compiler for generic intrinsic functions.
57  # This library provides the instrinsic functions generate by a given compiler.
58  # [LibraryClasses.ARM] and NULL mean link this library into all ARM images.
59  #
60  NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
61
62  # Add support for GCC stack protector
63  NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
64
65[LibraryClasses.AARCH64]
66  NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
67
68[PcdsFixedAtBuild]
69  gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
70  gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
71  gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|16000
72!ifdef $(NO_SHELL_PROFILES)
73  gEfiShellPkgTokenSpaceGuid.PcdShellProfileMask|0x00
74!endif #$(NO_SHELL_PROFILES)
75
76[Components]
77  #
78  # Build all the libraries when building this package.
79  # This helps developers test changes and how they affect the package.
80  #
81  ShellPkg/Library/UefiShellLib/UefiShellLib.inf
82  ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
83  ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
84  ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
85  ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
86  ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
87  ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
88  ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
89  ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
90  ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
91  ShellPkg/Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.inf
92
93  ShellPkg/Library/UefiDpLib/UefiDpLib.inf {
94    <LibraryClasses>
95      TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
96      PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
97      DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
98  }
99
100  ShellPkg/Application/Shell/Shell.inf {
101    <LibraryClasses>
102      NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
103      NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
104      NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
105!ifndef $(NO_SHELL_PROFILES)
106      NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
107      NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
108      NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
109      NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
110!ifdef $(INCLUDE_DP)
111      NULL|ShellPkg/Library/UefiDpLib/UefiDpLib.inf
112!endif #$(INCLUDE_DP)
113!ifdef $(INCLUDE_TFTP_COMMAND)
114      NULL|ShellPkg/Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.inf
115!endif #$(INCLUDE_TFTP_COMMAND)
116!endif #$(NO_SHELL_PROFILES)
117  }
118
119