From 8aa163da5ac7bf40d1a3b0612a46504dc56d16a2 Mon Sep 17 00:00:00 2001 From: darylm503 Date: Fri, 11 Nov 2011 00:32:31 +0000 Subject: StdLib: Eliminate TimerLib dependencies. Implement the clock() function using the EFI time-of-day clock instead of a TimerLib instance. Signed-off-by: darylm503 Reviewed-by: jljusten Reviewed-by: geekboy15a git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12683 6f19259b-4bc3-4df7-8a09-765794883524 --- StdLib/StdLib.inc | 48 ++++++++++-------------------------------------- 1 file changed, 10 insertions(+), 38 deletions(-) (limited to 'StdLib/StdLib.inc') diff --git a/StdLib/StdLib.inc b/StdLib/StdLib.inc index 4e9ca1d2e7..fa1865659b 100644 --- a/StdLib/StdLib.inc +++ b/StdLib/StdLib.inc @@ -56,38 +56,9 @@ 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|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf -# TimerLib|PerformancePkg/Library/TscTimerLib/DxeTscTimerLib.inf - -[LibraryClasses.X64.UEFI_APPLICATION] - TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf -# TimerLib|PerformancePkg/Library/TscTimerLib/DxeTscTimerLib.inf - -[LibraryClasses.IPF.UEFI_APPLICATION] - PalLib|MdePkg/Library/UefiPalLib/UefiPalLib.inf - TimerLib|MdePkg/Library/SecPeiDxeTimerLibCpu/SecPeiDxeTimerLibCpu.inf - -[LibraryClasses.ARM.UEFI_APPLICATION] - NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf - TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf - - -!else - # Use this instance if Running in an Emulation Environment. -[LibraryClasses.Common.UEFI_APPLICATION] - TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf - [LibraryClasses.ARM.UEFI_APPLICATION] NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.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 @@ -120,17 +91,18 @@ # 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 /D NT32dvm + MSFT:*_*_*_CC_FLAGS = /X /Zc:wchar_t GCC:*_*_*_CC_FLAGS = -nostdinc -nostdlib - RVCT:*_*_*_CC_FLAGS = --library_interface=none -J$(WORKSPACE)/StdLib/Include -J$(WORKSPACE)/StdLib/Include/Arm -DNT32dvm - ARMGCC:*_*_*_CC_FLAGS = -nostdinc -nostdlib -Wno-unknown-pragmas -Wno-unused -Wno-format-zero-length -DNT32dvm + RVCT:*_*_*_CC_FLAGS = --library_interface=none -J$(WORKSPACE)/StdLib/Include -J$(WORKSPACE)/StdLib/Include/Arm + ARMGCC:*_*_*_CC_FLAGS = -nostdinc -nostdlib -Wno-unknown-pragmas -Wno-unused -Wno-format-zero-length !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 + # to be run under an emulation environment. + # They disable optimization which facillitates debugging under the Emulation environment. + INTEL:*_*_IA32_CC_FLAGS = /Od + MSFT:*_*_IA32_CC_FLAGS = /Od + GCC:*_*_IA32_CC_FLAGS = -O0 + RVCT:*_*_*_CC_FLAGS = --library_interface=none -J$(WORKSPACE)/StdLib/Include -J$(WORKSPACE)/StdLib/Include/Arm + ARMGCC:*_*_*_CC_FLAGS = -O0 -Wno-unknown-pragmas -Wno-unused -Wno-format-zero-length !endif -- cgit v1.2.3