diff options
author | Mike Pall <mike> | 2016-04-03 19:07:19 +0200 |
---|---|---|
committer | Mike Pall <mike> | 2016-04-03 19:07:19 +0200 |
commit | 4ab6367b21527a20b76ce356153bc454e082b7d2 (patch) | |
tree | 2c2b7939f4289b32755689cfb19e4d6f62739ca5 /src | |
parent | 62af10152433c45e5d83e442538fabf1f57f189b (diff) | |
download | luajit-4ab6367b21527a20b76ce356153bc454e082b7d2.tar.gz luajit-4ab6367b21527a20b76ce356153bc454e082b7d2.tar.bz2 luajit-4ab6367b21527a20b76ce356153bc454e082b7d2.zip |
Cygwin: Allow cross-builds to non-Cygwin targets.
Diffstat (limited to 'src')
-rw-r--r-- | src/lj_alloc.c | 2 | ||||
-rw-r--r-- | src/lj_arch.h | 9 | ||||
-rw-r--r-- | src/lj_clib.c | 8 |
3 files changed, 11 insertions, 8 deletions
diff --git a/src/lj_alloc.c b/src/lj_alloc.c index 9218c440..dc64dca9 100644 --- a/src/lj_alloc.c +++ b/src/lj_alloc.c | |||
@@ -194,7 +194,7 @@ static LJ_AINLINE void *CALL_MMAP(size_t size) | |||
194 | return ptr; | 194 | return ptr; |
195 | } | 195 | } |
196 | 196 | ||
197 | #elif LJ_TARGET_OSX || LJ_TARGET_PS4 || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) || defined(__sun__) || defined(__CYGWIN__) | 197 | #elif LJ_TARGET_OSX || LJ_TARGET_PS4 || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) || defined(__sun__) || LJ_TARGET_CYGWIN |
198 | 198 | ||
199 | /* OSX and FreeBSD mmap() use a naive first-fit linear search. | 199 | /* OSX and FreeBSD mmap() use a naive first-fit linear search. |
200 | ** That's perfect for us. Except that -pagezero_size must be set for OSX, | 200 | ** That's perfect for us. Except that -pagezero_size must be set for OSX, |
diff --git a/src/lj_arch.h b/src/lj_arch.h index 906cc11f..32789b44 100644 --- a/src/lj_arch.h +++ b/src/lj_arch.h | |||
@@ -70,7 +70,10 @@ | |||
70 | defined(__NetBSD__) || defined(__OpenBSD__) || \ | 70 | defined(__NetBSD__) || defined(__OpenBSD__) || \ |
71 | defined(__DragonFly__)) && !defined(__ORBIS__) | 71 | defined(__DragonFly__)) && !defined(__ORBIS__) |
72 | #define LUAJIT_OS LUAJIT_OS_BSD | 72 | #define LUAJIT_OS LUAJIT_OS_BSD |
73 | #elif (defined(__sun__) && defined(__svr4__)) || defined(__CYGWIN__) | 73 | #elif (defined(__sun__) && defined(__svr4__)) |
74 | #define LUAJIT_OS LUAJIT_OS_POSIX | ||
75 | #elif defined(__CYGWIN__) | ||
76 | #define LJ_TARGET_CYGWIN 1 | ||
74 | #define LUAJIT_OS LUAJIT_OS_POSIX | 77 | #define LUAJIT_OS LUAJIT_OS_POSIX |
75 | #else | 78 | #else |
76 | #define LUAJIT_OS LUAJIT_OS_OTHER | 79 | #define LUAJIT_OS LUAJIT_OS_OTHER |
@@ -133,7 +136,7 @@ | |||
133 | #define LJ_ARCH_NAME "x86" | 136 | #define LJ_ARCH_NAME "x86" |
134 | #define LJ_ARCH_BITS 32 | 137 | #define LJ_ARCH_BITS 32 |
135 | #define LJ_ARCH_ENDIAN LUAJIT_LE | 138 | #define LJ_ARCH_ENDIAN LUAJIT_LE |
136 | #if LJ_TARGET_WINDOWS || __CYGWIN__ | 139 | #if LJ_TARGET_WINDOWS || LJ_TARGET_CYGWIN |
137 | #define LJ_ABI_WIN 1 | 140 | #define LJ_ABI_WIN 1 |
138 | #else | 141 | #else |
139 | #define LJ_ABI_WIN 0 | 142 | #define LJ_ABI_WIN 0 |
@@ -151,7 +154,7 @@ | |||
151 | #define LJ_ARCH_NAME "x64" | 154 | #define LJ_ARCH_NAME "x64" |
152 | #define LJ_ARCH_BITS 64 | 155 | #define LJ_ARCH_BITS 64 |
153 | #define LJ_ARCH_ENDIAN LUAJIT_LE | 156 | #define LJ_ARCH_ENDIAN LUAJIT_LE |
154 | #if LJ_TARGET_WINDOWS || __CYGWIN__ | 157 | #if LJ_TARGET_WINDOWS || LJ_TARGET_CYGWIN |
155 | #define LJ_ABI_WIN 1 | 158 | #define LJ_ABI_WIN 1 |
156 | #else | 159 | #else |
157 | #define LJ_ABI_WIN 0 | 160 | #define LJ_ABI_WIN 0 |
diff --git a/src/lj_clib.c b/src/lj_clib.c index 8389ee78..4f17d578 100644 --- a/src/lj_clib.c +++ b/src/lj_clib.c | |||
@@ -39,7 +39,7 @@ LJ_NORET LJ_NOINLINE static void clib_error_(lua_State *L) | |||
39 | 39 | ||
40 | #define clib_error(L, fmt, name) clib_error_(L) | 40 | #define clib_error(L, fmt, name) clib_error_(L) |
41 | 41 | ||
42 | #if defined(__CYGWIN__) | 42 | #if LJ_TARGET_CYGWIN |
43 | #define CLIB_SOPREFIX "cyg" | 43 | #define CLIB_SOPREFIX "cyg" |
44 | #else | 44 | #else |
45 | #define CLIB_SOPREFIX "lib" | 45 | #define CLIB_SOPREFIX "lib" |
@@ -47,7 +47,7 @@ LJ_NORET LJ_NOINLINE static void clib_error_(lua_State *L) | |||
47 | 47 | ||
48 | #if LJ_TARGET_OSX | 48 | #if LJ_TARGET_OSX |
49 | #define CLIB_SOEXT "%s.dylib" | 49 | #define CLIB_SOEXT "%s.dylib" |
50 | #elif defined(__CYGWIN__) | 50 | #elif LJ_TARGET_CYGWIN |
51 | #define CLIB_SOEXT "%s.dll" | 51 | #define CLIB_SOEXT "%s.dll" |
52 | #else | 52 | #else |
53 | #define CLIB_SOEXT "%s.so" | 53 | #define CLIB_SOEXT "%s.so" |
@@ -56,14 +56,14 @@ LJ_NORET LJ_NOINLINE static void clib_error_(lua_State *L) | |||
56 | static const char *clib_extname(lua_State *L, const char *name) | 56 | static const char *clib_extname(lua_State *L, const char *name) |
57 | { | 57 | { |
58 | if (!strchr(name, '/') | 58 | if (!strchr(name, '/') |
59 | #ifdef __CYGWIN__ | 59 | #if LJ_TARGET_CYGWIN |
60 | && !strchr(name, '\\') | 60 | && !strchr(name, '\\') |
61 | #endif | 61 | #endif |
62 | ) { | 62 | ) { |
63 | if (!strchr(name, '.')) { | 63 | if (!strchr(name, '.')) { |
64 | name = lj_str_pushf(L, CLIB_SOEXT, name); | 64 | name = lj_str_pushf(L, CLIB_SOEXT, name); |
65 | L->top--; | 65 | L->top--; |
66 | #ifdef __CYGWIN__ | 66 | #if LJ_TARGET_CYGWIN |
67 | } else { | 67 | } else { |
68 | return name; | 68 | return name; |
69 | #endif | 69 | #endif |