# HG changeset patch # User Sam Lantinga # Date 1140245460 0 # Node ID 533567cbb576f5ddcb182a800fac25a7bd884cbe # Parent e440d5c488c1cc42f3b741b421da3a388bd0a108 More fixes for building on BeOS diff -r e440d5c488c1 -r 533567cbb576 include/SDL_endian.h --- 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)); diff -r e440d5c488c1 -r 533567cbb576 include/SDL_stdinc.h --- 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 +# elif __GNUC__ +# define alloca __builtin_alloca +# elif _MSC_VER # include # define alloca _alloca +# elif _AIX + #pragma alloca # else -# if HAVE_ALLOCA_H -# include -# 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