Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge with master
[simgrid.git] / buildtools / Cmake / Modules / FindLua51Simgrid.cmake
index 4fe6ee0..2b3c4d1 100644 (file)
@@ -1,34 +1,44 @@
-find_path(HAVE_LUA_H lua.h
-    HINTS
-    $ENV{LD_LIBRARY_PATH}
-    PATH_SUFFIXES lua/ lua/5.1/ include/ include/lua5.1/
-    PATHS
-    /opt
-    /opt/local
-    /opt/csw
-    /sw
-    /usr
-)
+include(FindLua51)
+find_program(HAVE_LUA_BIN NAMES lua)
+mark_as_advanced(HAVE_LUA_BIN)
 
-find_library(HAVE_LUA51_LIB
-    NAME lua.5.1 lua5.1
-    HINTS
-    $ENV{LD_LIBRARY_PATH}
-    PATHS
-    /opt
-    /opt/local
-    /opt/csw
-    /sw
-    /usr
-)
+message(STATUS "Looking for lua.h")
+if(LUA_INCLUDE_DIR)
+  message(STATUS "Looking for lua.h - found")
+else()
+  message(STATUS "Looking for lua.h - not found")
+endif()
 
-set(LIB_LUA_NAME ${HAVE_LUA51_LIB})
-string(REGEX MATCH "liblua.*$" LIB_LUA_NAME "${LIB_LUA_NAME}")
-string(REPLACE ".${LIB_EXE}" "" LIB_LUA_NAME "${LIB_LUA_NAME}")
-string(REPLACE "lib" "" LIB_LUA_NAME "${LIB_LUA_NAME}")
+if(HAVE_LUA_BIN)
+  message(STATUS "Found Lua: ${HAVE_LUA_BIN}")
+endif()
 
-if(HAVE_LUA_H AND HAVE_LUA51_LIB AND LIB_LUA_NAME)
- set(LUA51_FOUND 1)
- string(REPLACE "/lua.h" "" LUA_INCLUDE_DIR ${HAVE_LUA_H})
- string(REPLACE "/lib${LIB_LUA_NAME}.${LIB_EXE}" "" LUA_LIBRARY_DIR ${HAVE_LUA51_LIB})
-endif(HAVE_LUA_H AND HAVE_LUA51_LIB AND LIB_LUA_NAME)
\ No newline at end of file
+set(LIB_LUA_NAME "")
+
+foreach(lib_path ${LUA_LIBRARIES})
+  if(NOT LIB_LUA_NAME)
+    string(REGEX MATCH "liblua.*$" LIB_LUA_NAME "${lib_path}")
+    string(REPLACE ".${LIB_EXE}" "" LIB_LUA_NAME "${LIB_LUA_NAME}")
+    string(REPLACE "lib" "" LIB_LUA_NAME "${LIB_LUA_NAME}")
+    if(LIB_LUA_NAME)
+      string(REPLACE "/lib${LIB_LUA_NAME}.${LIB_EXE}" "" LUA_LIBRARY_DIR ${lib_path})
+    endif()
+  endif()
+endforeach(lib_path ${LUA_LIBRARIES})
+
+message(STATUS "Looking for lib lua")
+if(LUA_LIBRARY_DIR)
+  message(STATUS "Looking for lib lua - found")
+  message(STATUS "Lua version: ${LIB_LUA_NAME}")
+  message(STATUS "Lib path   : ${LUA_LIBRARY_DIR}")
+else()
+  message(STATUS "Looking for lib lua - not found")
+endif()
+
+if(LUA51_FOUND)
+  set(HAVE_LUA 1)
+  include_directories(${LUA_INCLUDE_DIR})
+  link_directories(${LUA_LIBRARY_DIR})
+else()
+  message(STATUS "Warning : Lua need version 5.1")
+endif()