mirror of
				https://git.proxmox.com/git/mirror_edk2
				synced 2025-11-04 07:34:13 +00:00 
			
		
		
		
	Add Posix functions for porting compatibility. Fix compliance issues with ISO/IEC 9899:199409 New Functions: setenv(), fparseln(), GetFileNameFromPath(), rename(), realpath(), setprogname(), getprogname(), strlcat(), strlcpy(), strsep(), setitimer(), getitimer(), timegm(), getopt(), basename(), mkstemp(), ffs(), vsnprintf(), snprintf(), getpass(), usleep(), select(), writev(), strcasecmp(), getcwd(), chdir(), tcgetpgrp(), getpgrp(), gettimeofday(), bcopy(), git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12061 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			116 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			116 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
################################################################
 | 
						|
# Boilerplate text to be included by any DSC file using the
 | 
						|
# Standard Libraries.
 | 
						|
#
 | 
						|
# The including DSC file must DEFINE the EMULATE macro if
 | 
						|
# the application is to be run in an emulation environment.
 | 
						|
################################################################
 | 
						|
 | 
						|
##########
 | 
						|
#  Socket Support Libraries
 | 
						|
##########
 | 
						|
 | 
						|
[LibraryClasses.common]
 | 
						|
  BsdSocketLib|StdLib/BsdSocketLib/BsdSocketLib.inf
 | 
						|
  EfiSocketLib|StdLib/EfiSocketLib/EfiSocketLib.inf
 | 
						|
  UseSocketDxe|StdLib/UseSocketDxe/UseSocketDxe.inf
 | 
						|
 | 
						|
[LibraryClasses.Common.UEFI_APPLICATION]
 | 
						|
  #
 | 
						|
  # C Standard Libraries
 | 
						|
  #
 | 
						|
  LibC|StdLib/LibC/LibC.inf
 | 
						|
  LibCType|StdLib/LibC/Ctype/Ctype.inf
 | 
						|
  LibLocale|StdLib/LibC/Locale/Locale.inf
 | 
						|
  LibMath|StdLib/LibC/Math/Math.inf
 | 
						|
  LibSignal|StdLib/LibC/Signal/Signal.inf
 | 
						|
  LibStdio|StdLib/LibC/Stdio/Stdio.inf
 | 
						|
  LibStdLib|StdLib/LibC/StdLib/StdLib.inf
 | 
						|
  LibString|StdLib/LibC/String/String.inf
 | 
						|
  LibTime|StdLib/LibC/Time/Time.inf
 | 
						|
  LibUefi|StdLib/LibC/Uefi/Uefi.inf
 | 
						|
  LibWchar|StdLib/LibC/Wchar/Wchar.inf
 | 
						|
 | 
						|
# Common Utilities for Networking Libraries
 | 
						|
  LibNetUtil|StdLib/LibC/NetUtil/NetUtil.inf
 | 
						|
 | 
						|
# Additional libraries for POSIX functionality.
 | 
						|
  LibErr|StdLib/PosixLib/Err/LibErr.inf
 | 
						|
  LibGen|StdLib/PosixLib/Gen/LibGen.inf
 | 
						|
  LibGlob|StdLib/PosixLib/Glob/LibGlob.inf
 | 
						|
  LibStringlist|StdLib/PosixLib/Stringlist/LibStringlist.inf
 | 
						|
 | 
						|
# Libraries for device abstractions within the Standard C Library
 | 
						|
# Applications should not directly access any functions defined in these libraries.
 | 
						|
  LibGdtoa|StdLib/LibC/gdtoa/gdtoa.inf
 | 
						|
  DevConsole|StdLib/LibC/Uefi/Devices/daConsole.inf
 | 
						|
  DevShell|StdLib/LibC/Uefi/Devices/daShell.inf
 | 
						|
  DevUtility|StdLib/LibC/Uefi/Devices/daUtility.inf
 | 
						|
 | 
						|
###
 | 
						|
# Select the correct TimerLib instance depending upon whether running under
 | 
						|
# an emulation environment, or not.
 | 
						|
!ifndef $(EMULATE)
 | 
						|
  # Not running in an Emulation Environment
 | 
						|
[LibraryClasses.IA32.UEFI_APPLICATION]
 | 
						|
  TimerLib|PerformancePkg/Library/DxeTscTimerLib/DxeTscTimerLib.inf
 | 
						|
 | 
						|
[LibraryClasses.X64.UEFI_APPLICATION]
 | 
						|
  TimerLib|PerformancePkg/Library/DxeTscTimerLib/DxeTscTimerLib.inf
 | 
						|
 | 
						|
[LibraryClasses.IPF.UEFI_APPLICATION]
 | 
						|
  PalLib|MdePkg/Library/UefiPalLib/UefiPalLib.inf
 | 
						|
  TimerLib|MdePkg/Library/SecPeiDxeTimerLibCpu/SecPeiDxeTimerLibCpu.inf
 | 
						|
 | 
						|
!else
 | 
						|
  # Running in an Emulation Environment.
 | 
						|
  # Adds this to the end of the current [LibraryClasses.Common.UEFI_APPLICATION] section.
 | 
						|
[LibraryClasses.Common.UEFI_APPLICATION]
 | 
						|
  TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
 | 
						|
!endif
 | 
						|
 | 
						|
[Components]
 | 
						|
# BaseLib and BaseMemoryLib need to be built with the /GL- switch when using the Microsoft
 | 
						|
# tool chain.  This is required so that the library functions can be resolved during
 | 
						|
# the second pass of the linker during Link-time-code-generation.
 | 
						|
###
 | 
						|
  MdePkg/Library/BaseLib/BaseLib.inf {
 | 
						|
    <BuildOptions>
 | 
						|
      MSFT:*_*_*_CC_FLAGS    = /X /Zc:wchar_t /GL-
 | 
						|
  }
 | 
						|
 | 
						|
  MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf {
 | 
						|
    <BuildOptions>
 | 
						|
      MSFT:*_*_*_CC_FLAGS    = /X /Zc:wchar_t /GL-
 | 
						|
  }
 | 
						|
 | 
						|
##########
 | 
						|
#  Socket Layer
 | 
						|
##########
 | 
						|
  StdLib/SocketDxe/SocketDxe.inf
 | 
						|
 | 
						|
 | 
						|
##############################################################################
 | 
						|
#
 | 
						|
# See the additional comments below if you plan to run applications under an
 | 
						|
# emulation environment.
 | 
						|
#
 | 
						|
 | 
						|
[BuildOptions]
 | 
						|
!ifndef $(EMULATE)
 | 
						|
  # These Build Options are used when building the Standard Libraries to be run
 | 
						|
  # on real hardware.
 | 
						|
  INTEL:*_*_*_CC_FLAGS      = /Qfreestanding
 | 
						|
   MSFT:*_*_*_CC_FLAGS      = /X /Zc:wchar_t
 | 
						|
    GCC:*_*_*_CC_FLAGS      = -nostdinc -nostdlib
 | 
						|
 | 
						|
!else
 | 
						|
  # The Build Options, below, are only used when building the Standard Libraries
 | 
						|
  # to be run under an emulation environment.  They disable the clock() system call
 | 
						|
  # which is currently incompatible with the most emulation environments.
 | 
						|
  # Select the correct TimerLib instance, above.
 | 
						|
  INTEL:*_*_IA32_CC_FLAGS     = /Od /D NT32dvm
 | 
						|
   MSFT:*_*_IA32_CC_FLAGS     = /Od /D NT32dvm
 | 
						|
    GCC:*_*_IA32_CC_FLAGS     = -O0 -DNT32dvm
 | 
						|
!endif
 |