# The including DSC file must DEFINE the EMULATE macro if\r
# the application is to be run in an emulation environment.\r
#\r
-# Copyright (c) 2011, Intel Corporation. All rights reserved.<BR>\r
-# This program and the accompanying materials\r
-# are licensed and made available under the terms and conditions of the BSD License\r
-# which accompanies this distribution. The full text of the license may be found at\r
-# http://opensource.org/licenses/bsd-license.\r
-#\r
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+# Copyright (c) 2016, Daryl McDaniel. All rights reserved.<BR>\r
+# Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>\r
+# SPDX-License-Identifier: BSD-2-Clause-Patent\r
################################################################\r
\r
##########\r
UseSocketDxe|StdLib/UseSocketDxe/UseSocketDxe.inf\r
\r
[LibraryClasses.Common.UEFI_APPLICATION]\r
+ ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf\r
+ FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf\r
+ SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf\r
+ ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf\r
+\r
#\r
# C Standard Libraries\r
#\r
LibNetUtil|StdLib/LibC/NetUtil/NetUtil.inf\r
\r
# Additional libraries for POSIX functionality.\r
+ LibPosix|StdLib/PosixLib/PosixLib.inf # Combines LibErr, LibGen, LibGlob, LibStringlist, GetPass into one library\r
+\r
LibErr|StdLib/PosixLib/Err/LibErr.inf\r
LibGen|StdLib/PosixLib/Gen/LibGen.inf\r
LibGlob|StdLib/PosixLib/Glob/LibGlob.inf\r
LibStringlist|StdLib/PosixLib/Stringlist/LibStringlist.inf\r
+ LibIIO|StdLib/LibC/Uefi/InteractiveIO/IIO.inf\r
+\r
+# Additional, non-standard, libraries\r
+ LibContainer|StdLib/LibC/Containers/ContainerLib.inf\r
\r
# Libraries for device abstractions within the Standard C Library\r
# Applications should not directly access any functions defined in these libraries.\r
LibGdtoa|StdLib/LibC/gdtoa/gdtoa.inf\r
DevConsole|StdLib/LibC/Uefi/Devices/daConsole.inf\r
- DevShell|StdLib/LibC/Uefi/Devices/daShell.inf\r
+ DevShell|StdLib/LibC/Uefi/Devices/daShell.inf # DEPRECATED! Please use DevMedia for new code.\r
+ DevMedia|StdLib/LibC/Uefi/Devices/daShell.inf\r
DevUtility|StdLib/LibC/Uefi/Devices/daUtility.inf\r
\r
-###\r
-# Select the correct TimerLib instance depending upon whether running under\r
-# an emulation environment, or not.\r
-!ifndef $(EMULATE)\r
- # Not running in an Emulation Environment\r
-[LibraryClasses.IA32.UEFI_APPLICATION]\r
- TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf\r
-# TimerLib|PerformancePkg/Library/TscTimerLib/DxeTscTimerLib.inf\r
-\r
-[LibraryClasses.X64.UEFI_APPLICATION]\r
- TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf\r
-# TimerLib|PerformancePkg/Library/TscTimerLib/DxeTscTimerLib.inf\r
-\r
-[LibraryClasses.IPF.UEFI_APPLICATION]\r
- PalLib|MdePkg/Library/UefiPalLib/UefiPalLib.inf\r
- TimerLib|MdePkg/Library/SecPeiDxeTimerLibCpu/SecPeiDxeTimerLibCpu.inf\r
-\r
-[LibraryClasses.ARM.UEFI_APPLICATION]\r
- NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf\r
- TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf\r
+ LuaLib|AppPkg/Applications/Lua/LuaLib.inf # Lua language library\r
\r
+[LibraryClasses.ARM]\r
+ NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf\r
+ NULL|StdLib/LibC/Softfloat/Softfloat.inf\r
\r
-!else\r
- # Use this instance if Running in an Emulation Environment.\r
-[LibraryClasses.Common.UEFI_APPLICATION]\r
- TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf\r
+ # Add support for GCC stack protector\r
+ NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf\r
\r
-[LibraryClasses.ARM.UEFI_APPLICATION]\r
+[LibraryClasses.AArch64]\r
NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf\r
\r
-!endif\r
+ # Use the softfloat library to cover missing hardfloat operations.\r
+ NULL|StdLib/LibC/Softfloat/Softfloat.inf\r
+\r
+ # Add support for GCC stack protector\r
+ NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf\r
\r
[Components]\r
# BaseLib and BaseMemoryLib need to be built with the /GL- switch when using the Microsoft\r
#\r
\r
[BuildOptions]\r
-!ifndef $(EMULATE)\r
- # These Build Options are used when building the Standard Libraries to be run\r
- # on real hardware.\r
- INTEL:*_*_*_CC_FLAGS = /Qfreestanding\r
- MSFT:*_*_*_CC_FLAGS = /X /Zc:wchar_t /D NT32dvm\r
- GCC:*_*_*_CC_FLAGS = -nostdinc -nostdlib\r
- RVCT:*_*_*_CC_FLAGS = --library_interface=none -J$(WORKSPACE)/StdLib/Include -J$(WORKSPACE)/StdLib/Include/Arm -DNT32dvm\r
- ARMGCC:*_*_*_CC_FLAGS = -nostdinc -nostdlib -Wno-unknown-pragmas -Wno-unused -Wno-format-zero-length -DNT32dvm\r
+!ifdef $(EMULATE)\r
+ # The Build Options, below, are only used when building the Standard Libraries\r
+ # to be run under an emulation environment; such as NT32Pkg.\r
+ # They disable optimization which facillitates debugging under the Emulation environment.\r
+ INTEL:*_*_IA32_CC_FLAGS = /Od /D UEFI_C_SOURCE\r
+ MSFT:*_*_IA32_CC_FLAGS = /Od /D UEFI_C_SOURCE\r
+ GCC:*_*_IA32_CC_FLAGS = -O0 -DUEFI_C_SOURCE\r
+ RVCT:*_*_*_CC_FLAGS = --library_interface=none -DUEFI_C_SOURCE -J$(WORKSPACE)/StdLib/Include -J$(WORKSPACE)/StdLib/Include/Arm\r
+ XCODE:*_*_*_CC_FLAGS = -O0 -DUEFI_C_SOURCE -Wno-unused-const-variable -Wno-string-compare -Wno-sometimes-uninitialized\r
\r
!else\r
- # The Build Options, below, are only used when building the Standard Libraries\r
- # to be run under an emulation environment. They disable the clock() system call\r
- # which is currently incompatible with the most emulation environments.\r
- # Select the correct TimerLib instance, above.\r
- INTEL:*_*_IA32_CC_FLAGS = /Od /D NT32dvm\r
- MSFT:*_*_IA32_CC_FLAGS = /Od /D NT32dvm\r
- GCC:*_*_IA32_CC_FLAGS = -O0 -DNT32dvm\r
+ # These Build Options are used when building the Standard Libraries to be run\r
+ # on real hardware.\r
+ INTEL:*_*_*_CC_FLAGS = /Qfreestanding /D UEFI_C_SOURCE\r
+ MSFT:*_*_*_CC_FLAGS = /X /Zc:wchar_t /D UEFI_C_SOURCE\r
+ GCC:*_*_*_CC_FLAGS = -nostdinc -nostdlib -DUEFI_C_SOURCE\r
+ RVCT:*_*_*_CC_FLAGS = --library_interface=none -DUEFI_C_SOURCE -J$(WORKSPACE)/StdLib/Include -J$(WORKSPACE)/StdLib/Include/Arm\r
+ XCODE:*_*_*_CC_FLAGS = -nostdinc -nostdlib -DUEFI_C_SOURCE -Wno-unused-const-variable -Wno-string-compare -Wno-sometimes-uninitialized\r
!endif\r
+\r
+ # Temporarily restrict compiler warnings to those produced by VS2012.\r
+ # Code that fails when these flags are removed will have to be rewritten\r
+ # in order to pass. This may be as simple as renaming an object, but may\r
+ # require more significant changes.\r
+ MSFT:*_VS2015_*_CC_FLAGS = /Wv:11\r
+ MSFT:*_VS2015x86_*_CC_FLAGS = /Wv:11\r
+ MSFT:*_VS2015xASL_*_CC_FLAGS = /Wv:11\r
+ MSFT:*_VS2015x86xASL_*_CC_FLAGS = /Wv:11\r