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