mirror of https://github.com/encounter/SDL.git
Some patches to make SDL compile with armcc (ARM's C compiler).
This commit is contained in:
parent
94a69443c7
commit
d526b8a1e9
|
@ -111,7 +111,7 @@
|
||||||
#elif defined(_MSC_VER) || defined(__BORLANDC__) || \
|
#elif defined(_MSC_VER) || defined(__BORLANDC__) || \
|
||||||
defined(__DMC__) || defined(__SC__) || \
|
defined(__DMC__) || defined(__SC__) || \
|
||||||
defined(__WATCOMC__) || defined(__LCC__) || \
|
defined(__WATCOMC__) || defined(__LCC__) || \
|
||||||
defined(__DECC)
|
defined(__DECC) || defined(__CC_ARM)
|
||||||
#define SDL_INLINE __inline
|
#define SDL_INLINE __inline
|
||||||
#ifndef __inline__
|
#ifndef __inline__
|
||||||
#define __inline__ __inline
|
#define __inline__ __inline
|
||||||
|
|
|
@ -78,7 +78,7 @@ SDL_PrivateShouldInitSubsystem(Uint32 subsystem)
|
||||||
{
|
{
|
||||||
int subsystem_index = SDL_MostSignificantBitIndex32(subsystem);
|
int subsystem_index = SDL_MostSignificantBitIndex32(subsystem);
|
||||||
SDL_assert(SDL_SubsystemRefCount[subsystem_index] < 255);
|
SDL_assert(SDL_SubsystemRefCount[subsystem_index] < 255);
|
||||||
return (SDL_SubsystemRefCount[subsystem_index] == 0);
|
return (SDL_SubsystemRefCount[subsystem_index] == 0) ? SDL_TRUE : SDL_FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Private helper to check if a system needs to be quit. */
|
/* Private helper to check if a system needs to be quit. */
|
||||||
|
@ -92,7 +92,7 @@ SDL_PrivateShouldQuitSubsystem(Uint32 subsystem) {
|
||||||
/* If we're in SDL_Quit, we shut down every subsystem, even if refcount
|
/* If we're in SDL_Quit, we shut down every subsystem, even if refcount
|
||||||
* isn't zero.
|
* isn't zero.
|
||||||
*/
|
*/
|
||||||
return SDL_SubsystemRefCount[subsystem_index] == 1 || SDL_bInMainQuit;
|
return (SDL_SubsystemRefCount[subsystem_index] == 1 || SDL_bInMainQuit) ? SDL_TRUE : SDL_FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
/* This is for a variable-length array at the end of a struct:
|
/* This is for a variable-length array at the end of a struct:
|
||||||
struct x { int y; char z[SDL_VARIABLE_LENGTH_ARRAY]; };
|
struct x { int y; char z[SDL_VARIABLE_LENGTH_ARRAY]; };
|
||||||
Use this because GCC 2 needs different magic than other compilers. */
|
Use this because GCC 2 needs different magic than other compilers. */
|
||||||
#if (defined(__GNUC__) && (__GNUC__ <= 2))
|
#if (defined(__GNUC__) && (__GNUC__ <= 2)) || defined(__CC_ARM)
|
||||||
#define SDL_VARIABLE_LENGTH_ARRAY 1
|
#define SDL_VARIABLE_LENGTH_ARRAY 1
|
||||||
#else
|
#else
|
||||||
#define SDL_VARIABLE_LENGTH_ARRAY
|
#define SDL_VARIABLE_LENGTH_ARRAY
|
||||||
|
|
|
@ -439,7 +439,10 @@ SDL_ResampleCVT_si16_c2(SDL_AudioCVT *cvt, SDL_AudioFormat format)
|
||||||
const int srclen = cvt->len_cvt;
|
const int srclen = cvt->len_cvt;
|
||||||
Sint16 *dst = (Sint16 *) cvt->buf;
|
Sint16 *dst = (Sint16 *) cvt->buf;
|
||||||
const int dstlen = (cvt->len * cvt->len_mult);
|
const int dstlen = (cvt->len * cvt->len_mult);
|
||||||
Sint16 state[2] = { src[0], src[1] };
|
Sint16 state[2];
|
||||||
|
|
||||||
|
state[0] = src[0];
|
||||||
|
state[1] = src[1];
|
||||||
|
|
||||||
SDL_assert(format == AUDIO_S16SYS);
|
SDL_assert(format == AUDIO_S16SYS);
|
||||||
|
|
||||||
|
|
|
@ -206,8 +206,14 @@ RecursivelyCalculateShapeTree(SDL_WindowShapeMode mode,SDL_Surface* mask,SDL_Rec
|
||||||
SDL_ShapeTree*
|
SDL_ShapeTree*
|
||||||
SDL_CalculateShapeTree(SDL_WindowShapeMode mode,SDL_Surface* shape)
|
SDL_CalculateShapeTree(SDL_WindowShapeMode mode,SDL_Surface* shape)
|
||||||
{
|
{
|
||||||
SDL_Rect dimensions = {0,0,shape->w,shape->h};
|
SDL_Rect dimensions;
|
||||||
SDL_ShapeTree* result = NULL;
|
SDL_ShapeTree* result = NULL;
|
||||||
|
|
||||||
|
dimensions.x = 0;
|
||||||
|
dimensions.y = 0;
|
||||||
|
dimensions.w = shape->w;
|
||||||
|
dimensions.h = shape->h;
|
||||||
|
|
||||||
if(SDL_MUSTLOCK(shape))
|
if(SDL_MUSTLOCK(shape))
|
||||||
SDL_LockSurface(shape);
|
SDL_LockSurface(shape);
|
||||||
result = RecursivelyCalculateShapeTree(mode,shape,dimensions);
|
result = RecursivelyCalculateShapeTree(mode,shape,dimensions);
|
||||||
|
|
Loading…
Reference in New Issue