summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--StdLib/Include/sys/cdefs_aout.h10
-rw-r--r--StdLib/LibC/StdLib/Environs.c2
-rw-r--r--StdLib/StdLib.inc22
3 files changed, 18 insertions, 16 deletions
diff --git a/StdLib/Include/sys/cdefs_aout.h b/StdLib/Include/sys/cdefs_aout.h
index 2749918..2eb0a90 100644
--- a/StdLib/Include/sys/cdefs_aout.h
+++ b/StdLib/Include/sys/cdefs_aout.h
@@ -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__ */
diff --git a/StdLib/LibC/StdLib/Environs.c b/StdLib/LibC/StdLib/Environs.c
index 4080727..15221a1 100644
--- a/StdLib/LibC/StdLib/Environs.c
+++ b/StdLib/LibC/StdLib/Environs.c
@@ -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
}
diff --git a/StdLib/StdLib.inc b/StdLib/StdLib.inc
index 6bdbb6f..60f4cc4 100644
--- a/StdLib/StdLib.inc
+++ b/StdLib/StdLib.inc
@@ -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