]> git.proxmox.com Git - mirror_edk2.git/blame - StdLib/StdLib.inc
SecurityPkg: Add TPM PTP support in TPM2 device lib.
[mirror_edk2.git] / StdLib / StdLib.inc
CommitLineData
d7ce7006 1################################################################\r
2# Boilerplate text to be included by any DSC file using the\r
3# Standard Libraries.\r
4#\r
5# The including DSC file must DEFINE the EMULATE macro if\r
6# the application is to be run in an emulation environment.\r
41b152c5 7#\r
cfb25230 8# Copyright (c) 2016, Daryl McDaniel. All rights reserved.<BR>\r
caf89d64 9# Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>\r
41b152c5 10# This program and the accompanying materials\r
11# are licensed and made available under the terms and conditions of the BSD License\r
12# which accompanies this distribution. The full text of the license may be found at\r
13# http://opensource.org/licenses/bsd-license.\r
14#\r
15# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
16# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
d7ce7006 17################################################################\r
18\r
19##########\r
20# Socket Support Libraries\r
21##########\r
22\r
23[LibraryClasses.common]\r
24 BsdSocketLib|StdLib/BsdSocketLib/BsdSocketLib.inf\r
25 EfiSocketLib|StdLib/EfiSocketLib/EfiSocketLib.inf\r
26 UseSocketDxe|StdLib/UseSocketDxe/UseSocketDxe.inf\r
27\r
28[LibraryClasses.Common.UEFI_APPLICATION]\r
a7a8363d 29 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf\r
6a013e50
DM
30 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf\r
31 SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf\r
a7a8363d 32 ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf\r
33\r
d7ce7006 34 #\r
35 # C Standard Libraries\r
36 #\r
37 LibC|StdLib/LibC/LibC.inf\r
38 LibCType|StdLib/LibC/Ctype/Ctype.inf\r
39 LibLocale|StdLib/LibC/Locale/Locale.inf\r
40 LibMath|StdLib/LibC/Math/Math.inf\r
41 LibSignal|StdLib/LibC/Signal/Signal.inf\r
42 LibStdio|StdLib/LibC/Stdio/Stdio.inf\r
43 LibStdLib|StdLib/LibC/StdLib/StdLib.inf\r
44 LibString|StdLib/LibC/String/String.inf\r
45 LibTime|StdLib/LibC/Time/Time.inf\r
46 LibUefi|StdLib/LibC/Uefi/Uefi.inf\r
47 LibWchar|StdLib/LibC/Wchar/Wchar.inf\r
48\r
49# Common Utilities for Networking Libraries\r
50 LibNetUtil|StdLib/LibC/NetUtil/NetUtil.inf\r
51\r
52# Additional libraries for POSIX functionality.\r
caf89d64
DM
53 LibPosix|StdLib/PosixLib/PosixLib.inf # Combines LibErr, LibGen, LibGlob, LibStringlist, GetPass into one library\r
54\r
d7ce7006 55 LibErr|StdLib/PosixLib/Err/LibErr.inf\r
56 LibGen|StdLib/PosixLib/Gen/LibGen.inf\r
57 LibGlob|StdLib/PosixLib/Glob/LibGlob.inf\r
58 LibStringlist|StdLib/PosixLib/Stringlist/LibStringlist.inf\r
6c6c850a 59 LibIIO|StdLib/LibC/Uefi/InteractiveIO/IIO.inf\r
60\r
61# Additional, non-standard, libraries\r
62 LibContainer|StdLib/LibC/Containers/ContainerLib.inf\r
d7ce7006 63\r
64# Libraries for device abstractions within the Standard C Library\r
65# Applications should not directly access any functions defined in these libraries.\r
66 LibGdtoa|StdLib/LibC/gdtoa/gdtoa.inf\r
67 DevConsole|StdLib/LibC/Uefi/Devices/daConsole.inf\r
efb419ea
DM
68 DevShell|StdLib/LibC/Uefi/Devices/daShell.inf # DEPRECATED! Please use DevMedia for new code.\r
69 DevMedia|StdLib/LibC/Uefi/Devices/daShell.inf\r
d7ce7006 70 DevUtility|StdLib/LibC/Uefi/Devices/daUtility.inf\r
71\r
16a5fed6 72 LuaLib|AppPkg/Applications/Lua/LuaLib.inf # Lua language library\r
73\r
86a7f720 74[LibraryClasses.ARM]\r
c614ca50 75 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf\r
3352b62b 76 NULL|StdLib/LibC/Softfloat/Softfloat.inf\r
6ba46a92 77\r
b3933335
OM
78 # Add support for GCC stack protector\r
79 NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf\r
80\r
6ba46a92
HL
81[LibraryClasses.AArch64]\r
82 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf\r
c614ca50 83\r
1bbb83b5
HL
84 # Use the softfloat library to cover missing hardfloat operations.\r
85 NULL|StdLib/LibC/Softfloat/Softfloat.inf\r
86\r
b3933335
OM
87 # Add support for GCC stack protector\r
88 NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf\r
89\r
d7ce7006 90[Components]\r
91# BaseLib and BaseMemoryLib need to be built with the /GL- switch when using the Microsoft\r
92# tool chain. This is required so that the library functions can be resolved during\r
93# the second pass of the linker during Link-time-code-generation.\r
94###\r
95 MdePkg/Library/BaseLib/BaseLib.inf {\r
96 <BuildOptions>\r
97 MSFT:*_*_*_CC_FLAGS = /X /Zc:wchar_t /GL-\r
98 }\r
99\r
100 MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf {\r
101 <BuildOptions>\r
102 MSFT:*_*_*_CC_FLAGS = /X /Zc:wchar_t /GL-\r
103 }\r
104\r
105##########\r
106# Socket Layer\r
107##########\r
108 StdLib/SocketDxe/SocketDxe.inf\r
109\r
110\r
111##############################################################################\r
112#\r
113# See the additional comments below if you plan to run applications under an\r
114# emulation environment.\r
115#\r
116\r
117[BuildOptions]\r
16a5fed6 118!ifdef $(EMULATE)\r
d7ce7006 119 # The Build Options, below, are only used when building the Standard Libraries\r
16a5fed6 120 # to be run under an emulation environment; such as NT32Pkg.\r
8aa163da 121 # They disable optimization which facillitates debugging under the Emulation environment.\r
c21e7a78
AF
122 INTEL:*_*_IA32_CC_FLAGS = /Od /D UEFI_C_SOURCE\r
123 MSFT:*_*_IA32_CC_FLAGS = /Od /D UEFI_C_SOURCE\r
124 GCC:*_*_IA32_CC_FLAGS = -O0 -DUEFI_C_SOURCE\r
125 RVCT:*_*_*_CC_FLAGS = --library_interface=none -DUEFI_C_SOURCE -J$(WORKSPACE)/StdLib/Include -J$(WORKSPACE)/StdLib/Include/Arm\r
c21e7a78 126 XCODE:*_*_*_CC_FLAGS = -O0 -DUEFI_C_SOURCE -Wno-unused-const-variable -Wno-string-compare -Wno-sometimes-uninitialized\r
16a5fed6 127\r
128!else\r
129 # These Build Options are used when building the Standard Libraries to be run\r
130 # on real hardware.\r
131 INTEL:*_*_*_CC_FLAGS = /Qfreestanding /D UEFI_C_SOURCE\r
132 MSFT:*_*_*_CC_FLAGS = /X /Zc:wchar_t /D UEFI_C_SOURCE\r
133 GCC:*_*_*_CC_FLAGS = -nostdinc -nostdlib -DUEFI_C_SOURCE\r
134 RVCT:*_*_*_CC_FLAGS = --library_interface=none -DUEFI_C_SOURCE -J$(WORKSPACE)/StdLib/Include -J$(WORKSPACE)/StdLib/Include/Arm\r
16a5fed6 135 XCODE:*_*_*_CC_FLAGS = -nostdinc -nostdlib -DUEFI_C_SOURCE -Wno-unused-const-variable -Wno-string-compare -Wno-sometimes-uninitialized\r
d7ce7006 136!endif\r
cfb25230
DM
137\r
138 # Temporarily restrict compiler warnings to those produced by VS2012.\r
139 # Code that fails when these flags are removed will have to be rewritten\r
140 # in order to pass. This may be as simple as renaming an object, but may\r
141 # require more significant changes.\r
142 MSFT:*_VS2015_*_CC_FLAGS = /Wv:11\r
143 MSFT:*_VS2015x86_*_CC_FLAGS = /Wv:11\r
144 MSFT:*_VS2015xASL_*_CC_FLAGS = /Wv:11\r
145 MSFT:*_VS2015x86xASL_*_CC_FLAGS = /Wv:11\r