mirror of https://github.com/encounter/SDL.git
Partial fix for bug 2758 - Android issues with NDK r10c and API-21
Sylvain When using API 21 and running on an old device (android < 5.0 ?) some function are missing. functions are (at least) : signal, sigemptyset, atof, stpcpy (strcat and strcpy), srand, rand. Very few modifications on SDL to get this working : on SDL ====== Undefine android configuration : HAVE_SIGNAL HAVE_SIGACTION HAVE_ATOF In "SDL_systrhead.c", comment out the few block of lines with "sigemptyset". Android.mk: remove the compilation of "test" directory because it contains a few rand/srand calls Also, there are more discussions about this in internet : https://groups.google.com/forum/#!topic/android-ndk/RjO9WmG9pfE http://stackoverflow.com/questions/25475055/android-ndk-load-library-cannot-locate-srand
This commit is contained in:
parent
3779bf3845
commit
4598903548
|
@ -43,7 +43,6 @@
|
||||||
#define HAVE_STDINT_H 1
|
#define HAVE_STDINT_H 1
|
||||||
#define HAVE_CTYPE_H 1
|
#define HAVE_CTYPE_H 1
|
||||||
#define HAVE_MATH_H 1
|
#define HAVE_MATH_H 1
|
||||||
#define HAVE_SIGNAL_H 1
|
|
||||||
|
|
||||||
/* C library functions */
|
/* C library functions */
|
||||||
#define HAVE_MALLOC 1
|
#define HAVE_MALLOC 1
|
||||||
|
@ -76,7 +75,6 @@
|
||||||
#define HAVE_STRTOULL 1
|
#define HAVE_STRTOULL 1
|
||||||
#define HAVE_STRTOD 1
|
#define HAVE_STRTOD 1
|
||||||
#define HAVE_ATOI 1
|
#define HAVE_ATOI 1
|
||||||
#define HAVE_ATOF 1
|
|
||||||
#define HAVE_STRCMP 1
|
#define HAVE_STRCMP 1
|
||||||
#define HAVE_STRNCMP 1
|
#define HAVE_STRNCMP 1
|
||||||
#define HAVE_STRCASECMP 1
|
#define HAVE_STRCASECMP 1
|
||||||
|
@ -103,7 +101,6 @@
|
||||||
#define HAVE_SQRTF 1
|
#define HAVE_SQRTF 1
|
||||||
#define HAVE_TAN 1
|
#define HAVE_TAN 1
|
||||||
#define HAVE_TANF 1
|
#define HAVE_TANF 1
|
||||||
#define HAVE_SIGACTION 1
|
|
||||||
#define HAVE_SETJMP 1
|
#define HAVE_SETJMP 1
|
||||||
#define HAVE_NANOSLEEP 1
|
#define HAVE_NANOSLEEP 1
|
||||||
#define HAVE_SYSCONF 1
|
#define HAVE_SYSCONF 1
|
||||||
|
|
|
@ -159,14 +159,15 @@ SDL_SYS_SetupThread(const char *name)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* NativeClient does not yet support signals.*/
|
/* NativeClient does not yet support signals.*/
|
||||||
#ifndef __NACL__
|
#if !defined(__ANDROID__) && !defined(__NACL__)
|
||||||
/* Mask asynchronous signals for this thread */
|
/* Mask asynchronous signals for this thread */
|
||||||
sigemptyset(&mask);
|
sigemptyset(&mask);
|
||||||
for (i = 0; sig_list[i]; ++i) {
|
for (i = 0; sig_list[i]; ++i) {
|
||||||
sigaddset(&mask, sig_list[i]);
|
sigaddset(&mask, sig_list[i]);
|
||||||
}
|
}
|
||||||
pthread_sigmask(SIG_BLOCK, &mask, 0);
|
pthread_sigmask(SIG_BLOCK, &mask, 0);
|
||||||
#endif
|
#endif /* !__ANDROID__ && !__NACL__ */
|
||||||
|
|
||||||
|
|
||||||
#ifdef PTHREAD_CANCEL_ASYNCHRONOUS
|
#ifdef PTHREAD_CANCEL_ASYNCHRONOUS
|
||||||
/* Allow ourselves to be asynchronously cancelled */
|
/* Allow ourselves to be asynchronously cancelled */
|
||||||
|
|
Loading…
Reference in New Issue