X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/f93e9052e11177dda0653fffd4c3ead9a1dfc03b..1180bb9c605c2c429e8339be413574876893637e:/buildtools/Cmake/src/CMakeCompleteInFiles.txt diff --git a/buildtools/Cmake/src/CMakeCompleteInFiles.txt b/buildtools/Cmake/src/CMakeCompleteInFiles.txt index 4778c66b67..bc298c9fd5 100644 --- a/buildtools/Cmake/src/CMakeCompleteInFiles.txt +++ b/buildtools/Cmake/src/CMakeCompleteInFiles.txt @@ -3,9 +3,6 @@ include(CheckIncludeFile) include(CheckIncludeFiles) include(CheckLibraryExists) -find_program(SET_MAKE NAMES make) -find_program(CAT_EXE NAMES cat) - # Checks for header libraries functions. CHECK_LIBRARY_EXISTS(pthread pthread_create NO_DEFAULT_PATHS pthread) @@ -50,18 +47,102 @@ CHECK_FUNCTION_EXISTS(vsnprintf HAVE_VSNPRINTF) CHECK_FUNCTION_EXISTS(asprintf HAVE_ASPRINTF) CHECK_FUNCTION_EXISTS(vasprintf HAVE_VASPRINTF) CHECK_FUNCTION_EXISTS(makecontext HAVE_MAKECONTEXT) +CHECK_FUNCTION_EXISTS(mmap HAVE_MMAP) set(CONTEXT_UCONTEXT 0) SET(CONTEXT_THREADS 0) +SET(HAVE_RUBY 0) +set(HAVE_LUA 0) +SET(HAVE_JAVA 0) +SET(HAVE_TRACING 0) + +if(enable_tracing) + SET(HAVE_TRACING 1) +endif(enable_tracing) + +if(enable_lua) + exec_program("lua -v" OUTPUT_VARIABLE LUA_VERSION) + string(REGEX MATCH "[0-9].[0-9].[0-9]" LUA_VERSION "${LUA_VERSION}") + string(REGEX MATCH "^[0-9]" LUA_MAJOR_VERSION "${LUA_VERSION}") + string(REPLACE "${LUA_MAJOR_VERSION}." "" LUA_VERSION "${LUA_VERSION}") + string(REGEX MATCH "^[0-9]" LUA_MINOR_VERSION "${LUA_VERSION}") + string(REPLACE "${LUA_MINOR_VERSION}." "" LUA_PATCH_VERSION "${LUA_VERSION}") + + if(LUA_MAJOR_VERSION MATCHES "5" AND LUA_MINOR_VERSION MATCHES "1") + + find_path(HAVE_LUA5_1_LUALIB_H + NAMES lualib.h + PATHS "/sw/include/" "/usr/include/lua${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION}/" + ) + find_path(HAVE_LUA5_1_LAUXLIB_H + NAMES lauxlib.h + PATHS "/sw/include/" "/usr/include/lua${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION}/" + ) + find_library(LUA_LIB_PATH_1 + NAMES lua${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION} + PATHS /usr + ) + find_library(LUA_LIB_PATH_2 + NAMES lua-${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION} + PATHS /usr + ) + find_library(LUA_LIB_PATH_3 + NAMES lua.${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION}.${LUA_PATCH_VERSION} + PATHS /sw + ) + + if(HAVE_LUA5_1_LUALIB_H AND HAVE_LUA5_1_LAUXLIB_H) + set(HAVE_LUA 1) + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}-I${HAVE_LUA5_1_LUALIB_H} ") + + if(NOT HAVE_LUA5_1_LUALIB_H STREQUAL HAVE_LUA5_1_LAUXLIB_H) + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}-I${HAVE_LUA5_1_LAUXLIB_H} ") + #SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}-I${HAVE_LUA5_1_LAUXLIB_H} ") + endif(NOT HAVE_LUA5_1_LUALIB_H STREQUAL HAVE_LUA5_1_LAUXLIB_H) + endif(HAVE_LUA5_1_LUALIB_H AND HAVE_LUA5_1_LAUXLIB_H) + + if(LUA_LIB_PATH_1) + set(liblua lua${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION}) + set(lua_lib_path_to_use ${LUA_LIB_PATH_1}) + endif(LUA_LIB_PATH_1) + + if(LUA_LIB_PATH_2) + set(liblua lua-${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION}) + set(lua_lib_path_to_use ${LUA_LIB_PATH_2}) + endif(LUA_LIB_PATH_2) + + if(LUA_LIB_PATH_3) + set(liblua lua.${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION}.${LUA_PATCH_VERSION}) + set(lua_lib_path_to_use ${LUA_LIB_PATH_3}) + endif(LUA_LIB_PATH_3) + + if(NOT LUA_LIB_PATH_1 AND NOT LUA_LIB_PATH_2 AND NOT LUA_LIB_PATH_3) + set(HAVE_LUA 0) + else(NOT LUA_LIB_PATH_1 AND NOT LUA_LIB_PATH_2 AND NOT LUA_LIB_PATH_3) + string(REGEX REPLACE "liblua.*" "" lua_lib_path_to_use ${lua_lib_path_to_use}) + string(REGEX MATCH "-L${lua_lib_path_to_use}" operation "${CMAKE_EXE_LINKER_FLAGS}") + if(NOT operation) + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS}-L${lua_lib_path_to_use} ") + endif(NOT operation) + endif(NOT LUA_LIB_PATH_1 AND NOT LUA_LIB_PATH_2 AND NOT LUA_LIB_PATH_3) + + else(LUA_MAJOR_VERSION MATCHES "5" AND LUA_MINOR_VERSION MATCHES "1") + message("Lua binding need version 5.1.x actually version ${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION}.x") + endif(LUA_MAJOR_VERSION MATCHES "5" AND LUA_MINOR_VERSION MATCHES "1") + +endif(enable_lua) if(enable_ruby) include(FindRuby) if(RUBY_LIBRARY) if(RUBY_VERSION_MAJOR MATCHES "1" AND RUBY_VERSION_MINOR MATCHES "8") - string(REGEX REPLACE "libruby.*" "" LIB_RUBY_PATH "${RUBY_LIBRARY}") - string(REPLACE "${LIB_RUBY_PATH}lib" "" LIB_RUBY_VERSION "${RUBY_LIBRARY}") - string(REGEX REPLACE "[.].[a-z]$" "" LIB_RUBY_VERSION "${LIB_RUBY_VERSION}") - SET(CMAKE_EXE_LINKER_FLAGS "-L${LIB_RUBY_PATH}") + set(LIB_RUBY_VERSION "${RUBY_VERSION_MAJOR}.${RUBY_VERSION_MINOR}.${RUBY_VERSION_PATCH}") + string(REGEX MATCH "ruby.*[0-9]" RUBY_LIBRARY_NAME ${RUBY_LIBRARY}) + if(NOT RUBY_LIBRARY_NAME) + set(RUBY_LIBRARY_NAME ruby) + endif(NOT RUBY_LIBRARY_NAME) + string(REGEX REPLACE "libruby.*$" "" RUBY_LIBRARY ${RUBY_LIBRARY}) + SET(CMAKE_EXE_LINKER_FLAGS "-L${RUBY_LIBRARY}") SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}-I${RUBY_CONFIG_INCLUDE_DIR} ") #path to config.h string(COMPARE EQUAL "${RUBY_INCLUDE_DIR}" "${RUBY_CONFIG_INCLUDE_DIR}" operation) if(NOT operation) @@ -83,15 +164,10 @@ if(enable_ruby) endif(enable_ruby) -if(enable_tracing) - SET(HAVE_TRACING 1) -endif(enable_tracing) - #-------------------------------------------------------------------------------------------------- ### Initialize of CONTEXT JAVA -if(NOT enable_java) - SET(HAVE_JAVA 0) -else(NOT enable_java) + +if(enable_java) include(FindJava) include(FindJNI) if(JAVA_INCLUDE_PATH) @@ -106,7 +182,7 @@ else(NOT enable_java) else(JAVA_COMPILE AND JAVA_INCLUDE_PATH AND JAVA_INCLUDE_PATH2) SET(HAVE_JAVA 0) endif(JAVA_COMPILE AND JAVA_INCLUDE_PATH AND JAVA_INCLUDE_PATH2) -endif(NOT enable_java) +endif(enable_java) #-------------------------------------------------------------------------------------------------- ### Initialize of CONTEXT GTNETS @@ -129,9 +205,9 @@ endif(NOT enable_gtnets) ### Initialize of CONTEXT THREADS if(pthread) -set(pthread 1) + set(pthread 1) elseif(pthread) -set(pthread 0) + set(pthread 0) endif(pthread) if(pthread) @@ -180,7 +256,7 @@ try_run(RUN_mcsc_VAR COMPILE_mcsc_VAR ${PROJECT_DIRECTORY}/buildtools/Cmake/prog_test/prog_AC_CHECK_MCSC.c COMPILE_DEFINITIONS "${mcsc_flags}" ) -file(READ "${Project_BINARY_DIR}/conftestval" mcsc) +file(READ "${Simgrid_BINARY_DIR}/conftestval" mcsc) STRING(REPLACE "\n" "" mcsc ${mcsc}) if(mcsc) set(mcsc "yes") @@ -251,80 +327,6 @@ if(NOT with_context_ok) message(FATAL_ERROR "-Dwith-context must be either ucontext or pthread") endif(NOT with_context_ok) -set(HAVE_LUA 0) - -if(enable_lua) - exec_program("lua -v" OUTPUT_VARIABLE LUA_VERSION) - string(REGEX MATCH "[0-9].[0-9].[0-9]" LUA_VERSION "${LUA_VERSION}") - string(REGEX MATCH "^[0-9]" LUA_MAJOR_VERSION "${LUA_VERSION}") - string(REPLACE "${LUA_MAJOR_VERSION}." "" LUA_VERSION "${LUA_VERSION}") - string(REGEX MATCH "^[0-9]" LUA_MINOR_VERSION "${LUA_VERSION}") - string(REPLACE "${LUA_MINOR_VERSION}." "" LUA_PATCH_VERSION "${LUA_VERSION}") - - if(LUA_MAJOR_VERSION MATCHES "5" AND LUA_MINOR_VERSION MATCHES "1") - - find_path(HAVE_LUA5_1_LUALIB_H - NAMES lualib.h - PATHS "/sw/include/" "/usr/include/lua${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION}/" - ) - find_path(HAVE_LUA5_1_LAUXLIB_H - NAMES lauxlib.h - PATHS "/sw/include/" "/usr/include/lua${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION}/" - ) - find_library(LUA_LIB_PATH_1 - NAMES lua${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION} - PATHS /usr - ) - find_library(LUA_LIB_PATH_2 - NAMES lua-${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION} - PATHS /usr - ) - find_library(LUA_LIB_PATH_3 - NAMES lua.${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION}.${LUA_PATCH_VERSION} - PATHS /sw - ) - - if(HAVE_LUA5_1_LUALIB_H AND HAVE_LUA5_1_LAUXLIB_H) - set(HAVE_LUA 1) - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}-I${HAVE_LUA5_1_LUALIB_H} ") - - if(NOT HAVE_LUA5_1_LUALIB_H STREQUAL HAVE_LUA5_1_LAUXLIB_H) - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}-I${HAVE_LUA5_1_LAUXLIB_H} ") - #SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}-I${HAVE_LUA5_1_LAUXLIB_H} ") - endif(NOT HAVE_LUA5_1_LUALIB_H STREQUAL HAVE_LUA5_1_LAUXLIB_H) - endif(HAVE_LUA5_1_LUALIB_H AND HAVE_LUA5_1_LAUXLIB_H) - - if(LUA_LIB_PATH_1) - set(liblua lua${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION}) - set(lua_lib_path_to_use ${LUA_LIB_PATH_1}) - endif(LUA_LIB_PATH_1) - - if(LUA_LIB_PATH_2) - set(liblua lua-${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION}) - set(lua_lib_path_to_use ${LUA_LIB_PATH_2}) - endif(LUA_LIB_PATH_2) - - if(LUA_LIB_PATH_3) - set(liblua lua.${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION}.${LUA_PATCH_VERSION}) - set(lua_lib_path_to_use ${LUA_LIB_PATH_3}) - endif(LUA_LIB_PATH_3) - - if(NOT LUA_LIB_PATH_1 AND NOT LUA_LIB_PATH_2 AND NOT LUA_LIB_PATH_3) - set(HAVE_LUA 0) - else(NOT LUA_LIB_PATH_1 AND NOT LUA_LIB_PATH_2 AND NOT LUA_LIB_PATH_3) - string(REGEX REPLACE "liblua.*" "" lua_lib_path_to_use ${lua_lib_path_to_use}) - string(REGEX MATCH "-L${lua_lib_path_to_use}" operation "${CMAKE_EXE_LINKER_FLAGS}") - if(NOT operation) - SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS}-L${lua_lib_path_to_use} ") - endif(NOT operation) - endif(NOT LUA_LIB_PATH_1 AND NOT LUA_LIB_PATH_2 AND NOT LUA_LIB_PATH_3) - - else(LUA_MAJOR_VERSION MATCHES "5" AND LUA_MINOR_VERSION MATCHES "1") - message("Lua binding need version 5.1.x actually version ${LUA_MAJOR_VERSION}.${LUA_MINOR_VERSION}.x") - endif(LUA_MAJOR_VERSION MATCHES "5" AND LUA_MINOR_VERSION MATCHES "1") - -endif(enable_lua) - ############### ## SVN version check ## @@ -466,7 +468,7 @@ if(HAVE_MAKECONTEXT) COMPILE_DEFINITIONS "${makecontext_CPPFLAGS} ${makecontext_CPPFLAGS_2}" ) - file(READ ${Project_BINARY_DIR}/conftestval MAKECONTEXT_ADDR_SIZE) + file(READ ${Simgrid_BINARY_DIR}/conftestval MAKECONTEXT_ADDR_SIZE) string(REPLACE "\n" "" MAKECONTEXT_ADDR_SIZE "${MAKECONTEXT_ADDR_SIZE}") string(REGEX MATCH ;^.*,;MAKECONTEXT_ADDR "${MAKECONTEXT_ADDR_SIZE}") string(REGEX MATCH ;,.*$; MAKECONTEXT_SIZE "${MAKECONTEXT_ADDR_SIZE}") @@ -485,7 +487,7 @@ endif(HAVE_MAKECONTEXT) ${PROJECT_DIRECTORY} ${PROJECT_DIRECTORY}/buildtools/Cmake/prog_test/prog_stackgrowth.c ) -file(READ "${Project_BINARY_DIR}/conftestval" stack) +file(READ "${Simgrid_BINARY_DIR}/conftestval" stack) if(stack MATCHES "down") set(PTH_STACKGROWTH "-1") endif(stack MATCHES "down")