mirror of
https://github.com/encounter/SDL.git
synced 2025-12-10 05:57:44 +00:00
Fixed bug 2802 - [patch] Fix android build compiling in wrong filesystem implementation
Jonas Kulla The configure script didn't differentiate between Linux and Android, unconditionally compiling in the unix implementation of SDL_sysfilesystem.c. I'm probably one of the very few people building SDL for android using classic configure + standalone toolchain, so this has gone undetected all along.
This commit is contained in:
193
premake/MinGW/SDL_config_premake.h
Normal file
193
premake/MinGW/SDL_config_premake.h
Normal file
@@ -0,0 +1,193 @@
|
||||
/*
|
||||
Simple DirectMedia Layer
|
||||
Copyright (C) 1997-2014 Sam Lantinga <slouken@libsdl.org>
|
||||
|
||||
This software is provided 'as-is', without any express or implied
|
||||
warranty. In no event will the authors be held liable for any damages
|
||||
arising from the use of this software.
|
||||
|
||||
Permission is granted to anyone to use this software for any purpose,
|
||||
including commercial applications, and to alter it and redistribute it
|
||||
freely, subject to the following restrictions:
|
||||
|
||||
1. The origin of this software must not be misrepresented; you must not
|
||||
claim that you wrote the original software. If you use this software
|
||||
in a product, an acknowledgment in the product documentation would be
|
||||
appreciated but is not required.
|
||||
2. Altered source versions must be plainly marked as such, and must not be
|
||||
misrepresented as being the original software.
|
||||
3. This notice may not be removed or altered from any source distribution.
|
||||
*/
|
||||
|
||||
#ifndef _SDL_config_windows_h
|
||||
#define _SDL_config_windows_h
|
||||
|
||||
#include "SDL_platform.h"
|
||||
|
||||
/* This is a set of defines to configure the SDL features */
|
||||
|
||||
#if !defined(_STDINT_H_) && (!defined(HAVE_STDINT_H) || !_HAVE_STDINT_H)
|
||||
#if defined(__GNUC__) || defined(__DMC__) || defined(__WATCOMC__)
|
||||
#define HAVE_STDINT_H 1
|
||||
#elif defined(_MSC_VER)
|
||||
typedef signed __int8 int8_t;
|
||||
typedef unsigned __int8 uint8_t;
|
||||
typedef signed __int16 int16_t;
|
||||
typedef unsigned __int16 uint16_t;
|
||||
typedef signed __int32 int32_t;
|
||||
typedef unsigned __int32 uint32_t;
|
||||
typedef signed __int64 int64_t;
|
||||
typedef unsigned __int64 uint64_t;
|
||||
#ifndef _UINTPTR_T_DEFINED
|
||||
#ifdef _WIN64
|
||||
typedef unsigned __int64 uintptr_t;
|
||||
#else
|
||||
typedef unsigned int uintptr_t;
|
||||
#endif
|
||||
#define _UINTPTR_T_DEFINED
|
||||
#endif
|
||||
/* Older Visual C++ headers don't have the Win64-compatible typedefs... */
|
||||
#if ((_MSC_VER <= 1200) && (!defined(DWORD_PTR)))
|
||||
#define DWORD_PTR DWORD
|
||||
#endif
|
||||
#if ((_MSC_VER <= 1200) && (!defined(LONG_PTR)))
|
||||
#define LONG_PTR LONG
|
||||
#endif
|
||||
#else /* !__GNUC__ && !_MSC_VER */
|
||||
typedef signed char int8_t;
|
||||
typedef unsigned char uint8_t;
|
||||
typedef signed short int16_t;
|
||||
typedef unsigned short uint16_t;
|
||||
typedef signed int int32_t;
|
||||
typedef unsigned int uint32_t;
|
||||
typedef signed long long int64_t;
|
||||
typedef unsigned long long uint64_t;
|
||||
#ifndef _SIZE_T_DEFINED_
|
||||
#define _SIZE_T_DEFINED_
|
||||
typedef unsigned int size_t;
|
||||
#endif
|
||||
typedef unsigned int uintptr_t;
|
||||
#endif /* __GNUC__ || _MSC_VER */
|
||||
#endif /* !_STDINT_H_ && !HAVE_STDINT_H */
|
||||
|
||||
#ifdef _WIN64
|
||||
# define SIZEOF_VOIDP 8
|
||||
#else
|
||||
# define SIZEOF_VOIDP 4
|
||||
#endif
|
||||
|
||||
/* This is disabled by default to avoid C runtime dependencies and manifest requirements */
|
||||
#ifdef HAVE_LIBC
|
||||
/* Useful headers */
|
||||
#define HAVE_STDIO_H 1
|
||||
#define STDC_HEADERS 1
|
||||
#define HAVE_STRING_H 1
|
||||
#define HAVE_CTYPE_H 1
|
||||
#define HAVE_MATH_H 1
|
||||
#define HAVE_SIGNAL_H 1
|
||||
|
||||
/* C library functions */
|
||||
#define HAVE_MALLOC 1
|
||||
#define HAVE_CALLOC 1
|
||||
#define HAVE_REALLOC 1
|
||||
#define HAVE_FREE 1
|
||||
#define HAVE_ALLOCA 1
|
||||
#define HAVE_QSORT 1
|
||||
#define HAVE_ABS 1
|
||||
#define HAVE_MEMSET 1
|
||||
#define HAVE_MEMCPY 1
|
||||
#define HAVE_MEMMOVE 1
|
||||
#define HAVE_MEMCMP 1
|
||||
#define HAVE_STRLEN 1
|
||||
#define HAVE__STRREV 1
|
||||
#define HAVE__STRUPR 1
|
||||
#define HAVE__STRLWR 1
|
||||
#define HAVE_STRCHR 1
|
||||
#define HAVE_STRRCHR 1
|
||||
#define HAVE_STRSTR 1
|
||||
#define HAVE_ITOA 1
|
||||
#define HAVE__LTOA 1
|
||||
#define HAVE__ULTOA 1
|
||||
#define HAVE_STRTOL 1
|
||||
#define HAVE_STRTOUL 1
|
||||
#define HAVE_STRTOLL 1
|
||||
#define HAVE_STRTOD 1
|
||||
#define HAVE_ATOI 1
|
||||
#define HAVE_ATOF 1
|
||||
#define HAVE_STRCMP 1
|
||||
#define HAVE_STRNCMP 1
|
||||
#define HAVE__STRICMP 1
|
||||
#define HAVE__STRNICMP 1
|
||||
#define HAVE_VSSCANF 1
|
||||
#define HAVE_M_PI 1
|
||||
#define HAVE_ATAN 1
|
||||
#define HAVE_ATAN2 1
|
||||
#define HAVE_CEIL 1
|
||||
#define HAVE_COPYSIGN 1
|
||||
#define HAVE_COS 1
|
||||
#define HAVE_COSF 1
|
||||
#define HAVE_FABS 1
|
||||
#define HAVE_FLOOR 1
|
||||
#define HAVE_LOG 1
|
||||
#define HAVE_POW 1
|
||||
#define HAVE_SCALBN 1
|
||||
#define HAVE_SIN 1
|
||||
#define HAVE_SINF 1
|
||||
#define HAVE_SQRT 1
|
||||
#else
|
||||
#define HAVE_STDARG_H 1
|
||||
#define HAVE_STDDEF_H 1
|
||||
#endif
|
||||
|
||||
#ifndef SDL_AUDIO_DRIVER_DUMMY
|
||||
#define SDL_AUDIO_DRIVER_DUMMY 1
|
||||
#endif
|
||||
#ifndef SDL_AUDIO_DRIVER_DISK
|
||||
#define SDL_AUDIO_DRIVER_DISK 1
|
||||
#endif
|
||||
#ifndef SDL_VIDEO_DRIVER_DUMMY
|
||||
#define SDL_VIDEO_DRIVER_DUMMY 1
|
||||
#endif
|
||||
#ifndef SDL_TIMER_WINDOWS
|
||||
#define SDL_TIMER_WINDOWS 1
|
||||
#endif
|
||||
#ifndef SDL_AUDIO_DRIVER_WINMM
|
||||
#define SDL_AUDIO_DRIVER_WINMM 1
|
||||
#endif
|
||||
#ifndef SDL_FILESYSTEM_WINDOWS
|
||||
#define SDL_FILESYSTEM_WINDOWS 1
|
||||
#endif
|
||||
#ifndef SDL_POWER_WINDOWS
|
||||
#define SDL_POWER_WINDOWS 1
|
||||
#endif
|
||||
#ifndef SDL_LOADSO_WINDOWS
|
||||
#define SDL_LOADSO_WINDOWS 1
|
||||
#endif
|
||||
#ifndef SDL_VIDEO_DRIVER_WINDOWS
|
||||
#define SDL_VIDEO_DRIVER_WINDOWS 1
|
||||
#endif
|
||||
#ifndef SDL_THREAD_WINDOWS
|
||||
#define SDL_THREAD_WINDOWS 1
|
||||
#endif
|
||||
#ifndef SDL_HAPTIC_DUMMY
|
||||
#define SDL_HAPTIC_DUMMY 1
|
||||
#endif
|
||||
#ifndef SDL_JOYSTICK_DUMMY
|
||||
#define SDL_JOYSTICK_DUMMY 1
|
||||
#endif
|
||||
#ifndef SDL_VIDEO_RENDER_OGL
|
||||
#define SDL_VIDEO_RENDER_OGL 1
|
||||
#endif
|
||||
#ifndef SDL_VIDEO_OPENGL
|
||||
#define SDL_VIDEO_OPENGL 1
|
||||
#endif
|
||||
#ifndef SDL_VIDEO_OPENGL_WGL
|
||||
#define SDL_VIDEO_OPENGL_WGL 1
|
||||
#endif
|
||||
|
||||
/* Enable assembly routines (Win64 doesn't have inline asm) */
|
||||
#ifndef _WIN64
|
||||
#define SDL_ASSEMBLY_ROUTINES 1
|
||||
#endif
|
||||
|
||||
#endif /* _SDL_config_windows_h */
|
||||
4
premake/MinGW/build-scripts/clean_premake.bat
Executable file
4
premake/MinGW/build-scripts/clean_premake.bat
Executable file
@@ -0,0 +1,4 @@
|
||||
@echo off
|
||||
cd ..
|
||||
%~dp0\premake4.exe --file=..\premake4.lua --to=.\MinGW --mingw clean
|
||||
pause
|
||||
4
premake/MinGW/build-scripts/mingw.bat
Executable file
4
premake/MinGW/build-scripts/mingw.bat
Executable file
@@ -0,0 +1,4 @@
|
||||
@echo off
|
||||
cd ..
|
||||
%~dp0\premake4.exe --file=..\premake4.lua --to=.\MinGW --mingw gmake
|
||||
pause
|
||||
BIN
premake/MinGW/build-scripts/premake4.exe
Executable file
BIN
premake/MinGW/build-scripts/premake4.exe
Executable file
Binary file not shown.
108
premake/MinGW/build-scripts/run.tests.bat
Executable file
108
premake/MinGW/build-scripts/run.tests.bat
Executable file
@@ -0,0 +1,108 @@
|
||||
@echo off
|
||||
|
||||
cd ..\tests
|
||||
|
||||
call :pass checkkeys
|
||||
call :pass loopwave
|
||||
call :pass testatomic
|
||||
call :pass testaudioinfo
|
||||
call :pass testautomation
|
||||
call :pass testdraw2
|
||||
call :pass testdrawchessboard
|
||||
call :pass testerror
|
||||
call :pass testfile
|
||||
call :pass testfilesystem
|
||||
call :pass testgamecontroller
|
||||
call :pass testgesture
|
||||
call :pass testgl2
|
||||
call :pass testgles
|
||||
call :pass testhaptic
|
||||
call :pass testiconv
|
||||
call :pass testime
|
||||
call :pass testintersection
|
||||
call :pass testjoystick
|
||||
call :pass testkeys
|
||||
::call :pass testloadso
|
||||
call :pass testlock
|
||||
call :pass testmessage
|
||||
call :pass testmultiaudio
|
||||
call :pass testnative
|
||||
call :pass testoverlay2
|
||||
call :pass testplatform
|
||||
call :pass testpower
|
||||
call :pass testrelative
|
||||
call :pass testrendercopyex
|
||||
call :pass testrendertarget
|
||||
call :pass testresample sample.wav newsample.wav 44100
|
||||
call :pass testrumble
|
||||
call :pass testscale
|
||||
call :pass testsem 1
|
||||
call :pass testshader
|
||||
call :testspecial testshape .\shapes
|
||||
call :testspecial testshape .\shapes
|
||||
call :testspecial testshape .\shapes
|
||||
call :pass testsprite2
|
||||
call :pass testspriteminimal
|
||||
call :pass teststreaming
|
||||
call :pass testthread
|
||||
call :pass testtimer
|
||||
call :pass testver
|
||||
call :pass testwm2
|
||||
call :pass torturethread
|
||||
|
||||
:: leave the tests directory
|
||||
cd ..
|
||||
|
||||
:: exit batch
|
||||
goto :eof
|
||||
|
||||
:testspecial
|
||||
if not exist %1\Win32\Debug goto :eof
|
||||
cd %1\Win32\Debug
|
||||
call :randomfile %2
|
||||
cd ..\..\..
|
||||
call :pass testshape %RETURN%
|
||||
goto :eof
|
||||
|
||||
:: pass label (similar to pass function in the Xcode tests command script)
|
||||
:pass
|
||||
setlocal enabledelayedexpansion
|
||||
set args=
|
||||
set /A count=0
|
||||
for %%x IN (%*) DO (
|
||||
if NOT !count! EQU 0 set args=!args! %%x
|
||||
set /A count=%count% + 1
|
||||
)
|
||||
endlocal & set callargs=%args%
|
||||
:: if it does not exist, break procedure
|
||||
if not exist %1\Win32\Debug goto endfunc
|
||||
:: goto directory
|
||||
echo Testing: %1
|
||||
title Testing: %1
|
||||
cd %1\Win32\Debug
|
||||
:: execute test
|
||||
".\%1.exe"%callargs%
|
||||
cd ..\..\..
|
||||
pause
|
||||
:endfunc
|
||||
goto :eof
|
||||
|
||||
:randomfile
|
||||
setlocal enabledelayedexpansion
|
||||
set count=0
|
||||
if not exist %1 goto :eof
|
||||
for %%d in (%1\*.*) DO (
|
||||
set /A count=count + 1
|
||||
)
|
||||
set /A count=%RANDOM% %% %count%
|
||||
for %%d in (%1\*.*) DO (
|
||||
if !count! EQU 0 (
|
||||
set rfile=%%d
|
||||
goto endrfile
|
||||
)
|
||||
set /A count=count-1
|
||||
)
|
||||
:endrfile
|
||||
set tmprfile=!rfile!
|
||||
endlocal & set RETURN=%tmprfile%
|
||||
goto :eof
|
||||
Reference in New Issue
Block a user