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