]> git.proxmox.com Git - mirror_edk2.git/blob - ShellPkg/ShellPkg.dec
This refactors 3 functions out of ShellCommandLib and puts them into a new library...
[mirror_edk2.git] / ShellPkg / ShellPkg.dec
1 ## @file ShellPkg.dec
2 #
3 # This Package provides all definitions for EFI and UEFI Shell
4 #
5 # Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.<BR>
6 #
7 # This program and the accompanying materials are licensed and made available under
8 # the terms and conditions of the BSD License which accompanies this distribution.
9 # The full text of the license may be found at
10 # http://opensource.org/licenses/bsd-license.php
11 #
12 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
14 #
15 ##
16
17 [Defines]
18 DEC_SPECIFICATION = 0x00010005
19 PACKAGE_NAME = ShellPkg
20 PACKAGE_GUID = 9FB7587C-93F7-40a7-9C04-FD7BA94EE646
21 PACKAGE_VERSION = 0.40
22
23 [Includes]
24 Include
25
26 [LibraryClasses]
27 ## @libraryclass Provides most Shell APIs. Only available for Shell applications
28 ShellLib|Include/Library/ShellLib.h
29
30 ## @libraryclass Provides shell internal support Only available for shell internal commands
31 ShellCommandLib|Include/Library/ShellCommandLib.h
32
33 ## @libraryclass provides EFI_FILE_HANDLE services used by Shell and ShellLib
34 FileHandleLib|Include/Library/FileHandleLib.h
35
36 ## @libraryclass Allows for a shell application to have a C style entry point
37 ShellCEntryLib|Include/Library/ShellCEntryLib.h
38
39 ## @libraryclass Provides sorting functions
40 SortLib|Include/Library/SortLib.h
41
42 ## @libraryclass Provides advanced parsing functions
43 HandleParsingLib|Include/Library/HandleParsingLib.h
44
45 ## @libraryclass Provides path manipulation functions
46 PathLib|Include/Library/PathLib.h
47
48 [Guids]
49 gEfiShellEnvironment2ExtGuid = {0xd2c18636, 0x40e5, 0x4eb5, {0xa3, 0x1b, 0x36, 0x69, 0x5f, 0xd4, 0x2c, 0x87}}
50 gEfiShellPkgTokenSpaceGuid = {0x171e9188, 0x31d3, 0x40f5, {0xb1, 0x0c, 0x53, 0x9b, 0x2d, 0xb9, 0x40, 0xcd}}
51 gShellVariableGuid = {0x158def5a, 0xf656, 0x419c, {0xb0, 0x27, 0x7a, 0x31, 0x92, 0xc0, 0x79, 0xd2}}
52 gShellMapGuid = {0x51271e13, 0x7de3, 0x43af, {0x8b, 0xc2, 0x71, 0xad, 0x3b, 0x82, 0x43, 0x25}}
53 gShellAliasGuid = {0x0053d9d6, 0x2659, 0x4599, {0xa2, 0x6b, 0xef, 0x45, 0x36, 0xe6, 0x31, 0xa9}}
54
55 [Protocols]
56 gEfiShellProtocolGuid = {0x6302d008, 0x7f9b, 0x4f30, {0x87, 0xac, 0x60, 0xc9, 0xfe, 0xf5, 0xda, 0x4e}}
57 gEfiShellParametersProtocolGuid = {0x752f3136, 0x4e16, 0x4fdc, {0xa2, 0x2a, 0xe5, 0xf4, 0x68, 0x12, 0xf4, 0xca}}
58 gEfiShellEnvironment2Guid = {0x47c7b221, 0xc42a, 0x11d2, {0x8e, 0x57, 0x00, 0xa0, 0xc9, 0x69, 0x72, 0x3b}}
59 gEfiShellInterfaceGuid = {0x47c7b223, 0xc42a, 0x11d2, {0x8e, 0x57, 0x00, 0xa0, 0xc9, 0x69, 0x72, 0x3b}}
60
61 [PcdsFeatureFlag]
62 ## This flag is used to control whether the shell includes NT32 platform Guids
63 # and thereby prevents dependancy on that Pkg
64 gEfiShellPkgTokenSpaceGuid.PcdShellIncludeNtGuids|TRUE|BOOLEAN|0x0000000E
65
66 ## This flag is used to control HII required by the shell
67 gEfiShellPkgTokenSpaceGuid.PcdShellRequireHiiPlatform|TRUE|BOOLEAN|0x00000003
68
69 ## This flag is used to control HII required by the shell
70 gEfiShellPkgTokenSpaceGuid.PcdShellSupportFrameworkHii|FALSE|BOOLEAN|0x00000004
71
72 ## This flag forces the shell to present a user console. Allows for earlier debugging of platforms.
73 gEfiShellPkgTokenSpaceGuid.PcdShellForceConsole|FALSE|BOOLEAN|0x0000000F
74
75 [PcdsFixedAtBuild]
76 ## This flag is used to control initialization of the shell library
77 # This should be FALSE for compiling the shell application itself only.
78 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|TRUE|BOOLEAN|0x00000005
79
80 ## This is the max buffer for ShellLib, FileHandleLib, and internal Shell printings.
81 gEfiShellPkgTokenSpaceGuid.PcdShellPrintBufferSize|16000|UINT16|0x0000000C
82
83 ## This flag is used to control the commands available in the shell
84 gEfiShellPkgTokenSpaceGuid.PcdShellSupportLevel|3|UINT8|0x00000001
85
86 ## This flag is used to control the profiles available in the shell
87 # don't forget to update the text file if you change this.
88 # bit 0 = Drivers1
89 # bit 1 = Debug1
90 # bit 2 = Install1
91 # bit 3 = Network1
92 gEfiShellPkgTokenSpaceGuid.PcdShellProfileMask|0xFF|UINT8|0x0000000D
93
94 ## This is the character count for allocation for consistent mappings
95 gEfiShellPkgTokenSpaceGuid.PcdShellMapNameLength|50|UINT8|0x00000009
96
97 ## This determins how many bytes are read out of files at a time for file operations (type, copy, etc...)
98 gEfiShellPkgTokenSpaceGuid.PcdShellFileOperationSize|1000|UINT16|0x0000000A
99
100 [PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx]
101 ## This flag is used to control the protocols produced by the shell
102 # If TRUE the shell will produce EFI_SHELL_ENVIRONMENT2 and EFI_SHELL_INTERFACE
103 gEfiShellPkgTokenSpaceGuid.PcdShellSupportOldProtocols|FALSE|BOOLEAN|0x00000002
104
105 ## this flag determins whether Page Break (-b) defaults to on or off in the shell
106 gEfiShellPkgTokenSpaceGuid.PcdShellPageBreakDefault|FALSE|BOOLEAN|0x00000006
107
108 ## this flag determins whether insert mode for typing is default (FALSE means typeover)
109 gEfiShellPkgTokenSpaceGuid.PcdShellInsertModeDefault|TRUE|BOOLEAN|0x00000007
110
111 ## this flag determins the default number of screens kept for history log.
112 # the spec defines 3 as the minimum
113 gEfiShellPkgTokenSpaceGuid.PcdShellScreenLogCount|3|UINT8|0x00000008