StdLib: Changes needed to support XCODE5

I had to make the following changes to make this build work: >build -p AppPkg/AppPkg.dsc -a X64 -t XCODE5

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Andrew Fish <afish@apple.com>
Reviewed-by: Daryl McDaniel <daryl.mcdaniel@intel.com>


git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16081 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
Andrew Fish 2014-09-09 21:59:08 +00:00 committed by darylm503
parent 1e9b2bddff
commit c21e7a7832
3 changed files with 18 additions and 16 deletions

View File

@ -44,12 +44,12 @@
#define __weak_extern(sym) /* NOTHING */
#define __weak_reference(sym) /* NOTHING */
#if !defined(__CC_ARM)
#define __warn_references(sym,msg) \
__asm(".stabs \"" msg "\",30,0,0,0"); \
__asm(".stabs \"_" #sym "\",1,0,0,0");
#else
#if defined(__CC_ARM) || defined(__APPLE__)
#define __warn_references(sym,msg)
#else
#define __warn_references(sym,msg) \
__asm(".stabs \"" msg "\",30,0,0,0"); \
__asm(".stabs \"_" #sym "\",1,0,0,0");
#endif
#endif
#else /* __STDC__ */

View File

@ -120,7 +120,7 @@ _Exit(int status)
longjmp(gMD->MainExit, 0x55); // Get out of here. longjmp can't return 0. Use 0x55 for a non-zero value.
#ifdef __GNUC__
__builtin__Exit(status); /* Keep GCC happy - never reached */
_Exit(status); /* Keep GCC happy - never reached */
#endif
}

View File

@ -105,19 +105,21 @@
!ifndef $(EMULATE)
# 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
ARMGCC:*_*_*_CC_FLAGS = -nostdinc -nostdlib -DUEFI_C_SOURCE -Wno-unknown-pragmas -Wno-unused -Wno-format-zero-length
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
ARMGCC:*_*_*_CC_FLAGS = -nostdinc -nostdlib -DUEFI_C_SOURCE -Wno-unknown-pragmas -Wno-unused -Wno-format-zero-length
XCODE:*_*_*_CC_FLAGS = -nostdinc -nostdlib -DUEFI_C_SOURCE -Wno-unused-const-variable -Wno-string-compare -Wno-sometimes-uninitialized
!else
# The Build Options, below, are only used when building the Standard Libraries
# to be run under an emulation environment.
# 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
ARMGCC:*_*_*_CC_FLAGS = -O0 -DUEFI_C_SOURCE -Wno-unknown-pragmas -Wno-unused -Wno-format-zero-length
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
ARMGCC:*_*_*_CC_FLAGS = -O0 -DUEFI_C_SOURCE -Wno-unknown-pragmas -Wno-unused -Wno-format-zero-length
XCODE:*_*_*_CC_FLAGS = -O0 -DUEFI_C_SOURCE -Wno-unused-const-variable -Wno-string-compare -Wno-sometimes-uninitialized
!endif