git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@7457
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
endif(RUBY_INCLUDE_PATH)
endif(NOT disable_ruby)
endif(RUBY_INCLUDE_PATH)
endif(NOT disable_ruby)
#--------------------------------------------------------------------------------------------------
### Initialize of CONTEXT JAVA
#--------------------------------------------------------------------------------------------------
### Initialize of CONTEXT JAVA
include(${PROJECT_DIRECTORY}/buildtools/Cmake/src/CMakeSupernovae.txt)
include(${PROJECT_DIRECTORY}/buildtools/Cmake/src/CMakeSupernovae.txt)
add_library(simgrid SHARED ${simgrid_sources})
add_library(simgrid_static STATIC ${simgrid_sources})
add_library(gras SHARED ${gras_sources})
add_library(smpi STATIC ${SMPI_SRC})
add_library(simgrid SHARED ${simgrid_sources})
add_library(simgrid_static STATIC ${simgrid_sources})
add_library(gras SHARED ${gras_sources})
add_library(smpi STATIC ${SMPI_SRC})
+endif(enable_supernovae)
set(GRAS_DEP "pthread")
set(SIMGRID_DEP ${libruby})
set(GRAS_DEP "pthread")
set(SIMGRID_DEP ${libruby})
set(with_context "auto" CACHE TYPE INTERNAL FORCE)
endif(NOT with_context)
set(with_context "auto" CACHE TYPE INTERNAL FORCE)
endif(NOT with_context)
+option(disable_gtnets "This variable set the gtnets context." off)
option(disable_java "This variable set the java context." off)
option(disable_lua "This variable set lua use." off)
option(disable_java "This variable set the java context." off)
option(disable_lua "This variable set lua use." off)
-option(disable_gtnets "This variable set the gtnets context." off)
option(disable_ruby "This variable set ruby use." off)
option(disable_ruby "This variable set ruby use." off)
-option(enable_compile_warnings "" off)
option(enable_compile_optimizations "" off)
option(enable_compile_optimizations "" off)
+option(enable_compile_warnings "" off)
option(enable_maintainer_mode "Permit to make flex and flexml files." off)
option(enable_maintainer_mode "Permit to make flex and flexml files." off)
+option(enable_supernovae "Supernovae mode." off)
+option(enable_tracing "Tracing mode." off)
option(enable_coverage "Enable coverage." off)
option(enable_memcheck "Enable memcheck." off)
option(enable_coverage "Enable coverage." off)
option(enable_memcheck "Enable memcheck." off)
-option(supernovae "Supernovae mode." off)
-option(tracing "Tracing mode." off)
-option(print_message "Enable print message during config." off)
+option(enable_print_message "Enable print message during config." off)
mark_as_advanced(BIBTEX2HTML_PATH)
mark_as_advanced(LUA_LIB_PATH_1)
mark_as_advanced(BIBTEX2HTML_PATH)
mark_as_advanced(LUA_LIB_PATH_1)
exec_program("echo `${CMAKE_C_COMPILER} --version | grep -E [0-9].[0-9].[0-9]$`" OUTPUT_VARIABLE "COMPILER_C_VERSION")
exec_program("echo `${CMAKE_CXX_COMPILER} --version | grep -E [0-9].[0-9].[0-9]$`" OUTPUT_VARIABLE "COMPILER_CXX_VERSION")
exec_program("echo `${CMAKE_C_COMPILER} --version | grep -E [0-9].[0-9].[0-9]$`" OUTPUT_VARIABLE "COMPILER_C_VERSION")
exec_program("echo `${CMAKE_CXX_COMPILER} --version | grep -E [0-9].[0-9].[0-9]$`" OUTPUT_VARIABLE "COMPILER_CXX_VERSION")
+if(enable_print_message)
message("")
message("________________________________________________________________________________")
message("________________________________________________________________________________ DEBUG")
message("")
message("________________________________________________________________________________")
message("________________________________________________________________________________ DEBUG")
message("________________________________________________________________________________")
message("________________________________________________________________________________ DEBUG END")
message("")
message("________________________________________________________________________________")
message("________________________________________________________________________________ DEBUG END")
message("")
+endif(enable_print_message)
message("\nConfiguration of package `simgrid' (revision ${SVN_VERSION}${GIT_VERSION}) on arch (=${GRAS_THISARCH}):")
message(" BUILDNAME : ${BUILDNAME}")
message("\nConfiguration of package `simgrid' (revision ${SVN_VERSION}${GIT_VERSION}) on arch (=${GRAS_THISARCH}):")
message(" BUILDNAME : ${BUILDNAME}")
\subsubsection faq_intro4 Cmake vs Autotools...
\subsubsection faq_intro4 Cmake vs Autotools...
\subsection faq_cmakeoption Cmake options
\subsection faq_cmakeoption Cmake options
enable_compile_optimizations ON/OFF or TRUE/FALSE or 1/0
enable_compile_warnings ON/OFF or TRUE/FALSE or 1/0
enable_maintainer_mode ON/OFF or TRUE/FALSE or 1/0
enable_compile_optimizations ON/OFF or TRUE/FALSE or 1/0
enable_compile_warnings ON/OFF or TRUE/FALSE or 1/0
enable_maintainer_mode ON/OFF or TRUE/FALSE or 1/0
-
- supernovae ON/OFF or TRUE/FALSE or 1/0
+ enable_supernovae ON/OFF or TRUE/FALSE or 1/0
+ enable_tracing ON/OFF or TRUE/FALSE or 1/0
+ enable_coverage ON/OFF or TRUE/FALSE or 1/0
+ enable_memcheck ON/OFF or TRUE/FALSE or 1/0
+ enable_print_message ON/OFF or TRUE/FALSE or 1/0
gtnets_path <path_to_gtnets_directory>
prefix <path_to_install_directory>
gtnets_path <path_to_gtnets_directory>
prefix <path_to_install_directory>
- with_context auto/ucontext/pthread/window
+ BIBTEX2HTML <path_to_bibtex2html>
+ with_context auto/ucontext/pthread/window
\subsubsection faq_cmakeoption2 Options explaination
\li disable_gtnets : set to true implie that user doesn't want to use gtnets.
\subsubsection faq_cmakeoption2 Options explaination
\li disable_gtnets : set to true implie that user doesn't want to use gtnets.
\li enable_compile_warnings : add flags "-Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wcomment -Wformat -Wwrite-strings -Wno-unused-function -Wno-unused-parameter -Wno-strict-aliasing -Wno-format-nonliteral -Werror"
\li enable_compile_warnings : add flags "-Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wcomment -Wformat -Wwrite-strings -Wno-unused-function -Wno-unused-parameter -Wno-strict-aliasing -Wno-format-nonliteral -Werror"
- \li enable_maintainer_mode : set to true make doc and remake files with flex flexml.
+ \li enable_maintainer_mode : set to true it remakes some files.
-/doc/html
-/src/gras/DataDesc/ddt_parse.yy.c
-/src/surf/simgrid_dtd.c
-/src/xbt/graphxml.c
-/src/simdag/dax_dtd.c
-/include/surf/simgrid_dtd.h
-/include/xbt/graphxml.h
-/src/simdag/dax_dtd.h
+include/surf/simgrid_dtd.h
+include/xbt/graphxml.h
+
+src/cunit_unit.c
+src/ex_unit.c
+src/dynar_unit.c
+src/dict_unit.c
+src/set_unit.c
+src/swag_unit.c
+src/xbt_str_unit.c
+src/xbt_strbuff_unit.c
+src/xbt_sha_unit.c
+src/config_unit.c
+src/xbt_synchro_unit.c
+src/simgrid_units_main.c
+
+src/simdag/dax_dtd.c
+src/simdag/dax_dtd.h
+src/simdag/dax_dtd.l
+
+src/surf/simgrid_dtd.c
+src/surf/simgrid_dtd.l
+
+src/xbt/graphxml.c
+src/xbt/graphxml.l
+
+src/gras/DataDesc/ddt_parse.yy.c
- \li supernovae : set to true make one file for each lib and compile with those generated files.
+ \li enable_supernovae : set to true make one file for each lib and compile with those generated files.
\verbatim
/src/supernovae_sg.c
/src/supernovae_gras.c
/src/supernovae_smpi.c
\endverbatim
\verbatim
/src/supernovae_sg.c
/src/supernovae_gras.c
/src/supernovae_smpi.c
\endverbatim
+
+ \li enable_tracing : TODO by lucas
+
+ \li enable_coverage : When set to true this option enable code coverage by setting -fprofile-arcs -ftest-coverage flags.
+
+ \li enable_memcheck : When set to true this option enable tests for memcheck.
+
+ \li enable_print_message : This option when enable permits to see variables from gras_config.h
+
\li gtnets_path : Path to gtnets install directory (ex /usr)
\li prefix : Path where are installed lib/ doc/ and include/ directories (ex /usr/local)
\li gtnets_path : Path to gtnets install directory (ex /usr)
\li prefix : Path where are installed lib/ doc/ and include/ directories (ex /usr/local)
+ \li BIBTEX2HTML : Path where is installed bibtex2html.
+
\li with context : specify which context the user wants to use.
\subsubsection faq_cmakeoption3 Initialisation
\li with context : specify which context the user wants to use.
\subsubsection faq_cmakeoption3 Initialisation
Those options are initialized the first time you launch \"cmake ./\" whithout specified option.
\verbatim
Those options are initialized the first time you launch \"cmake ./\" whithout specified option.
\verbatim
+disable_gtnets off
+disable_java off
+disable_lua off
+disable_ruby off
+
+enable_compile_optimizations off
+enable_compile_warnings off
enable_maintainer_mode off
enable_maintainer_mode off
-supernovae off
-disable_java off
-disable_lua off
-enable_compile_warnings off
-enable_compile_optimizations off
-disable_gtnets off
-disable_ruby on
+enable_supernovae off
+enable_tracing off
+enable_coverage off
+enable_memcheck off
+enable_print_message off
+
+gtnets_path null
+prefix null
+BIBTEX2HTML null
+with_context auto
\endverbatim
\subsubsection faq_cmakeoption4 Option's cache and how to reset?
\endverbatim
\subsubsection faq_cmakeoption4 Option's cache and how to reset?
make build all targets
make VERBOSE=1 build all targets and print build command lines
make test test all targets and summarize
make build all targets
make VERBOSE=1 build all targets and print build command lines
make test test all targets and summarize
-make package make the distrib
+make dist make the distrib
+make distcheck check the dist (make + make dist + make test)
make install-simgrid install the project (doc/ lib/ include/)
make install-simgrid install the project (doc/ lib/ include/)
+make uninstall uninstall the project (doc/ lib/ include/)
make clean clean all targets
make html Create simgrid documentation
make clean clean all targets
make html Create simgrid documentation
+make maintainer-clean Remove all files generated by mainainer mode
\endverbatim
When the project have been succesfully compiling and build you can make tests.
\endverbatim
When the project have been succesfully compiling and build you can make tests.
ctest -D Experimental
ctest -D Experimental(Start|Update|Configure|Build)
ctest -D Experimental(Test|Coverage|MemCheck|Submit)
ctest -D Experimental
ctest -D Experimental(Start|Update|Configure|Build)
ctest -D Experimental(Test|Coverage|MemCheck|Submit)
ctest -D Nightly(Start|Update|Configure|Build)
ctest -D Nightly(Test|Coverage|MemCheck|Submit)
ctest -D NightlyMemoryCheck
\endverbatim
ctest -D Nightly(Start|Update|Configure|Build)
ctest -D Nightly(Test|Coverage|MemCheck|Submit)
ctest -D NightlyMemoryCheck
\endverbatim
+If you want to test before make a commit you can simply make "ctest -D Experimental" and then you can visualize results submitted into Cdash. <a href="http://cdash.inria.fr/CDash/index.php?project=Simgrid">(Go to Cdash site)</a>.
+
\subsubsection faq_cmakecompilation4 Examples for different mode.
\li Mode maintainer
\subsubsection faq_cmakecompilation4 Examples for different mode.
\li Mode maintainer
Here is defined packages for install simgrid and make a distribution.
Here is defined packages for install simgrid and make a distribution.
+\li CMakeMaintainerMode.txt
-Part for generated sources from flex and flexml.
+Part where are generated source files for maintainer mode.
./buildtools/Cmake/src/CMakeCompleteInFiles.txt
./buildtools/Cmake/src/CMakeDocs.txt
./buildtools/Cmake/src/CMakeMakeExeLib.txt
./buildtools/Cmake/src/CMakeCompleteInFiles.txt
./buildtools/Cmake/src/CMakeDocs.txt
./buildtools/Cmake/src/CMakeMakeExeLib.txt
./buildtools/Cmake/src/CMakeFlags.txt
./buildtools/Cmake/src/CMakeSupernovae.txt
./buildtools/Cmake/src/CMakeDistrib.txt
./buildtools/Cmake/src/CMakeFlags.txt
./buildtools/Cmake/src/CMakeSupernovae.txt
./buildtools/Cmake/src/CMakeDistrib.txt
- ./buildtools/Cmake/src/CMakeFLEXml.txt
+ ./buildtools/Cmake/src/CMakeMaintainerMode.txt
./buildtools/Cmake/src/CMakeOption.txt
./buildtools/Cmake/src/CMakeTest.txt
./buildtools/Cmake/src/CTestConfig.cmake
./buildtools/Cmake/src/CMakeOption.txt
./buildtools/Cmake/src/CMakeTest.txt
./buildtools/Cmake/src/CTestConfig.cmake
CMakeLists for each binaries or examples:
./CMakeLists.txt
CMakeLists for each binaries or examples:
./CMakeLists.txt
./teshsuite/gras/empty_main/CMakeLists.txt
./teshsuite/gras/small_sleep/CMakeLists.txt
./teshsuite/gras/datadesc/CMakeLists.txt
./teshsuite/gras/empty_main/CMakeLists.txt
./teshsuite/gras/small_sleep/CMakeLists.txt
./teshsuite/gras/datadesc/CMakeLists.txt