Skip to content

Commit 4585fba

Browse files
committedFeb 16, 2014
Fix broken cross-compiling
1 parent c163859 commit 4585fba

File tree

1 file changed

+30
-25
lines changed

1 file changed

+30
-25
lines changed
 

‎src/CMakeLists.txt

+30-25
Original file line numberDiff line numberDiff line change
@@ -217,34 +217,39 @@ endif (NOT DISABLE_LUAJIT)
217217
set(USE_LUAJIT 0)
218218
if(LUA_LIBRARY AND LUA_INCLUDE_DIR)
219219
message (STATUS "LuaJIT found, checking for broken versions...")
220-
set(BACKUP_REQUIRED_INCS CMAKE_REQUIRED_INCLUDES)
221-
set(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES} ${LUA_INCLUDE_DIR}")
222-
CHECK_C_SOURCE_RUNS("
223-
#include <luajit.h>
224-
#include <stdio.h>
225-
#include <string.h>
220+
if(CMAKE_CROSSCOMPILING)
221+
message(WARNING "Cross-compiling enabled, assuming LuaJIT is not broken")
222+
set(VALID_LUAJIT_VERSION 1)
223+
elseif(CMAKE_CROSSCOMPILING)
224+
set(BACKUP_REQUIRED_INCS CMAKE_REQUIRED_INCLUDES)
225+
set(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES} ${LUA_INCLUDE_DIR}")
226+
CHECK_C_SOURCE_RUNS("
227+
#include <luajit.h>
228+
#include <stdio.h>
229+
#include <string.h>
226230
227-
static char** broken_luajit_versions = (char *[]) {
228-
\"LuaJIT 2.0.0-beta7\",
229-
\"LuaJIT 2.0.0-beta6\",
230-
\"LuaJIT 2.0.0-beta5\",
231-
\"LuaJIT 2.0.0-beta4\",
232-
\"LuaJIT 2.0.0-beta3\",
233-
\"LuaJIT 2.0.0-beta2\",
234-
\"LuaJIT 2.0.0-beta1\"
235-
};
236-
int main(int argc,char** argv) {
237-
unsigned int i = 0;
238-
for (i=0; i < sizeof(broken_luajit_versions); i++) {
239-
if (strcmp(LUAJIT_VERSION,broken_luajit_versions[i]) == 0) {
240-
return 1;
231+
static char** broken_luajit_versions = (char *[]) {
232+
\"LuaJIT 2.0.0-beta7\",
233+
\"LuaJIT 2.0.0-beta6\",
234+
\"LuaJIT 2.0.0-beta5\",
235+
\"LuaJIT 2.0.0-beta4\",
236+
\"LuaJIT 2.0.0-beta3\",
237+
\"LuaJIT 2.0.0-beta2\",
238+
\"LuaJIT 2.0.0-beta1\"
239+
};
240+
int main(int argc,char** argv) {
241+
unsigned int i = 0;
242+
for (i=0; i < sizeof(broken_luajit_versions); i++) {
243+
if (strcmp(LUAJIT_VERSION,broken_luajit_versions[i]) == 0) {
244+
return 1;
245+
}
241246
}
247+
return 0;
242248
}
243-
return 0;
244-
}
245-
"
246-
VALID_LUAJIT_VERSION)
247-
set(CMAKE_REQUIRED_INCLUDES BACKUP_REQUIRED_INCS)
249+
"
250+
VALID_LUAJIT_VERSION)
251+
set(CMAKE_REQUIRED_INCLUDES BACKUP_REQUIRED_INCS)
252+
endif(CMAKE_CROSSCOMPILING)
248253
if (VALID_LUAJIT_VERSION)
249254
message (STATUS "LuaJIT version ok")
250255
set(USE_LUAJIT 1)

0 commit comments

Comments
 (0)
Please sign in to comment.