2 # Intel(r) UEFI Standard Libraries for EDK II.
5 # See the comments in the [LibraryClasses.IA32] and [BuildOptions] sections
6 # for important information about configuring this package for your
9 # This package contains:
14 # Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.<BR>
15 # SPDX-License-Identifier: BSD-2-Clause-Patent
19 PLATFORM_NAME = StdLib
20 PLATFORM_GUID = 6135e67b-d813-4e4a-93c3-945d6af41858
21 PLATFORM_VERSION = 0.01
22 DSC_SPECIFICATION = 0x00010006
23 OUTPUT_DIRECTORY = Build/StdLib
24 SUPPORTED_ARCHITECTURES = IA32|X64|ARM|AARCH64
25 BUILD_TARGETS = DEBUG|RELEASE|NOOPT
26 SKUID_IDENTIFIER = DEFAULT
29 # Debug output control
31 DEFINE DEBUG_ENABLE_OUTPUT = FALSE # Set to TRUE to enable debug output
32 DEFINE DEBUG_PRINT_ERROR_LEVEL = 0x80000000 # Flags to control amount of debug output
33 DEFINE DEBUG_PROPERTY_MASK = 0x0f
38 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|$(DEBUG_PROPERTY_MASK)
39 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|$(DEBUG_PRINT_ERROR_LEVEL)
43 # Entry Point Libraries
45 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
46 ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
47 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
51 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
52 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
53 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
54 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
55 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
56 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
57 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
58 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
59 !if $(DEBUG_ENABLE_OUTPUT)
60 DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf
61 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
62 !else ## DEBUG_ENABLE_OUTPUT
63 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
64 !endif ## DEBUG_ENABLE_OUTPUT
65 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
66 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
67 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
68 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
69 PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
70 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
71 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
72 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
73 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
74 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
75 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
76 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
77 SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
78 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
80 ###################################################################################################
82 # Components Section - list of the modules and components that will be processed by compilation
83 # tools and the EDK II tools to generate PE32/PE32+/Coff image files.
85 # Note: The EDK II DSC file is not used to specify how compiled binary images get placed
86 # into firmware volume images. This section is just a list of modules to compile from
87 # source into UEFI-compliant binaries.
88 # It is the FDF file that contains information on combining binary files into firmware
89 # volume images, whose concept is beyond UEFI and is described in PI specification.
90 # Binary modules do not need to be listed in this section, as they should be
91 # specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi),
92 # Logo (Logo.bmp), and etc.
93 # There may also be modules listed in this section that are not required in the FDF file,
94 # When a module listed here is excluded from FDF file, then UEFI-compliant binary will be
95 # generated for it, but the binary will not be put into any firmware volume.
97 ###################################################################################################
100 # Standard C Libraries.
102 StdLib/LibC/StdLib/StdLib.inf
103 StdLib/LibC/String/String.inf
104 StdLib/LibC/Wchar/Wchar.inf
105 StdLib/LibC/Ctype/Ctype.inf
106 StdLib/LibC/Time/Time.inf
107 StdLib/LibC/Stdio/Stdio.inf
108 StdLib/LibC/Locale/Locale.inf
109 StdLib/LibC/Uefi/Uefi.inf
110 StdLib/LibC/Math/Math.inf
111 StdLib/LibC/Signal/Signal.inf
112 StdLib/LibC/NetUtil/NetUtil.inf
114 # Device Abstractions within the Standard C Library
115 # Applications should not directly access any functions defined in these libraries.
116 StdLib/LibC/gdtoa/gdtoa.inf
117 StdLib/LibC/Uefi/Devices/daUtility.inf
118 StdLib/LibC/Uefi/Devices/daConsole.inf
119 StdLib/LibC/Uefi/Devices/daShell.inf
121 # Additional, non-standard, libraries
122 StdLib/LibC/Containers/ContainerLib.inf
124 # Additional libraries for POSIX functionality.
125 StdLib/PosixLib/PosixLib.inf
126 StdLib/PosixLib/Err/LibErr.inf
127 StdLib/PosixLib/Gen/LibGen.inf
128 StdLib/PosixLib/Glob/LibGlob.inf
129 StdLib/PosixLib/Stringlist/LibStringlist.inf
130 StdLib/LibC/Uefi/InteractiveIO/IIO.inf
132 # Socket Libraries - LibC based
133 StdLib/BsdSocketLib/BsdSocketLib.inf
134 StdLib/EfiSocketLib/EfiSocketLib.inf
135 StdLib/UseSocketDxe/UseSocketDxe.inf
137 ##############################################################################
139 # Include Boilerplate text required for building with the Standard Libraries.
141 ##############################################################################
142 !include StdLib/StdLib.inc