examples/simdag/simgrid.so\r
\r
################################################\r
-### Units and supernovae files\r
+### Units files\r
src/simgrid_units_main.c\r
src/*_unit.c\r
-src/supernovae_*.c\r
\r
################################################\r
### Generated files\r
SET(BUILDNAME "FULL_FLAGS" CACHE TYPE INTERNAL FORCE)
endif(enable_compile_warnings AND enable_compile_optimizations)
-if(enable_supernovae)
- SET(BUILDNAME "SUPERNOVAE" CACHE TYPE INTERNAL FORCE)
-endif(enable_supernovae)
-
if(HAVE_GTNETS)
SET(BUILDNAME "GTNETS" CACHE TYPE INTERNAL FORCE)
endif(HAVE_GTNETS)
${CMAKE_BINARY_DIR}/bin/colorize
${CMAKE_BINARY_DIR}/bin/simgrid_update_xml
${CMAKE_BINARY_DIR}/examples/smpi/smpi_traced.trace
-${CMAKE_BINARY_DIR}/src/supernovae_sg.c
-${CMAKE_BINARY_DIR}/src/supernovae_gras.c
-${CMAKE_BINARY_DIR}/src/supernovae_smpi.c
)
if("${CMAKE_BINARY_DIR}" STREQUAL "${CMAKE_HOME_DIRECTORY}")
src/smpi/private.h
src/smpi/smpi_mpi_dt_private.h
src/smpi/README
- src/mk_supernovae.pl
examples/gras/ping/ping.h
examples/gras/console/ping.h
WORKING_DIRECTORY "${CMAKE_HOME_DIRECTORY}"
)
-add_custom_target(supernovae-clean
-COMMAND ${CMAKE_COMMAND} -E remove -f src/supernovae_gras.c
-COMMAND ${CMAKE_COMMAND} -E remove -f src/supernovae_sg.c
-COMMAND ${CMAKE_COMMAND} -E remove -f src/supernovae_smpi.c
-WORKING_DIRECTORY "${CMAKE_HOME_DIRECTORY}"
-)
-
#############################################
### Fill in the "make sync-gforge" target ###
#############################################
###############################
# Declare the library content #
###############################
-# If we want supernovae, rewrite the libs' content to use it
-include(${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/Supernovae.cmake)
-
# Actually declare our libraries
add_library(simgrid SHARED ${simgrid_sources})
add_dependencies(gras maintainer_files)
add_dependencies(simgrid maintainer_files)
-# if supernovaeing, we need some depends to make sure that the source gets generated
-if (enable_supernovae)
- add_dependencies(simgrid ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_sg.c)
- if(enable_lib_static)
- add_dependencies(simgrid_static ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_sg.c)
- endif(enable_lib_static)
- add_dependencies(gras ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_gras.c)
-
- if(enable_smpi)
- add_dependencies(smpi ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_smpi.c)
- if(enable_lib_static)
- add_dependencies(smpi_static ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_smpi.c)
- endif(enable_lib_static)
- endif(enable_smpi)
-endif(enable_supernovae)
-
# Compute the dependencies of GRAS
##################################
set(GRAS_DEP "-lm -lpthread")
endif(NOT operation)
else(HAVE_NS3)
message(STATUS "Warning: To use NS-3 Please install ns3 at least version 3.10 (http://www.nsnam.org/releases/)")
-endif(HAVE_NS3)
-
-if(HAVE_NS3 AND enable_supernovae)
- set(enable_supernovae OFF)
-endif(HAVE_NS3 AND enable_supernovae)
\ No newline at end of file
+endif(HAVE_NS3)
\ No newline at end of file
set(pipol_user ${pipol_user} CACHE TYPE INTERNAL FORCE)
option(release "Whether Release Mode is activated (disable tests on experimental parts)" on)
+option(enable_compile_optimizations "" on)
+option(enable_debug "Set NDEBUG flag" on)
option(enable_gtnets "Whether gtnets model is activated." off)
option(enable_ns3 "Whether ns3 model is activated." off)
option(enable_smpi "This variable set smpi lib." off)
-option(enable_lua "Whether the lua bindings are activated." on)
-
-if(WIN32 OR APPLE)
-set(enable_smpi off CACHE TYPE INTERNAL FORCE)
-set(enable_lua off CACHE TYPE INTERNAL FORCE)
-endif(WIN32 OR APPLE)
-
-option(enable_compile_optimizations "" on)
+option(enable_lua "Whether the lua bindings are activated." off)
option(enable_compile_warnings "Whether compilation warnings should be turned into errors." off)
option(enable_maintainer_mode "Whether flex and flexml files should be rebuilt." off)
-option(enable_supernovae "Whether Supernovae mode (helping compiler optimization) is activated." on)
-option(enable_tracing "Tracing simulations for visualization." on)
+option(enable_tracing "Tracing simulations for visualization." off)
option(enable_latency_bound_tracking "" off)
option(enable_coverage "Enable coverage." off)
option(enable_memcheck "Enable memcheck." off)
option(enable_model-checking "" off)
option(enable_lib_static "" off)
option(enable_jedule "Jedule output of SimDAG." off)
-option(enable_debug "Set NDEBUG flag" on)
-
-if(enable_supernovae AND enable_model-checking)
- set(enable_model-checking false CACHE TYPE INTERNAL FORCE)
- message("\n\nWith supernovae mode the model checking must be disable.!!!\n\n")
-endif(enable_supernovae AND enable_model-checking)
-
mark_as_advanced(HAVE_SSH)
mark_as_advanced(HAVE_RSYNC)
message(" Compile Static : ${enable_lib_static}")
message("")
message(" Maintainer mode: ${enable_maintainer_mode}")
-message(" Supernovae mode: ${enable_supernovae}")
message(" Model checking : ${enable_model-checking}")
message(" Tracing mode : ${enable_tracing}")
message(" Jedule mode : ${enable_jedule}")
+++ /dev/null
-### Make supernovae files and libs
-
-#############################################################################
-### Add here every files that should not be supernovaed (generated files) ###
-#############################################################################
-set(simgrid_fragile_sources
- src/gras/DataDesc/ddt_parse.yy.c
- src/surf/surfxml_parse.c
- src/xbt/graphxml_parse.c
- src/simdag/sd_daxloader.c
- ${GTNETS_USED}
-)
-set(gras_fragile_sources
- src/gras/DataDesc/ddt_parse.yy.c
- src/xbt/graphxml_parse.c
-)
-
-#####################################################
-### END OF CONFIGURATION, NO NEED TO READ FURTHER ###
-#####################################################
-
-### Rebuild the supernovae source files
-if (enable_supernovae) # I need supernovae
-
- # supernovae files are generated. I promise
- set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_sg.c
- PROPERTIES GENERATED true)
- set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_gras.c
- PROPERTIES GENERATED true)
- set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_smpi.c
- PROPERTIES GENERATED true)
-
- ADD_CUSTOM_COMMAND(
- OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_sg.c
- DEPENDS ${CMAKE_HOME_DIRECTORY}/src/mk_supernovae.pl ${simgrid_sources}
- COMMAND perl ${CMAKE_HOME_DIRECTORY}/src/mk_supernovae.pl --out=${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_sg.c '--fragile=${simgrid_fragile_sources}' '${simgrid_sources}'
- WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}
- COMMENT "Generating supernovae_sg.c"
- )
-
- ADD_CUSTOM_COMMAND(
- OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_gras.c
- DEPENDS ${CMAKE_HOME_DIRECTORY}/src/mk_supernovae.pl ${gras_sources}
- COMMAND perl ${CMAKE_HOME_DIRECTORY}/src/mk_supernovae.pl --out=${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_gras.c '--fragile=${gras_fragile_sources}' '${gras_sources}'
- WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}
- COMMENT "Generating supernovae_gras.c"
- )
-
- ADD_CUSTOM_COMMAND(
- OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_smpi.c
- DEPENDS ${CMAKE_HOME_DIRECTORY}/src/mk_supernovae.pl ${SMPI_SRC}
- COMMAND perl ${CMAKE_HOME_DIRECTORY}/src/mk_supernovae.pl --out=${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_smpi.c '${SMPI_SRC}'
- WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}
- COMMENT "Generating supernovae_smpi.c"
- )
-
- ### Change the content of the libraries so that it contains only supernovae+fragiles
- set(simgrid_sources
- ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_sg.c
- ${simgrid_fragile_sources})
-
- set(gras_sources
- ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_gras.c
- ${gras_fragile_sources})
-
- set(SMPI_SRC
- ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_smpi.c)
-
-endif(enable_supernovae) # I need supernovae
#SIMGRID_ROOT=`pwd`
#export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$SIMGRID_ROOT/gtnets_install/lib
-#supernovae
-cmake \
--Denable_lua=on \
--Denable_tracing=on \
--Denable_smpi=on \
--Denable_supernovae=on \
--Denable_compile_optimizations=on \
--Denable_compile_warnings=on \
--Denable_lib_static=off \
--Denable_model-checking=off \
--Denable_latency_bound_tracking=off \
--Drelease=on \
--Denable_gtnets=off .
-
-ctest -D ExperimentalStart
-ctest -D ExperimentalConfigure
-ctest -D ExperimentalBuild
-ctest -D ExperimentalTest
-ctest -D ExperimentalSubmit
-make clean
-
#MC
cmake \
-Denable_latency_bound_tracking=on \
-Denable_compile_optimizations=off \
-Denable_auto_install=on \
-DCMAKE_INSTALL_PREFIX=./simgrid_install \
--Drelease=on \
--Denable_supernovae=off .
+-Drelease=on .
ctest -D ExperimentalStart
ctest -D ExperimentalConfigure
ctest -D ExperimentalBuild
export CXX=g++
fi
-#supernovae
cmake -Drelease=on .
ctest -D ExperimentalStart
ctest -D ExperimentalConfigure
cmake \
-Denable_lua=off \
-Denable_tracing=off \
--Denable_smpi=off \
--Denable_supernovae=off \
-Denable_compile_optimizations=off \
-Denable_compile_warnings=on \
-Denable_lib_static=off \
-Denable_lua=off \
-Denable_tracing=off \
-Denable_smpi=off \
--Denable_supernovae=off \
-Denable_compile_optimizations=off \
-Denable_compile_warnings=on \
-Denable_lib_static=off \
export CXX=g++
fi
-#supernovae DEFAULT CONF
+#DEFAULT CONF
cmake -Drelease=on .
ctest -D NightlyStart
ctest -D NightlyConfigure
-Denable_coverage=on \
-Denable_model-checking=on \
-Denable_compile_optimizations=off \
--Drelease=on \
--Denable_supernovae=off .
+-Drelease=on .
ctest -D NightlyStart
ctest -D NightlyConfigure
ctest -D NightlyBuild
enable_compile_warnings ON/OFF or TRUE/FALSE or 1/0
enable_smpi ON/OFF or TRUE/FALSE or 1/0
enable_maintainer_mode 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
\li enable_maintainer_mode : set to true it remakes some files.
- \li enable_supernovae : set to true make one file for each lib and compile with those generated files.
-
\li enable_tracing : To enable the generation of simulation traces for visualization.
\li enable_coverage : When set to true this option enable code coverage by setting -fprofile-arcs -ftest-coverage flags.
enable_gtnets on
enable_lua on
enable_smpi on
-enable_supernovae on
enable_tracing on
enable_compile_optimizations on
enable_debug on
+++ /dev/null
-#! /usr/bin/perl
-
-use strict;
-use Getopt::Long qw(GetOptions);
-
-#open TMP,">mk_supernovae.pl.args";
-#map {print TMP "$_ "} @ARGV;
-#close TMP;
-
-sub usage($) {
- my $ret;
- print "USAGE: mk_supernovae.pl [--fragile=file]* --out=file file1 file2*\n";
- print " --help: show this message\n";
- print " --fragile=file: specify that file is fragile and shouldn't be supernovaed\n";
- print " --out=file: specify the name of the output file\n";
- print "elements may be separated by semi-columns (;) instead of spaces, too\n";
- exit $ret;
-}
-
-my @fragile_files=undef;
-my $outfile=undef;
-my $help;
-
-Getopt::Long::config('permute','no_getopt_compat', 'no_auto_abbrev');
-GetOptions(
- 'help|h' => \$help,
-
- 'fragile=s' =>\@fragile_files,
- 'out=s' =>\$outfile) or usage(1);
-
-@fragile_files = split(/;/,join(';',@fragile_files));
-@fragile_files = split(/ /,join(' ',@fragile_files));
-
-usage(0) if (defined($help));
-unless(defined($outfile)) {
- print "ERROR: No outfile defined.\n";
- usage(1);
-}
-
-#print "mk_supernovae: generate $outfile\n";
-
-open OUT, ">$outfile" or die "ERROR: cannot open $outfile: $!\n";
-
-print OUT <<EOF
-#define SUPERNOVAE_MODE 1
-#ifndef _GNU_SOURCE
-# define _GNU_SOURCE /* for getline() with older libc */
-#endif
-#ifndef _SVID_SOURCE
-# define _SVID_SOURCE /* strdup() */
-#endif
-#ifndef _ISOC99_SOURCE
-# define _ISOC99_SOURCE /* isfinite() */
-#endif
-#ifndef _ISO_C99_SOURCE
-# define _ISO_C99_SOURCE /* isfinite() */
-#endif
-#include <ctype.h>
-#include "portable.h"
-#include "xbt.h"
-
-EOF
- ;
-
-sub readfile($) {
- my $filename=shift;
- open IN,"$filename" || die "ERROR: cannot read $filename: $!\n";
- my $res;
- while (<IN>) {
- $res .= $_;
- }
- close IN;
- return $res;
-}
-
-
-my %fragile;
-map {$fragile{$_}=1} @fragile_files;
-my @args = split(/;/,join(';',@ARGV));
-@args = split(/ /,join(' ',@args));
-my $nbfile=0;
-foreach my $file (@args) {
- if ($fragile{$file}) {
- print "mk_supernovae: $file is fragile, skip it\n";
- next;
- }
-# print "mk_supernovae: process $file\n";
- $nbfile++;
-
- my $needundef=1;
- print OUT "/* file $file */\n";
- if ($file eq "xbt/log.c") {
- print OUT " #define _simgrid_log_category__default &_simgrid_log_category__log\n";
- } else {
- my $ctn = readfile($file);
- if ($ctn =~ m/XBT_LOG_[^ ]*?DEFAULT_[^ ]*?CATEGORY/s) {
- my $default=$ctn;
- $default =~ s/.*XBT_LOG_[^ ]*?DEFAULT_[^ ]*?CATEGORY[^(]*\(([^,)]*).*$/$1/s;
- print OUT " #define _simgrid_log_category__default &_simgrid_log_category__$default\n";
- } else {
- print OUT " /* no default category in file $file */\n";
- $needundef = 0;
- }
- }
- print OUT " #include \"$file\"\n";
- print OUT " #undef _simgrid_log_category__default\n" if $needundef;
- print OUT "\n";
-}
-close OUT;
-print "mk_supernovae: $outfile contains $nbfile files inlined\n";