Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Add flags for ruby when enable_ruby.
[simgrid.git] / buildtools / CPACK / src / CMakeCompleteInFiles.txt
index 4578d94..67da361 100644 (file)
@@ -4,6 +4,17 @@ include(CheckIncludeFiles)
 include(CheckLibraryExists)
 set(CONTEXT_UCONTEXT 0)
 SET(CONTEXT_THREADS 0)
+SET(HAVE_RUBY_H 0)
+SET(RUBY_PATH "non")
+find_program(FIND_EXE NAMES find)
+exec_program("${FIND_EXE} /usr/lib -name ruby.h" OUTPUT_VARIABLE RUBY_PATH)
+string(REPLACE "/ruby.h" "/" RUBY_PATH ${RUBY_PATH})
+#message("RUBY_PATH ${RUBY_PATH}")
+
+if(NOT disable_ruby AND RUBY_PATH)
+       SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -I${RUBY_PATH} -I${PROJECT_DIRECTORY}/src/bindings/ruby -I${PROJECT_DIRECTORY}/src/simix -fPIC ")
+       SET(HAVE_RUBY_H 1)
+endif(NOT disable_ruby AND RUBY_PATH)
 
 #--------------------------------------------------------------------------------------------------
 ### Initialize of CONTEXT JAVA
@@ -28,18 +39,16 @@ endif(disable_java)
 if(disable_gtnets)
        SET(HAVE_GTNETS 0)
 else(disable_gtnets)
-       set(GTNETS_LDFLAGS "-lgtnets -L${gtnets_path}/lib")
-       set(GTNETS_CPPFLAGS "-I${gtnets_path}/include -I${gtnets_path}/include/gtnets")
-       exec_program("${CMAKE_CXX_COMPILER} ${GTNETS_CPPFLAGS} ${GTNETS_LDFLAGS} ${PROJECT_DIRECTORY}/CPACK/prog_test/prog_gtnets.cpp" OUTPUT_VARIABLE COMPILE_GTNETS_VAR)      
+       SET(BUILDNAME "GTNETS" CACHE TYPE INTERNAL FORCE)
+       set(GTNETS_LDFLAGS "-L${gtnets_path}/lib")
+       set(GTNETS_CPPFLAGS "-I${gtnets_path}/include/gtnets")
+       exec_program("${CMAKE_CXX_COMPILER} ${GTNETS_CPPFLAGS} -lgtnets ${GTNETS_LDFLAGS} ${PROJECT_DIRECTORY}/CPACK/prog_test/prog_gtnets.cpp " OUTPUT_VARIABLE COMPILE_GTNETS_VAR)    
        if(COMPILE_GTNETS_VAR)
                SET(HAVE_GTNETS 0)
+               message("GTnetS doesn't works : set -Ddisable_gtnets=on")
        else(COMPILE_GTNETS_VAR)
                SET(HAVE_GTNETS 1)
-               set(INCLUDES
-                       ${INCLUDES}
-                       ${GTNETS_CPPFLAGS}
-               )
-               add_definitions(${GTNETS_LDFLAGS})
+               SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${GTNETS_LDFLAGS} ${GTNETS_CPPFLAGS} ")
        endif(COMPILE_GTNETS_VAR)
 endif(disable_gtnets)
 #message("HAVE_GTNETS ${HAVE_GTNETS}")
@@ -94,9 +103,15 @@ if(pthread MATCHES "yes")
 endif(pthread MATCHES "yes")
 
 # AC_CHECK_MCSC(mcsc=yes, mcsc=no) 
+set(mcsc_flags "")
+if(CMAKE_SYSTEM_NAME MATCHES "Darwin")
+       set(mcsc_flags "-D_XOPEN_SOURCE")
+endif(CMAKE_SYSTEM_NAME MATCHES "Darwin")
+
 try_run(RUN_mcsc_VAR COMPILE_mcsc_VAR
        ${PROJECT_DIRECTORY}
        ${PROJECT_DIRECTORY}/CPACK/prog_test/prog_AC_CHECK_MCSC.c
+       COMPILE_DEFINITIONS "${mcsc_flags}"
        )
 file(READ "${PROJECT_DIRECTORY}/conftestval" mcsc)
 if(mcsc MATCHES "yes")
