Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Don't set gtnets flags if can't compile gtnets.
authornavarrop <navarrop@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Mon, 6 Dec 2010 09:37:59 +0000 (09:37 +0000)
committernavarrop <navarrop@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Mon, 6 Dec 2010 09:37:59 +0000 (09:37 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@9002 48e7efb5-ca39-0410-a469-dd3cf9ba447f

buildtools/Cmake/Modules/FindGTnets.cmake

index 8a73343..14319a4 100644 (file)
@@ -25,13 +25,36 @@ find_library(HAVE_GTNETS_LIB
 
 string(REPLACE "/libgtnets.${LIB_EXE}" ""  GTNETS_LIB_PATH "${HAVE_GTNETS_LIB}")
 
 
 string(REPLACE "/libgtnets.${LIB_EXE}" ""  GTNETS_LIB_PATH "${HAVE_GTNETS_LIB}")
 
-exec_program("${CMAKE_CXX_COMPILER} -I${HAVE_RNGSTREAM_H} -lgtnets -L${GTNETS_LIB_PATH} ${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/test_prog/prog_gtnets.cpp " OUTPUT_VARIABLE COMPILE_GTNETS_VAR)       
-if(COMPILE_GTNETS_VAR)
-       SET(HAVE_GTNETS 0)
-else(COMPILE_GTNETS_VAR)
-       SET(HAVE_GTNETS 1)
-endif(COMPILE_GTNETS_VAR)
+if(HAVE_GTNETS_LIB AND HAVE_RNGSTREAM_H)
 
 
+       exec_program("${CMAKE_CXX_COMPILER} -I${HAVE_RNGSTREAM_H} -lgtnets -L${GTNETS_LIB_PATH} ${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/test_prog/prog_gtnets.cpp " OUTPUT_VARIABLE COMPILE_GTNETS_VAR)        
+       if(COMPILE_GTNETS_VAR)
+               SET(HAVE_GTNETS 0)
+       else(COMPILE_GTNETS_VAR)
+               SET(HAVE_GTNETS 1)      
+               
+               string(REGEX MATCH "-L${GTNETS_LIB_PATH} " operation "${CMAKE_C_FLAGS}")
+               if(NOT operation)
+                       SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}-L${GTNETS_LIB_PATH} ")
+               endif(NOT operation)
+               
+               string(REGEX MATCH "-I${HAVE_RNGSTREAM_H} " operation "${CMAKE_C_FLAGS}")
+               if(NOT operation)
+                       SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}-I${HAVE_RNGSTREAM_H} ")
+               endif(NOT operation)
+               
+               SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}-I${HAVE_RNGSTREAM_H} -L${GTNETS_LIB_PATH} ")
+               
+               string(REGEX MATCH "${GTNETS_LIB_PATH}" operation "$ENV{LD_LIBRARY_PATH}")
+               if(NOT operation)
+                       message(FATAL_ERROR "\n\nTo use GTNETS don't forget to set LD_LIBRARY_PATH with \n\texport LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${GTNETS_LIB_PATH}\n\n")
+               endif(NOT operation)
+               
+       endif(COMPILE_GTNETS_VAR)
+
+else(HAVE_GTNETS_LIB AND HAVE_RNGSTREAM_H)
+message(STATUS "Gtnets is enable but can't find it. You should set LD_LIBRARY_PATH...")
+endif(HAVE_GTNETS_LIB AND HAVE_RNGSTREAM_H)
 
 message(STATUS "Looking for RngStream.h")
 if(HAVE_RNGSTREAM_H)
 
 message(STATUS "Looking for RngStream.h")
 if(HAVE_RNGSTREAM_H)
@@ -41,27 +64,11 @@ message(STATUS "Looking for RngStream.h - not found")
 endif(HAVE_RNGSTREAM_H)
 
 message(STATUS "Looking for lib gtnets patch")
 endif(HAVE_RNGSTREAM_H)
 
 message(STATUS "Looking for lib gtnets patch")
-if(HAVE_GTNETS_LIB AND HAVE_GTNETS)
+if(HAVE_GTNETS)
 message(STATUS "Looking for lib gtnets patch - found")
 message(STATUS "Looking for lib gtnets patch - found")
-else(HAVE_GTNETS_LIB AND HAVE_GTNETS)
+else(HAVE_GTNETS)
 message(STATUS "Looking for lib gtnets patch - not found")
 message(STATUS "Looking for lib gtnets patch - not found")
-endif(HAVE_GTNETS_LIB AND HAVE_GTNETS)
-
-string(REGEX MATCH "-L${GTNETS_LIB_PATH} " operation "${CMAKE_C_FLAGS}")
-if(NOT operation)
-       SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}-L${GTNETS_LIB_PATH} ")
-endif(NOT operation)
-
-string(REGEX MATCH "-I${HAVE_RNGSTREAM_H} " operation "${CMAKE_C_FLAGS}")
-if(NOT operation)
-       SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}-I${HAVE_RNGSTREAM_H} ")
-endif(NOT operation)
-
-SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}-I${HAVE_RNGSTREAM_H} -L${GTNETS_LIB_PATH} ")
-string(REGEX MATCH "${GTNETS_LIB_PATH}" operation "$ENV{LD_LIBRARY_PATH}")
-if(NOT operation)
-       message(FATAL_ERROR "\n\nTo use GTNETS don't forget to set LD_LIBRARY_PATH with \n\texport LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${GTNETS_LIB_PATH}\n\n")
-endif(NOT operation)
+endif(HAVE_GTNETS)
 
 mark_as_advanced(HAVE_GTNETS_LIB)
 mark_as_advanced(HAVE_RNGSTREAM_H)
\ No newline at end of file
 
 mark_as_advanced(HAVE_GTNETS_LIB)
 mark_as_advanced(HAVE_RNGSTREAM_H)
\ No newline at end of file