X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ff2c445076022fd70eac05aaa740a8d1e2cd39ec..bd2cc559baa36beefbd93b6f353a948a85f257d8:/buildtools/Cmake/CompleteInFiles.cmake?ds=sidebyside diff --git a/buildtools/Cmake/CompleteInFiles.cmake b/buildtools/Cmake/CompleteInFiles.cmake index e3d4bd8fb7..01e184decb 100644 --- a/buildtools/Cmake/CompleteInFiles.cmake +++ b/buildtools/Cmake/CompleteInFiles.cmake @@ -177,6 +177,8 @@ CHECK_FUNCTION_EXISTS(vasprintf HAVE_VASPRINTF) CHECK_FUNCTION_EXISTS(makecontext HAVE_MAKECONTEXT) CHECK_FUNCTION_EXISTS(mmap HAVE_MMAP) CHECK_FUNCTION_EXISTS(process_vm_readv HAVE_PROCESS_VM_READV) +CHECK_FUNCTION_EXISTS(strdup SIMGRID_HAVE_STRDUP) +CHECK_FUNCTION_EXISTS(_strdup SIMGRID_HAVE__STRDUP) #Check if __thread is defined execute_process( @@ -449,12 +451,7 @@ if(WIN32) endif() endif() -IF(CMAKE_CROSSCOMPILING) - IF(WIN32) - set(windows_context "yes") - set(IS_WINDOWS 1) - ENDIF() -ELSE() +IF(NOT CMAKE_CROSSCOMPILING) file(REMOVE "${CMAKE_BINARY_DIR}/testprog*") file(REMOVE ${CMAKE_BINARY_DIR}/conftestval) set(MCSC_buildcmd ${CMAKE_C_COMPILER} ${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/test_prog/prog_AC_CHECK_MCSC.c ${mcsc_flags} -o testprog) @@ -488,15 +485,6 @@ ELSE() message(STATUS "mcsc: ${mcsc}") ENDIF() -if(mcsc MATCHES "no" AND pthread) - if(HAVE_WINDOWS_H) - set(windows_context "yes") - set(IS_WINDOWS 1) - elseif(HAVE_WINDOWS_H) - message(FATAL_ERROR "no appropriate backend found") - endif() -endif() - #Only windows if(WIN32) @@ -505,10 +493,6 @@ if(WIN32) endif() endif() -if(windows_context MATCHES "yes") - message(STATUS "Context change to windows") -endif() - #If can have both context if(mcsc) @@ -632,20 +616,18 @@ if (NOT CMAKE_CROSSCOMPILING) try_run(RUN_makecontext_VAR COMPILE_makecontext_VAR ${CMAKE_BINARY_DIR} ${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/test_prog/prog_stackgrowth.c + RUN_OUTPUT_VARIABLE stack ) - if (RUN_makecontext_VAR) - file(READ "${CMAKE_BINARY_DIR}/conftestval" stack) - if(stack MATCHES "down") - set(PTH_STACKGROWTH "-1") - endif() - if(stack MATCHES "up") - set(PTH_STACKGROWTH "1") - endif() - endif() endif() -if(NOT PTH_STACKGROWTH) +if("${stack}" STREQUAL "down") + set(PTH_STACKGROWTH "-1") +elseif("${stack}" STREQUAL "up") + set(PTH_STACKGROWTH "1") +else() if("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64") set(PTH_STACKGROWTH "-1") + elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "i686") + set(PTH_STACKGROWTH "-1") else() message(ERROR "Could not figure the stack direction.") endif() @@ -661,23 +643,6 @@ endif() #AC_PROG_MAKE_SET -if(CMAKE_CROSSCOMPILING) - set(RUN_PRINTF_NULL_VAR "cross") - set(COMPILE_PRINTF_NULL_VAR "cross") -else() - #AC_PRINTF_NULL FIXME: this is too ancient to survive! - try_run(RUN_PRINTF_NULL_VAR COMPILE_PRINTF_NULL_VAR - ${CMAKE_BINARY_DIR} - ${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/test_prog/prog_printf_null.c - ) -endif() - -if(RUN_PRINTF_NULL_VAR MATCHES "FAILED_TO_RUN") - SET(PRINTF_NULL_WORKING "0") -else() - SET(PRINTF_NULL_WORKING "1") -endif() - #AC_CHECK_VA_COPY set(diff_va "va_copy((d),(s))"