Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/torch/luajit-rocks.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRonan Collobert <locronan@fb.com>2017-04-19 03:41:10 +0300
committerRonan Collobert <locronan@fb.com>2017-04-19 03:41:10 +0300
commit38429af5a15c573b74dbef7077a4dd85dc402318 (patch)
tree8f73cc1bb069b33097a520048b2f72bd4c1c3cef
parent87c6475363613b0508e92e788a723267cdf3e51d (diff)
luajit 2.{0,1}: fixing/improving CMakeLists.txt
-rw-r--r--luajit-2.0/CMakeLists.txt39
-rw-r--r--luajit-2.1/CMakeLists.txt64
2 files changed, 68 insertions, 35 deletions
diff --git a/luajit-2.0/CMakeLists.txt b/luajit-2.0/CMakeLists.txt
index 702f56d..3c2ae0a 100644
--- a/luajit-2.0/CMakeLists.txt
+++ b/luajit-2.0/CMakeLists.txt
@@ -87,44 +87,49 @@ MARK_AS_ADVANCED(
LUA_USE_ASSERT
)
+MACRO(ADD_MANDATORY_DEFINITIONS stuff)
+ ADD_DEFINITIONS(${stuff})
+ SET(CMAKE_REQUIRED_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} ${stuff})
+ENDMACRO()
+
IF(LUAJIT_DISABLE_FFI)
- ADD_DEFINITIONS(-DLUAJIT_DISABLE_FFI)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_DISABLE_FFI)
ENDIF()
IF(LUAJIT_ENABLE_LUA52COMPAT)
- ADD_DEFINITIONS(-DLUAJIT_ENABLE_LUA52COMPAT)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_ENABLE_LUA52COMPAT)
ENDIF()
IF(LUAJIT_DISABLE_JIT)
- ADD_DEFINITIONS(-DLUAJIT_DISABLE_JIT)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_DISABLE_JIT)
ENDIF()
IF(LUAJIT_CPU_SSE2)
- ADD_DEFINITIONS(-DLUAJIT_CPU_SSE2)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_CPU_SSE2)
ENDIF()
IF(LUAJIT_CPU_NOCMOV)
- ADD_DEFINITIONS(-DLUAJIT_CPU_NOCMOV)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_CPU_NOCMOV)
ENDIF()
IF(LUAJIT_USE_SYSMALLOC)
- ADD_DEFINITIONS(-DLUAJIT_USE_SYSMALLOC)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_USE_SYSMALLOC)
ENDIF()
IF(LUAJIT_USE_VALGRIND)
- ADD_DEFINITIONS(-DLUAJIT_USE_VALGRIND)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_USE_VALGRIND)
ENDIF()
IF(LUAJIT_USE_GDBJIT)
- ADD_DEFINITIONS(-DLUAJIT_USE_GDBJIT)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_USE_GDBJIT)
ENDIF()
IF(LUA_USE_APICHECK)
- ADD_DEFINITIONS(-DLUA_USE_APICHECK)
+ ADD_MANDATORY_DEFINITIONS(-DLUA_USE_APICHECK)
ENDIF()
IF(LUA_USE_ASSERT)
- ADD_DEFINITIONS(-DLUA_USE_ASSERT)
+ ADD_MANDATORY_DEFINITIONS(-DLUA_USE_ASSERT)
ENDIF()
######
@@ -137,9 +142,8 @@ ENDIF()
if ( WIN32 AND NOT CYGWIN )
set(LUA_BUILD_AS_DLL 1)
add_definitions ( -DLUA_BUILD_AS_DLL -DLUAJIT_OS=LUAJIT_OS_WINDOWS)
- set ( LJVM_MODE coffasm )
+ set ( LJVM_MODE peobj )
elseif ( APPLE )
- set ( CMAKE_EXE_LINKER_FLAGS "-pagezero_size 10000 -image_base 100000000 ${CMAKE_EXE_LINKER_FLAGS}" )
set ( LJVM_MODE machasm )
else ()
set ( LJVM_MODE elfasm )
@@ -212,8 +216,6 @@ ENDFOREACH()
IF(NOT TARGET_LJARCH)
MESSAGE(FATAL_ERROR "architecture not supported")
-ELSE()
- MESSAGE(STATUS "LuaJIT target ${TARGET_LJARCH}")
ENDIF()
SET(DASM_ARCH ${TARGET_LJARCH})
@@ -250,6 +252,11 @@ IF(NOT LJ_ABI_SOFTFP_1)
ELSE()
LIST(APPEND TARGET_ARCH "LJ_ABI_SOFTFP=1")
ENDIF()
+LJ_TEST_ARCH_VALUE(LJ_NO_UNWIND 1)
+IF(LJ_NO_UNWIND_1)
+ SET(DASM_FLAGS ${DASM_FLAGS} -D NO_UNWIND)
+ LIST(APPEND TARGET_ARCH "LUAJIT_NO_UNWIND")
+ENDIF()
IF(WIN32)
SET(DASM_FLAGS ${DASM_FLAGS} -LN -D WIN)
ENDIF()
@@ -260,6 +267,10 @@ IF(TARGET_LJARCH STREQUAL "x86")
ENDIF()
ENDIF()
IF(TARGET_LJARCH STREQUAL "x64")
+ IF(APPLE)
+ set ( CMAKE_EXE_LINKER_FLAGS "-pagezero_size 10000 -image_base 100000000 ${CMAKE_EXE_LINKER_FLAGS}" )
+ set ( CMAKE_SHARED_LINKER_FLAGS "-image_base 7fff04c4a000" ${CMAKE_SHARED_LINKER_FLAGS})
+ ENDIF()
SET(DASM_ARCH "x86")
ENDIF()
IF(TARGET_LJARCH STREQUAL "ppc")
diff --git a/luajit-2.1/CMakeLists.txt b/luajit-2.1/CMakeLists.txt
index c59eae9..fb50ef6 100644
--- a/luajit-2.1/CMakeLists.txt
+++ b/luajit-2.1/CMakeLists.txt
@@ -74,6 +74,8 @@ option ( LUAJIT_USE_GDBJIT "Luajit uses GDBJIT?" OFF )
option ( LUA_USE_APICHECK "LuaJIT does API checks?" OFF )
option ( LUA_USE_ASSERT "LuaJIT does asserts?" OFF )
+option ( LUAJIT_ENABLE_GC64 "LuaJIT 64 bits support" OFF )
+
MARK_AS_ADVANCED(
LUAJIT_DISABLE_FFI
LUAJIT_ENABLE_LUA52COMPAT
@@ -85,46 +87,56 @@ MARK_AS_ADVANCED(
LUAJIT_USE_GDBJIT
LUA_USE_APICHECK
LUA_USE_ASSERT
+ LUAJIT_ENABLE_GC64
)
+MACRO(ADD_MANDATORY_DEFINITIONS stuff)
+ ADD_DEFINITIONS(${stuff})
+ SET(CMAKE_REQUIRED_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} ${stuff})
+ENDMACRO()
+
IF(LUAJIT_DISABLE_FFI)
- ADD_DEFINITIONS(-DLUAJIT_DISABLE_FFI)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_DISABLE_FFI)
ENDIF()
IF(LUAJIT_ENABLE_LUA52COMPAT)
- ADD_DEFINITIONS(-DLUAJIT_ENABLE_LUA52COMPAT)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_ENABLE_LUA52COMPAT)
ENDIF()
IF(LUAJIT_DISABLE_JIT)
- ADD_DEFINITIONS(-DLUAJIT_DISABLE_JIT)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_DISABLE_JIT)
ENDIF()
IF(LUAJIT_CPU_SSE2)
- ADD_DEFINITIONS(-DLUAJIT_CPU_SSE2)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_CPU_SSE2)
ENDIF()
IF(LUAJIT_CPU_NOCMOV)
- ADD_DEFINITIONS(-DLUAJIT_CPU_NOCMOV)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_CPU_NOCMOV)
ENDIF()
IF(LUAJIT_USE_SYSMALLOC)
- ADD_DEFINITIONS(-DLUAJIT_USE_SYSMALLOC)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_USE_SYSMALLOC)
ENDIF()
IF(LUAJIT_USE_VALGRIND)
- ADD_DEFINITIONS(-DLUAJIT_USE_VALGRIND)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_USE_VALGRIND)
ENDIF()
IF(LUAJIT_USE_GDBJIT)
- ADD_DEFINITIONS(-DLUAJIT_USE_GDBJIT)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_USE_GDBJIT)
ENDIF()
IF(LUA_USE_APICHECK)
- ADD_DEFINITIONS(-DLUA_USE_APICHECK)
+ ADD_MANDATORY_DEFINITIONS(-DLUA_USE_APICHECK)
ENDIF()
IF(LUA_USE_ASSERT)
- ADD_DEFINITIONS(-DLUA_USE_ASSERT)
+ ADD_MANDATORY_DEFINITIONS(-DLUA_USE_ASSERT)
+ENDIF()
+
+IF(LUAJIT_ENABLE_GC64)
+ ADD_MANDATORY_DEFINITIONS(-DLUAJIT_ENABLE_GC64)
ENDIF()
######
@@ -137,9 +149,8 @@ ENDIF()
if ( WIN32 AND NOT CYGWIN )
set(LUA_BUILD_AS_DLL 1)
add_definitions ( -DLUA_BUILD_AS_DLL -DLUAJIT_OS=LUAJIT_OS_WINDOWS)
- set ( LJVM_MODE coffasm )
+ set ( LJVM_MODE peobj )
elseif ( APPLE )
- set ( CMAKE_EXE_LINKER_FLAGS "-pagezero_size 10000 -image_base 100000000 ${CMAKE_EXE_LINKER_FLAGS}" )
set ( LJVM_MODE machasm )
else ()
set ( LJVM_MODE elfasm )
@@ -217,14 +228,18 @@ ENDFOREACH()
IF(NOT TARGET_LJARCH)
MESSAGE(FATAL_ERROR "architecture not supported")
-ELSE()
- MESSAGE(STATUS "LuaJIT target ${TARGET_LJARCH}")
ENDIF()
SET(DASM_ARCH ${TARGET_LJARCH})
SET(DASM_FLAGS)
SET(TARGET_ARCH)
LIST(APPEND TARGET_ARCH "LUAJIT_TARGET=LUAJIT_ARCH_${TARGET_LJARCH}")
+LJ_TEST_ARCH_VALUE(LJ_LE 1)
+IF(LJ_LE_1)
+ SET(DASM_FLAGS ${DASM_FLAGS} -D ENDIAN_LE)
+ELSEIF()
+ SET(DASM_FLAGS ${DASM_FLAGS} -D ENDIAN_BE)
+ENDIF()
LJ_TEST_ARCH_VALUE(LJ_ARCH_BITS 64)
IF(LJ_ARCH_BITS_64)
SET(DASM_FLAGS ${DASM_FLAGS} -D P64)
@@ -255,17 +270,24 @@ IF(NOT LJ_ABI_SOFTFP_1)
ELSE()
LIST(APPEND TARGET_ARCH "LJ_ABI_SOFTFP=1")
ENDIF()
+LJ_TEST_ARCH_VALUE(LJ_NO_UNWIND 1)
+IF(LJ_NO_UNWIND_1)
+ SET(DASM_FLAGS ${DASM_FLAGS} -D NO_UNWIND)
+ LIST(APPEND TARGET_ARCH "LUAJIT_NO_UNWIND")
+ENDIF()
IF(WIN32)
SET(DASM_FLAGS ${DASM_FLAGS} -LN -D WIN)
ENDIF()
-IF(TARGET_LJARCH STREQUAL "x86")
- LJ_TEST_ARCH_VALUE(__SSE2__ 1)
- IF(__SSE2__1)
- SET(DASM_FLAGS ${DASM_FLAGS} -D SSE)
- ENDIF()
-ENDIF()
IF(TARGET_LJARCH STREQUAL "x64")
- SET(DASM_ARCH "x86")
+ IF(APPLE)
+ set ( CMAKE_EXE_LINKER_FLAGS "-pagezero_size 10000 -image_base 100000000 ${CMAKE_EXE_LINKER_FLAGS}" )
+ set ( CMAKE_SHARED_LINKER_FLAGS "-image_base 7fff04c4a000" ${CMAKE_SHARED_LINKER_FLAGS})
+ ENDIF()
+
+ LJ_TEST_ARCH_VALUE(LJ_FR2 1)
+ IF(NOT LJ_FR2_1)
+ SET(DASM_ARCH "x86")
+ ENDIF()
ENDIF()
IF(TARGET_LJARCH STREQUAL "ppc")
LJ_TEST_ARCH_VALUE(LJ_ARCH_SQRT 1)