changeset 1368:533567cbb576

More fixes for building on BeOS
author Sam Lantinga <slouken@libsdl.org>
date Sat, 18 Feb 2006 06:51:00 +0000
parents e440d5c488c1
children 42eeb14770e3
files include/SDL_endian.h include/SDL_stdinc.h
diffstat 2 files changed, 14 insertions(+), 17 deletions(-) [+]
line wrap: on
line diff
--- a/include/SDL_endian.h	Fri Feb 17 08:43:23 2006 +0000
+++ b/include/SDL_endian.h	Sat Feb 18 06:51:00 2006 +0000
@@ -52,12 +52,13 @@
 extern "C" {
 #endif
 
-/* Use inline functions for compilers that support them, and static
+/* Use __inline__ functions for compilers that support them, and static
    functions for those that do not.  Because these functions become
-   static for compilers that do not support inline functions, this
+   static for compilers that do not support __inline__ functions, this
    header should only be included in files that actually use them.
 */
-#if defined(__GNUC__) && defined(__i386__)
+#if defined(__GNUC__) && defined(__i386__) &&
+   !(__GNUC__ == 2 && __GNUC_MINOR__ == 95 /* broken gcc version */)
 static __inline__ Uint16 SDL_Swap16(Uint16 x)
 {
 	__asm__("xchgb %b0,%h0" : "=q" (x) :  "0" (x));
--- a/include/SDL_stdinc.h	Fri Feb 17 08:43:23 2006 +0000
+++ b/include/SDL_stdinc.h	Sat Feb 18 06:51:00 2006 +0000
@@ -28,23 +28,19 @@
 #include "SDL_config.h"
 
 /* AIX requires this to be the first thing in the file.  */
-#ifdef __GNUC__
-# define alloca __builtin_alloca
-#else
-# ifdef _MSC_VER
+#if HAVE_ALLOCA
+# if HAVE_ALLOCA_H
+#  include <alloca.h>
+# elif __GNUC__
+#  define alloca __builtin_alloca
+# elif _MSC_VER
 #  include <malloc.h>
 #  define alloca _alloca
+# elif _AIX
+  #pragma alloca
 # else
-#  if HAVE_ALLOCA_H
-#   include <alloca.h>
-#  else
-#   ifdef _AIX
- #pragma alloca
-#   else
-#    ifndef alloca /* predefined by HP cc +Olibcalls */
-char *alloca ();
-#    endif
-#   endif
+#  ifndef alloca /* predefined by HP cc +Olibcalls */
+    char *alloca ();
 #  endif
 # endif
 #endif