X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/80b6e62550333aa7bc79f02616c9d7d6648dfa6a..a46b3e6c423da020937c547ab7983925e4b589e0:/buildtools/Cmake/Modules/FindGTnets.cmake diff --git a/buildtools/Cmake/Modules/FindGTnets.cmake b/buildtools/Cmake/Modules/FindGTnets.cmake new file mode 100644 index 0000000000..9bb9e48cf0 --- /dev/null +++ b/buildtools/Cmake/Modules/FindGTnets.cmake @@ -0,0 +1,59 @@ +find_path(HAVE_RNGSTREAM_H RngStream.h + HINTS + $ENV{LD_LIBRARY_PATH} + PATH_SUFFIXES include include/gtnets + PATHS + /opt + /opt/local + /opt/csw + /sw + /usr +) + +find_library(HAVE_GTNETS_LIB + NAME gtnets + HINTS + $ENV{LD_LIBRARY_PATH} + PATH_SUFFIXES lib64 lib lib64/gtnets lib/gtnets + PATHS + /opt + /opt/local + /opt/csw + /sw + /usr +) + +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) + + +message(STATUS "Looking for RngStream.h") +if(HAVE_RNGSTREAM_H) +message(STATUS "Looking for RngStream.h - found") +else(HAVE_RNGSTREAM_H) +message(STATUS "Looking for RngStream.h - not found") +endif(HAVE_RNGSTREAM_H) + +message(STATUS "Looking for lib gtnets patch") +if(HAVE_GTNETS_LIB AND HAVE_GTNETS) +message(STATUS "Looking for lib gtnets patch - found") +else(HAVE_GTNETS_LIB AND HAVE_GTNETS) +message(STATUS "Looking for lib gtnets patch - not found") +endif(HAVE_GTNETS_LIB AND HAVE_GTNETS) + +#TODO NEED TO TEST IF PATHS ARE ALREADY SET BY CMAKE +SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}-I${HAVE_RNGSTREAM_H} -L${GTNETS_LIB_PATH} ") +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) + +mark_as_advanced(HAVE_GTNETS_LIB) +mark_as_advanced(HAVE_RNGSTREAM_H) \ No newline at end of file