Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Make the gras.h with cmake.
[simgrid.git] / buildtools / CPACK / CMakeLists.txt
index 627820e..4df82e0 100644 (file)
@@ -1,9 +1,12 @@
 cmake_minimum_required(VERSION 2.6)
-
+find_program(SH_EXE NAMES sh)
 find_program(SED_EXE NAMES sed)
 find_program(PWD_EXE NAMES pwd)
 find_program(UNAME NAMES uname)
 find_program(HOSTNAME_CMD NAMES hostname)
+find_path(GCC_PATH     NAMES gcc       PATHS NO_DEFAULT_PATHS  )
+find_path(GCOV_PATH    NAMES gcov      PATHS NO_DEFAULT_PATHS  )
+find_path(VALGRIND_PATH        NAMES valgrind  PATHS NO_DEFAULT_PATHS  )
 
 ### DETECT AUTO. THE PROJECT_DIRECTORY
 exec_program("${PWD_EXE}" ARGS "| ${SED_EXE} 's/\\/CPACK//g'" OUTPUT_VARIABLE "PROJECT_DIRECTORY")
@@ -12,15 +15,11 @@ exec_program("${PWD_EXE}" ARGS "| ${SED_EXE} 's/\\/CPACK//g'" OUTPUT_VARIABLE "P
 #SET(PROJECT_DIRECTORY "/home/navarrop/Bureau/simgrid-trunk")
 
 ### Get the hostname of current machine :
-exec_program(${HOSTNAME_CMD} OUTPUT_VARIABLE HOSTNAME)
+exec_program(${HOSTNAME_CMD} OUTPUT_VARIABLE SITE)
 
 ### Get the system information of current machine
 exec_program("${UNAME}" OUTPUT_VARIABLE "SYSTEM")
 
-message("Project_Directory : ${PROJECT_DIRECTORY}")
-message("HOSTNAME : ${HOSTNAME}")
-message("SYSTEM : ${SYSTEM}")
-
 ### ARGs use -D[var]=[ON/OFF] or [1/0] or [true/false](see after)
 ### ex: cmake -Ddisable_java=ON -Ddisable_gtnets=ON ./
 
@@ -43,27 +42,38 @@ message("_______END_ARGS_______")
 #--------------------------------------------------------------------------------------------------
 
 ### Set some variables for Cmake
-SET(PROJECT_NAME "Simgrid_cmake")
-SET(LANGUAGE "Cxx")
+SET(PROJECT_NAME "Simgrid")
 SET(PROJECT_SOURCE_DIRECTORY "${PROJECT_DIRECTORY}/src")
 set(EXECUTABLE_OUTPUT_PATH "${PROJECT_DIRECTORY}/bin")
 set(LIBRARY_OUTPUT_PATH "${PROJECT_DIRECTORY}/lib")
 set(INCLUDES "-I${PROJECT_DIRECTORY}/include -I${PROJECT_DIRECTORY}/src/include -I${PROJECT_DIRECTORY}/src")
 
-### Define source packages for Libs 
-include(${PROJECT_DIRECTORY}/CPACK/CMakeDefinePackages.txt OPTIONAL NO_POLICY_SCOPE)
+add_definitions("${INCLUDES}")
+add_definitions (-fprofile-arcs)
+add_definitions (-ftest-coverage)
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fprofile-arcs -ftest-coverage")
+set(CMAKE_C_FLAGS "${CMAKE_CXX_FLAGS} -fprofile-arcs -ftest-coverage")
 
 ### Make the *.h files with *.h.in files
 include(${PROJECT_DIRECTORY}/CPACK/CMakeCompleteInFiles.txt OPTIONAL NO_POLICY_SCOPE)
 
-### Make Libs
-add_definitions("${INCLUDES}")
+### Define source packages for Libs 
+include(${PROJECT_DIRECTORY}/CPACK/CMakeDefinePackages.txt OPTIONAL NO_POLICY_SCOPE)
 
+### Make Libs
 add_library(simgrid SHARED ${simgrid_sources})
 add_library(gras SHARED ${gras_sources})
+### Make EXEs
+add_executable(masterslave_failure "${PROJECT_DIRECTORY}/examples/msg/masterslave/masterslave_failure.c")
+add_executable(masterslave_forwarder "${PROJECT_DIRECTORY}/examples/msg/masterslave/masterslave_forwarder.c")
+target_link_libraries(masterslave_forwarder simgrid m gcov)
+target_link_libraries(masterslave_failure simgrid m gcov)
 
-### Make the distrib
 
+### Make tests
+include(${PROJECT_DIRECTORY}/CPACK/CMakeTest.txt OPTIONAL NO_POLICY_SCOPE)
+
+### Make the distrib
 include(${PROJECT_DIRECTORY}/CPACK/CMakeDistrib.txt OPTIONAL NO_POLICY_SCOPE)