]> git.ipfire.org Git - thirdparty/LuaJIT.git/commitdiff
Cygwin: Allow cross-builds to non-Cygwin targets.
authorMike Pall <mike>
Sun, 3 Apr 2016 17:07:19 +0000 (19:07 +0200)
committerMike Pall <mike>
Sun, 3 Apr 2016 17:07:19 +0000 (19:07 +0200)
src/lj_alloc.c
src/lj_arch.h
src/lj_clib.c

index 9218c4401f1889a8a6da2eea02a66f395fdfdb5b..dc64dca9a56396ab4a46e5f8334b8144a1e3f281 100644 (file)
@@ -194,7 +194,7 @@ static LJ_AINLINE void *CALL_MMAP(size_t size)
   return ptr;
 }
 
-#elif LJ_TARGET_OSX || LJ_TARGET_PS4 || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) || defined(__sun__) || defined(__CYGWIN__)
+#elif LJ_TARGET_OSX || LJ_TARGET_PS4 || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) || defined(__sun__) || LJ_TARGET_CYGWIN
 
 /* OSX and FreeBSD mmap() use a naive first-fit linear search.
 ** That's perfect for us. Except that -pagezero_size must be set for OSX,
index 906cc11f775b34a224af56763a41df16a8fd6e76..32789b4451e98cbd5fa0319a33807f60ea8cd4f5 100644 (file)
        defined(__NetBSD__) || defined(__OpenBSD__) || \
        defined(__DragonFly__)) && !defined(__ORBIS__)
 #define LUAJIT_OS      LUAJIT_OS_BSD
-#elif (defined(__sun__) && defined(__svr4__)) || defined(__CYGWIN__)
+#elif (defined(__sun__) && defined(__svr4__))
+#define LUAJIT_OS      LUAJIT_OS_POSIX
+#elif defined(__CYGWIN__)
+#define LJ_TARGET_CYGWIN       1
 #define LUAJIT_OS      LUAJIT_OS_POSIX
 #else
 #define LUAJIT_OS      LUAJIT_OS_OTHER
 #define LJ_ARCH_NAME           "x86"
 #define LJ_ARCH_BITS           32
 #define LJ_ARCH_ENDIAN         LUAJIT_LE
-#if LJ_TARGET_WINDOWS || __CYGWIN__
+#if LJ_TARGET_WINDOWS || LJ_TARGET_CYGWIN
 #define LJ_ABI_WIN             1
 #else
 #define LJ_ABI_WIN             0
 #define LJ_ARCH_NAME           "x64"
 #define LJ_ARCH_BITS           64
 #define LJ_ARCH_ENDIAN         LUAJIT_LE
-#if LJ_TARGET_WINDOWS || __CYGWIN__
+#if LJ_TARGET_WINDOWS || LJ_TARGET_CYGWIN
 #define LJ_ABI_WIN             1
 #else
 #define LJ_ABI_WIN             0
index 8389ee787d57f3c1f7b6f01e1fc4980420e5eec2..4f17d5788581c8890b1fdf4093080ab1d3869007 100644 (file)
@@ -39,7 +39,7 @@ LJ_NORET LJ_NOINLINE static void clib_error_(lua_State *L)
 
 #define clib_error(L, fmt, name)       clib_error_(L)
 
-#if defined(__CYGWIN__)
+#if LJ_TARGET_CYGWIN
 #define CLIB_SOPREFIX  "cyg"
 #else
 #define CLIB_SOPREFIX  "lib"
@@ -47,7 +47,7 @@ LJ_NORET LJ_NOINLINE static void clib_error_(lua_State *L)
 
 #if LJ_TARGET_OSX
 #define CLIB_SOEXT     "%s.dylib"
-#elif defined(__CYGWIN__)
+#elif LJ_TARGET_CYGWIN
 #define CLIB_SOEXT     "%s.dll"
 #else
 #define CLIB_SOEXT     "%s.so"
@@ -56,14 +56,14 @@ LJ_NORET LJ_NOINLINE static void clib_error_(lua_State *L)
 static const char *clib_extname(lua_State *L, const char *name)
 {
   if (!strchr(name, '/')
-#ifdef __CYGWIN__
+#if LJ_TARGET_CYGWIN
       && !strchr(name, '\\')
 #endif
      ) {
     if (!strchr(name, '.')) {
       name = lj_str_pushf(L, CLIB_SOEXT, name);
       L->top--;
-#ifdef __CYGWIN__
+#if LJ_TARGET_CYGWIN
     } else {
       return name;
 #endif