Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
fix on libpcre detection by cmake
[simgrid.git] / buildtools / Cmake / CompleteInFiles.cmake
index e97750e..f7f8daf 100644 (file)
@@ -41,6 +41,7 @@ CHECK_INCLUDE_FILE("stdlib.h" HAVE_STDLIB_H)
 CHECK_INCLUDE_FILE("strings.h" HAVE_STRINGS_H)
 CHECK_INCLUDE_FILE("string.h" HAVE_STRING_H)
 CHECK_INCLUDE_FILE("ucontext.h" HAVE_UCONTEXT_H)
+CHECK_INCLUDE_FILE("stdio.h" HAVE_STDIO_H)
 
 CHECK_FUNCTION_EXISTS(gettimeofday HAVE_GETTIMEOFDAY)
 CHECK_FUNCTION_EXISTS(usleep HAVE_USLEEP)
@@ -88,11 +89,11 @@ if(enable_lua)
                foreach(path_lua ${LUA_LIBRARIES})
                string(REGEX REPLACE "liblua.*" "" path_lua_to_use ${path_lua})
                string(REGEX MATCH ".*lua.*" operation "${path_lua}")
-               if(NOT operation)
+               if(operation)
                        string(REGEX REPLACE "${path_lua_to_use}" "" liblua ${path_lua})
                        string(REPLACE "lib" "" liblua "${liblua}")
                        string(REGEX REPLACE "[.][^.]*$" "" liblua "${liblua}")                 
-               endif(NOT operation)
+               endif(operation)
                endforeach(path_lua ${LUA_LIBRARIES})
        else(LUA51_FOUND)
                message("Lua binding need version 5.1 and cmake version 2.8")
@@ -180,14 +181,30 @@ mark_as_advanced(HAVE_CGRAPH_H)
 if(HAVE_CGRAPH_LIB AND HAVE_CGRAPH_H)
        string(REGEX REPLACE "/libcgraph.*" "" lib_cgraph ${HAVE_CGRAPH_LIB})
        string(REPLACE "/cgraph.h" "" file_cgraph_h ${HAVE_CGRAPH_H})
-               
        string(REGEX MATCH "-I${file_cgraph_h} " operation "${CMAKE_C_FLAGS}")
        if(NOT operation)
                SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}-I${file_cgraph_h} ")
        endif(NOT operation)
+       string(REGEX MATCH "-L${lib_cgraph} " operation "${CMAKE_C_FLAGS}")
+       if(NOT operation)
+               SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}-L${lib_cgraph} ")
+       endif(NOT operation)
        
 endif(HAVE_CGRAPH_LIB AND HAVE_CGRAPH_H)
 
+#--------------------------------------------------------------------------------------------------
+### Initialize of pcre
+find_library(PATH_PCRE_LIB pcre "/usr/lib/")
+
+if(PATH_PCRE_LIB)
+       string(REGEX REPLACE "/libpcre.*[.]so$" "" PATHLIBPCRE "${PCRE_LIB}")
+               string(REGEX MATCH "-L${PATHLIBPCRE} " operation "${CMAKE_C_FLAGS}")
+               if(NOT operation)
+                       SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}-L${PATHLIBPCRE} ")
+               endif(NOT operation)
+       set(HAVE_PCRE_LIB 1)
+endif(PATH_PCRE_LIB)
+
 #--------------------------------------------------------------------------------------------------
 ### Initialize of CONTEXT THREADS
 
@@ -711,6 +728,7 @@ set(includedir ${prefix}/include)
 set(top_builddir ${PROJECT_DIRECTORY})
 set(libdir ${exec_prefix}/lib)
 set(CMAKE_LINKARGS "${CMAKE_CURRENT_BINARY_DIR}/lib")
+set(CMAKE_SMPI_COMMAND "export LD_LIBRARY_PATH=${CMAKE_CURRENT_BINARY_DIR}/lib:${gtnets_path}/lib:$LD_LIBRARY_PATH")
 
 configure_file(${PROJECT_DIRECTORY}/src/smpi/smpicc.in ${CMAKE_CURRENT_BINARY_DIR}/bin/smpicc @ONLY)
 configure_file(${PROJECT_DIRECTORY}/src/smpi/smpirun.in ${CMAKE_CURRENT_BINARY_DIR}/bin/smpirun @ONLY)