@@ -145,8 +160,10 @@ if(with_context MATCHES "ucontext")
        else(mcsc MATCHES "yes")
                if(windows_context MATCHES "yes")
                        set(with_context "windows")
+                       message("with_context ucontext change to windows")
                else(windows_context MATCHES "yes")
                        set(with_context "pthread")
+                       message("with_context ucontext change to pthread")
                endif(windows_context MATCHES "yes")
        endif(mcsc MATCHES "yes")
 endif(with_context MATCHES "ucontext")
@@ -308,7 +325,7 @@ SET(SIZEOF_MAX ${var3})
 
 CHECK_FUNCTION_EXISTS(makecontext HAVE_MAKECONTEXT)
 #message("HAVE_MAKECONTEXT ${HAVE_MAKECONTEXT}")
-
+set(makecontext_CPPFLAGS_2 "")
 if(HAVE_MAKECONTEXT)
        set(makecontext_CPPFLAGS "-DTEST_makecontext")
        if(CMAKE_SYSTEM_NAME MATCHES "Darwin")
@@ -316,15 +333,17 @@ if(HAVE_MAKECONTEXT)
                #message("SYSTEM OSX")
        endif(CMAKE_SYSTEM_NAME MATCHES "Darwin")
 
-       exec_program("${CMAKE_C_COMPILER} ${PROJECT_DIRECTORY}/CPACK/prog_test/prog_stacksetup.c ${makecontext_CPPFLAGS} ${makecontext_CPPFLAGS_2}" OUTPUT_VARIABLE COMPILE_makecontext_VAR)
-       exec_program("${PROJECT_DIRECTORY}/CPACK/prog_test/a.out" OUTPUT_VARIABLE COMPILE_makecontext_VAR)
-
+       try_run(RUN_makecontext_VAR COMPILE_makecontext_VAR
+               ${PROJECT_DIRECTORY}
+               ${PROJECT_DIRECTORY}/CPACK/prog_test/prog_stacksetup.c
+               COMPILE_DEFINITIONS "${makecontext_CPPFLAGS} ${makecontext_CPPFLAGS_2}"
+               )
        find_program(CAT_EXE NAMES cat)
 
        exec_program("${SED_EXE}" ARGS "-e 's;,.*$;;' ${PROJECT_DIRECTORY}/conftestval" OUTPUT_VARIABLE "makecontext_addr")
        exec_program("${SED_EXE}" ARGS "-e 's;^.*,;;' ${PROJECT_DIRECTORY}/conftestval" OUTPUT_VARIABLE "makecontext_size")
-       #message("${makecontext_addr}")
-       #message("${makecontext_size}")
+       message("${makecontext_addr}")
+       message("${makecontext_size}")
        set(pth_skaddr_makecontext "#define pth_skaddr_makecontext(skaddr,sksize) (${makecontext_addr})")
        set(pth_sksize_makecontext "#define pth_sksize_makecontext(skaddr,sksize) (${makecontext_size})")
 
@@ -526,11 +545,11 @@ try_run(RUN_RESULT_VAR COMPILE_RESULT_VAR
        OUTPUT_VARIABLE GETLINE_OUTPUT
        )
 
-if(RUN_RESULT_VAR MATCHES "FAILED_TO_RUN")
-SET(need_getline "")
-else(RUN_RESULT_VAR MATCHES "FAILED_TO_RUN")
+if(NOT COMPILE_RESULT_VAR)
 SET(need_getline "#define SIMGRID_NEED_GETLINE 1")
-endif(RUN_RESULT_VAR MATCHES "FAILED_TO_RUN")
+else(NOT COMPILE_RESULT_VAR)
+SET(need_getline "")
+endif(NOT COMPILE_RESULT_VAR)
 
 ### check for a working snprintf
 CHECK_FUNCTION_EXISTS(snprintf HAVE_SNPRINTF)