mirror of
				https://git.proxmox.com/git/mirror_edk2
				synced 2025-10-31 09:21:56 +00:00 
			
		
		
		
	 cfb252305a
			
		
	
	
		cfb252305a
		
	
	
	
	
		
			
			Update Copyright notice. Add Build Options so that builds using VS2015 have the /Wv:11 options added to the CC_FLAGS. This restricts the warnings generated by VS2015 (VC++) to just those that are produced by version 11 of the C compiler, VS2010. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Daryl McDaniel <edk2-lists@mc2research.org> Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19586 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			146 lines
		
	
	
		
			6.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			146 lines
		
	
	
		
			6.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.
 | |
| #
 | |
| #  Copyright (c) 2016, Daryl McDaniel. All rights reserved.<BR>
 | |
| #  Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>
 | |
| #  This program and the accompanying materials
 | |
| #  are licensed and made available under the terms and conditions of the BSD License
 | |
| #  which accompanies this distribution. The full text of the license may be found at
 | |
| #  http://opensource.org/licenses/bsd-license.
 | |
| #
 | |
| #  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
 | |
| #  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 | |
| ################################################################
 | |
| 
 | |
| ##########
 | |
| #  Socket Support Libraries
 | |
| ##########
 | |
| 
 | |
| [LibraryClasses.common]
 | |
|   BsdSocketLib|StdLib/BsdSocketLib/BsdSocketLib.inf
 | |
|   EfiSocketLib|StdLib/EfiSocketLib/EfiSocketLib.inf
 | |
|   UseSocketDxe|StdLib/UseSocketDxe/UseSocketDxe.inf
 | |
| 
 | |
| [LibraryClasses.Common.UEFI_APPLICATION]
 | |
|   ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
 | |
|   FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
 | |
|   SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
 | |
|   ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
 | |
| 
 | |
|   #
 | |
|   # 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.
 | |
|   LibPosix|StdLib/PosixLib/PosixLib.inf   # Combines LibErr, LibGen, LibGlob, LibStringlist, GetPass into one library
 | |
| 
 | |
|   LibErr|StdLib/PosixLib/Err/LibErr.inf
 | |
|   LibGen|StdLib/PosixLib/Gen/LibGen.inf
 | |
|   LibGlob|StdLib/PosixLib/Glob/LibGlob.inf
 | |
|   LibStringlist|StdLib/PosixLib/Stringlist/LibStringlist.inf
 | |
|   LibIIO|StdLib/LibC/Uefi/InteractiveIO/IIO.inf
 | |
| 
 | |
| # Additional, non-standard, libraries
 | |
|   LibContainer|StdLib/LibC/Containers/ContainerLib.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       # DEPRECATED!  Please use DevMedia for new code.
 | |
|   DevMedia|StdLib/LibC/Uefi/Devices/daShell.inf
 | |
|   DevUtility|StdLib/LibC/Uefi/Devices/daUtility.inf
 | |
| 
 | |
|   LuaLib|AppPkg/Applications/Lua/LuaLib.inf           # Lua language library
 | |
| 
 | |
| [LibraryClasses.ARM]
 | |
|   NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
 | |
|   NULL|StdLib/LibC/Softfloat/Softfloat.inf
 | |
| 
 | |
|   # Add support for GCC stack protector
 | |
|   NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
 | |
| 
 | |
| [LibraryClasses.AArch64]
 | |
|   NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
 | |
| 
 | |
|   # Use the softfloat library to cover missing hardfloat operations.
 | |
|   NULL|StdLib/LibC/Softfloat/Softfloat.inf
 | |
| 
 | |
|   # Add support for GCC stack protector
 | |
|   NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
 | |
| 
 | |
| [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]
 | |
| !ifdef $(EMULATE)
 | |
|   # The Build Options, below, are only used when building the Standard Libraries
 | |
|   # to be run under an emulation environment; such as NT32Pkg.
 | |
|   # They disable optimization which facillitates debugging under the Emulation environment.
 | |
|   INTEL:*_*_IA32_CC_FLAGS   = /Od /D UEFI_C_SOURCE
 | |
|    MSFT:*_*_IA32_CC_FLAGS   = /Od /D UEFI_C_SOURCE
 | |
|     GCC:*_*_IA32_CC_FLAGS   = -O0 -DUEFI_C_SOURCE
 | |
|     RVCT:*_*_*_CC_FLAGS     = --library_interface=none -DUEFI_C_SOURCE -J$(WORKSPACE)/StdLib/Include -J$(WORKSPACE)/StdLib/Include/Arm
 | |
|    XCODE:*_*_*_CC_FLAGS     = -O0 -DUEFI_C_SOURCE -Wno-unused-const-variable -Wno-string-compare -Wno-sometimes-uninitialized
 | |
| 
 | |
| !else
 | |
|   # These Build Options are used when building the Standard Libraries to be run
 | |
|   # on real hardware.
 | |
|    INTEL:*_*_*_CC_FLAGS     = /Qfreestanding /D UEFI_C_SOURCE
 | |
|     MSFT:*_*_*_CC_FLAGS     = /X /Zc:wchar_t /D UEFI_C_SOURCE
 | |
|      GCC:*_*_*_CC_FLAGS     = -nostdinc -nostdlib -DUEFI_C_SOURCE
 | |
|     RVCT:*_*_*_CC_FLAGS     = --library_interface=none -DUEFI_C_SOURCE -J$(WORKSPACE)/StdLib/Include -J$(WORKSPACE)/StdLib/Include/Arm
 | |
|    XCODE:*_*_*_CC_FLAGS     = -nostdinc -nostdlib -DUEFI_C_SOURCE -Wno-unused-const-variable -Wno-string-compare -Wno-sometimes-uninitialized
 | |
| !endif
 | |
| 
 | |
|   # Temporarily restrict compiler warnings to those produced by VS2012.
 | |
|   # Code that fails when these flags are removed will have to be rewritten
 | |
|   # in order to pass.  This may be as simple as renaming an object, but may
 | |
|   # require more significant changes.
 | |
|     MSFT:*_VS2015_*_CC_FLAGS          = /Wv:11
 | |
|     MSFT:*_VS2015x86_*_CC_FLAGS       = /Wv:11
 | |
|     MSFT:*_VS2015xASL_*_CC_FLAGS      = /Wv:11
 | |
|     MSFT:*_VS2015x86xASL_*_CC_FLAGS   = /Wv:11
 |