New macro LUA_USE_IOS

Do not try to detect automatically whether system is iOS; it is
simpler and more reliable to let the programmer inform that.
This commit is contained in:
Roberto Ierusalimschy 2023-02-02 13:43:41 -03:00
parent c888ae0aea
commit cf08915d62
2 changed files with 11 additions and 12 deletions

View File

@ -138,21 +138,14 @@
/* }================================================================== */
/*
** Despite claiming to be ISO, the C library in some Apple platforms
** does not implement 'system'.
*/
#if !defined(l_system) && defined(__APPLE__) /* { */
#include "TargetConditionals.h"
#if TARGET_OS_IOS || TARGET_OS_WATCH || TARGET_OS_TV
#define l_system(cmd) ((cmd) == NULL ? 0 : -1)
#endif
#endif /* } */
#if !defined(l_system)
#if defined(LUA_USE_IOS)
/* Despite claiming to be ISO C, iOS does not implement 'system'. */
#define l_system(cmd) ((cmd) == NULL ? 0 : -1)
#else
#define l_system(cmd) system(cmd) /* default definition */
#endif
#endif
static int os_execute (lua_State *L) {

View File

@ -70,6 +70,12 @@
#endif
#if defined(LUA_USE_IOS)
#define LUA_USE_POSIX
#define LUA_USE_DLOPEN
#endif
/*
@@ LUAI_IS32INT is true iff 'int' has (at least) 32 bits.
*/