1 ### Make supernovae files and libs
3 #############################################################################
4 ### Add here every files that should not be supernovaed (generated files) ###
5 #############################################################################
6 set(simgrid_fragile_sources
7 src/simdag/sd_daxloader.c
8 src/surf/surfxml_parse.c
9 src/xbt/automaton/automaton_create.c
10 src/xbt/datadesc/ddt_parse.yy.c
11 src/xbt/graphxml_parse.c
15 set(gras_fragile_sources
16 src/xbt/automaton/automaton_create.c
17 src/xbt/datadesc/ddt_parse.yy.c
18 src/xbt/graphxml_parse.c
22 #####################################################
23 ### END OF CONFIGURATION, NO NEED TO READ FURTHER ###
24 #####################################################
26 ### Rebuild the supernovae source files
27 if (enable_supernovae) # I need supernovae
29 # supernovae files are generated. I promise
30 set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_sg.c
31 PROPERTIES GENERATED true)
32 set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_gras.c
33 PROPERTIES GENERATED true)
34 set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_smpi.c
35 PROPERTIES GENERATED true)
38 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_sg.c
39 DEPENDS ${CMAKE_HOME_DIRECTORY}/src/mk_supernovae.pl ${simgrid_sources}
40 COMMAND perl ${CMAKE_HOME_DIRECTORY}/src/mk_supernovae.pl --out=${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_sg.c '--fragile=${simgrid_fragile_sources}' '${simgrid_sources}'
41 WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}
42 COMMENT "Generating supernovae_sg.c"
46 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_gras.c
47 DEPENDS ${CMAKE_HOME_DIRECTORY}/src/mk_supernovae.pl ${gras_sources}
48 COMMAND perl ${CMAKE_HOME_DIRECTORY}/src/mk_supernovae.pl --out=${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_gras.c '--fragile=${gras_fragile_sources}' '${gras_sources}'
49 WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}
50 COMMENT "Generating supernovae_gras.c"
54 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_smpi.c
55 DEPENDS ${CMAKE_HOME_DIRECTORY}/src/mk_supernovae.pl ${SMPI_SRC}
56 COMMAND perl ${CMAKE_HOME_DIRECTORY}/src/mk_supernovae.pl --out=${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_smpi.c '${SMPI_SRC}'
57 WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}
58 COMMENT "Generating supernovae_smpi.c"
61 ### Change the content of the libraries so that it contains only supernovae+fragiles
63 ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_sg.c
64 ${simgrid_fragile_sources})
67 ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_gras.c
68 ${gras_fragile_sources})
71 ${CMAKE_CURRENT_BINARY_DIR}/src/supernovae_smpi.c)
73 endif(enable_supernovae) # I need supernovae