blob: c2842ce166db3d59cd348cd7a0072f35d9c33f48 [file] [log] [blame]
Vishal Bhoj82c80712015-12-15 21:13:33 +05301## @file
2# Intel(r) UEFI Standard Libraries for EDK II.
3# Build descriptions.
4#
5# See the comments in the [LibraryClasses.IA32] and [BuildOptions] sections
6# for important information about configuring this package for your
7# environment.
8#
9# This package contains:
10# Standard C Library.
11# Sockets Library.
12# Posix Library.
13#
14# Copyright (c) 2010 - 2014, Intel Corporation. All rights reserved.<BR>
15# This program and the accompanying materials
16# are licensed and made available under the terms and conditions of the BSD License
17# which accompanies this distribution. The full text of the license may be found at
18# http://opensource.org/licenses/bsd-license.
19#
20# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
21# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
22##
23
24[Defines]
25 PLATFORM_NAME = StdLib
26 PLATFORM_GUID = 6135e67b-d813-4e4a-93c3-945d6af41858
27 PLATFORM_VERSION = 0.01
28 DSC_SPECIFICATION = 0x00010006
29 OUTPUT_DIRECTORY = Build/StdLib
30 SUPPORTED_ARCHITECTURES = IA32|X64|ARM
31 BUILD_TARGETS = DEBUG|RELEASE|NOOPT
32 SKUID_IDENTIFIER = DEFAULT
33
34#
35# Debug output control
36#
37 DEFINE DEBUG_ENABLE_OUTPUT = FALSE # Set to TRUE to enable debug output
38 DEFINE DEBUG_PRINT_ERROR_LEVEL = 0x80000000 # Flags to control amount of debug output
39 DEFINE DEBUG_PROPERTY_MASK = 0x0f
40
41[PcdsFeatureFlag]
42
43[PcdsFixedAtBuild]
44 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|$(DEBUG_PROPERTY_MASK)
45 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|$(DEBUG_PRINT_ERROR_LEVEL)
46
47[PcdsFixedAtBuild.IPF]
48
49[LibraryClasses]
50 #
51 # Entry Point Libraries
52 #
53 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
54 ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
55 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
56 #
57 # Common Libraries
58 #
59 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
60 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
61 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
62 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
63 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
64 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
65 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
66 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
67 !if $(DEBUG_ENABLE_OUTPUT)
68 DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf
69 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
70 !else ## DEBUG_ENABLE_OUTPUT
71 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
72 !endif ## DEBUG_ENABLE_OUTPUT
73 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
74 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
75 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
76 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
77 PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
78 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
79 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
80 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
81 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
82 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
83 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
84 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
85 SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
86 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
87
88###################################################################################################
89#
90# Components Section - list of the modules and components that will be processed by compilation
91# tools and the EDK II tools to generate PE32/PE32+/Coff image files.
92#
93# Note: The EDK II DSC file is not used to specify how compiled binary images get placed
94# into firmware volume images. This section is just a list of modules to compile from
95# source into UEFI-compliant binaries.
96# It is the FDF file that contains information on combining binary files into firmware
97# volume images, whose concept is beyond UEFI and is described in PI specification.
98# Binary modules do not need to be listed in this section, as they should be
99# specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi),
100# Logo (Logo.bmp), and etc.
101# There may also be modules listed in this section that are not required in the FDF file,
102# When a module listed here is excluded from FDF file, then UEFI-compliant binary will be
103# generated for it, but the binary will not be put into any firmware volume.
104#
105###################################################################################################
106
107[Components]
108# Standard C Libraries.
109 StdLib/LibC/LibC.inf
110 StdLib/LibC/StdLib/StdLib.inf
111 StdLib/LibC/String/String.inf
112 StdLib/LibC/Wchar/Wchar.inf
113 StdLib/LibC/Ctype/Ctype.inf
114 StdLib/LibC/Time/Time.inf
115 StdLib/LibC/Stdio/Stdio.inf
116 StdLib/LibC/Locale/Locale.inf
117 StdLib/LibC/Uefi/Uefi.inf
118 StdLib/LibC/Math/Math.inf
119 StdLib/LibC/Signal/Signal.inf
120 StdLib/LibC/NetUtil/NetUtil.inf
121
122# Device Abstractions within the Standard C Library
123# Applications should not directly access any functions defined in these libraries.
124 StdLib/LibC/gdtoa/gdtoa.inf
125 StdLib/LibC/Uefi/Devices/daUtility.inf
126 StdLib/LibC/Uefi/Devices/daConsole.inf
127 StdLib/LibC/Uefi/Devices/daShell.inf
128
129# Additional, non-standard, libraries
130 StdLib/LibC/Containers/ContainerLib.inf
131
132# Additional libraries for POSIX functionality.
133 StdLib/PosixLib/PosixLib.inf
134 StdLib/PosixLib/Err/LibErr.inf
135 StdLib/PosixLib/Gen/LibGen.inf
136 StdLib/PosixLib/Glob/LibGlob.inf
137 StdLib/PosixLib/Stringlist/LibStringlist.inf
138 StdLib/LibC/Uefi/InteractiveIO/IIO.inf
139
140# Socket Libraries - LibC based
141 StdLib/BsdSocketLib/BsdSocketLib.inf
142 StdLib/EfiSocketLib/EfiSocketLib.inf
143 StdLib/UseSocketDxe/UseSocketDxe.inf
144
145##############################################################################
146#
147# Include Boilerplate text required for building with the Standard Libraries.
148#
149##############################################################################
150!include StdLib/StdLib.inc