Merge pull request #1194 from Project-OSRM/better_luabind_check
better checking for luabind compilation, fixes some OSX woes
This commit is contained in:
		
						commit
						969bf95230
					
				| @ -225,18 +225,6 @@ target_link_libraries(datastructure-tests ${TBB_LIBRARIES}) | ||||
| target_link_libraries(rtree-bench ${TBB_LIBRARIES}) | ||||
| include_directories(${TBB_INCLUDE_DIR}) | ||||
| 
 | ||||
| find_package(Lua52) | ||||
| if(NOT LUA52_FOUND) | ||||
|   find_package(Lua51 REQUIRED) | ||||
|   if(NOT APPLE) | ||||
|     find_package(LuaJIT 5.1) | ||||
|   endif() | ||||
| else() | ||||
|   if(NOT APPLE) | ||||
|     find_package(LuaJIT 5.2) | ||||
|   endif() | ||||
| endif() | ||||
| 
 | ||||
| find_package( Luabind REQUIRED ) | ||||
| include(check_luabind) | ||||
| 
 | ||||
|  | ||||
| @ -1,29 +1,38 @@ | ||||
| INCLUDE (CheckCXXSourceCompiles) | ||||
| unset(LUABIND_WORKS CACHE) | ||||
| unset(LUABIND51_WORKS CACHE) | ||||
| SET (LUABIND_CHECK_SRC "#include \"lua.h\"\n#include <luabind/luabind.hpp>\n int main() { lua_State *myLuaState = luaL_newstate(); luabind::open(myLuaState);  return 0;}") | ||||
| SET (CMAKE_TRY_COMPILE_CONFIGURATION ${CMAKE_BUILD_TYPE}) | ||||
| SET (CMAKE_REQUIRED_INCLUDES "${Boost_INCLUDE_DIR};${LUABIND_INCLUDE_DIR};${LUA_INCLUDE_DIR}") | ||||
| SET (CMAKE_REQUIRED_LIBRARIES "${LUABIND_LIBRARY};${LUA_LIBRARY}") | ||||
| set (LUABIND_CHECK_SRC "#include  \"lua.h\"\n#include <luabind/luabind.hpp>\n int main() { lua_State *myLuaState = luaL_newstate(); luabind::open(myLuaState);  return 0;}") | ||||
| set (CMAKE_TRY_COMPILE_CONFIGURATION ${CMAKE_BUILD_TYPE}) | ||||
| set (CMAKE_REQUIRED_INCLUDES "${Boost_INCLUDE_DIR};${LUABIND_INCLUDE_DIR};${LUA_INCLUDE_DIR}") | ||||
| set (CMAKE_REQUIRED_LIBRARIES "${LUABIND_LIBRARY};${LUA_LIBRARY}") | ||||
| 
 | ||||
| CHECK_CXX_SOURCE_COMPILES("${LUABIND_CHECK_SRC}" LUABIND_WORKS) | ||||
| find_package(Lua52) | ||||
| if(NOT APPLE) | ||||
|   find_package(LuaJIT 5.2) | ||||
| endif() | ||||
| if(LUA52_FOUND) | ||||
|   CHECK_CXX_SOURCE_COMPILES("${LUABIND_CHECK_SRC}" LUABIND_WORKS) | ||||
| endif() | ||||
| 
 | ||||
| if( LUABIND_WORKS ) | ||||
|   MESSAGE("Luabind works with ${LUA_LIBRARY}") | ||||
|   message(STATUS "Luabind/Lua5.2 combination working with ${LUA_LIBRARY}") | ||||
| else() | ||||
|   MESSAGE("Luabind does not work with ${LUA_LIBRARY}, will try Lua 5.1.") | ||||
|   message(STATUS "Luabind/Lua5.2 not feasible, falling back to Lua 5.1.") | ||||
|   unset(LUA_FOUND CACHE) | ||||
|   unset(LUA_INCLUDE_DIR CACHE) | ||||
|   unset(LUA_LIBRARY CACHE) | ||||
|   find_package(Lua51) | ||||
|   SET (CMAKE_REQUIRED_INCLUDES "${Boost_INCLUDE_DIR};${LUABIND_INCLUDE_DIR};${LUA_INCLUDE_DIR}") | ||||
|   SET (CMAKE_REQUIRED_LIBRARIES "${LUABIND_LIBRARY};${LUA_LIBRARY}") | ||||
|   find_package(Lua51 REQUIRED) | ||||
|   if(NOT APPLE) | ||||
|     find_package(LuaJIT 5.1) | ||||
|   endif() | ||||
|   set (CMAKE_REQUIRED_INCLUDES "${Boost_INCLUDE_DIR};${LUABIND_INCLUDE_DIR};${LUA_INCLUDE_DIR}") | ||||
|   set (CMAKE_REQUIRED_LIBRARIES "${LUABIND_LIBRARY};${LUA_LIBRARY}") | ||||
| 
 | ||||
|   CHECK_CXX_SOURCE_COMPILES("${LUABIND_CHECK_SRC}" LUABIND51_WORKS) | ||||
| 
 | ||||
|   if( LUABIND51_WORKS ) | ||||
|     MESSAGE("Luabind works with Lua 5.1 at ${LUA_LIBRARY}") | ||||
|     message(STATUS "Luabind works with Lua 5.1 at ${LUA_LIBRARY}") | ||||
|   else() | ||||
|     MESSAGE(FATAL_ERROR	"Luabind does not work with Lua 5.1 at ${LUA_LIBRARY}, no working Luabind found") | ||||
|     message(FATAL_ERROR	"Luabind does not work with Lua 5.1 at ${LUA_LIBRARY}, no working Luabind found") | ||||
|   endif() | ||||
| endif() | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user