Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Enable GLIBCXX_DEBUG in maintainer mode
[simgrid.git] / tools / cmake / MaintainerMode.cmake
index b31d336..42b4789 100644 (file)
@@ -11,6 +11,13 @@ set(FLEX_MIN_PATCH 39)
 # Let's generate header files required by SMPI when the call location tracing
 # has been activated.
 if(enable_maintainer_mode)
+  if (enable_ns3)
+    message(STATUS "Maintainer mode activated with ns-3, not enabling GLIBCXX_DEBUG (diable ns-3 to get it).")
+  else()
+    message(STATUS "Maintainer mode activated, enabling GLIBCXX_DEBUG.")
+    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_GLIBCXX_DEBUG")
+  endif()
+
   add_custom_command(OUTPUT ${CMAKE_HOME_DIRECTORY}/include/smpi/smpi_extended_traces.h
                             ${CMAKE_HOME_DIRECTORY}/include/smpi/smpi_extended_traces_fortran.h
     DEPENDS
@@ -39,41 +46,10 @@ if(enable_maintainer_mode)
   find_program(FLEX_EXE NAMES flex)
   find_program(FLEXML_EXE NAMES flexml)
   find_program(SED_EXE NAMES sed)
-  find_program(BISON_EXE NAMES bison)
   find_program(LEX_EXE NAMES lex)
 
-  mark_as_advanced(BISON_EXE)
   mark_as_advanced(LEX_EXE)
 
-  if(BISON_EXE AND LEX_EXE)
-    add_custom_command(
-      OUTPUT
-      ${CMAKE_HOME_DIRECTORY}/src/xbt/automaton/automaton_lexer.yy.c
-      ${CMAKE_HOME_DIRECTORY}/src/xbt/automaton/parserPromela.tab.cacc
-      ${CMAKE_HOME_DIRECTORY}/src/xbt/automaton/parserPromela.tab.hacc
-
-      DEPENDS
-      ${CMAKE_HOME_DIRECTORY}/src/xbt/automaton/parserPromela.lex
-      ${CMAKE_HOME_DIRECTORY}/src/xbt/automaton/parserPromela.yacc
-
-      COMMENT "Generating automaton source files"
-      COMMAND ${BISON_EXE} --name-prefix=xbt_automaton_parser_ -d -t parserPromela.yacc
-      COMMAND ${LEX_EXE} --prefix=xbt_automaton_parser_ --outfile=automaton_lexer.yy.c parserPromela.lex
-      WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}/src/xbt/automaton/
-      )
-
-    add_custom_target(automaton_generated_src
-      DEPENDS
-      ${CMAKE_HOME_DIRECTORY}/src/xbt/automaton/automaton_lexer.yy.c
-      ${CMAKE_HOME_DIRECTORY}/src/xbt/automaton/parserPromela.tab.cacc
-      ${CMAKE_HOME_DIRECTORY}/src/xbt/automaton/parserPromela.tab.hacc
-      )
-
-    SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES
-      "${CMAKE_HOME_DIRECTORY}/src/xbt/automaton/parserPromela.tab.cacc;${CMAKE_HOME_DIRECTORY}/src/xbt/automaton/parserPromela.tab.hacc;${CMAKE_HOME_DIRECTORY}/src/xbt/automaton/automaton_parse.yy.c"
-      )
-  endif()
-
   message(STATUS "Found flex: ${FLEX_EXE}")
   IF(FLEX_EXE)
     set(HAVE_FLEX 1)
@@ -204,9 +180,9 @@ if(enable_maintainer_mode)
 
 endif()
 
-    add_custom_target(maintainer_files
-      DEPENDS ${CMAKE_HOME_DIRECTORY}/src/kernel/xml/simgrid_dtd.h
-              ${CMAKE_HOME_DIRECTORY}/src/kernel/xml/simgrid_dtd.c
-              ${CMAKE_HOME_DIRECTORY}/src/dag/dax_dtd.h
-              ${CMAKE_HOME_DIRECTORY}/src/dag/dax_dtd.c
-      )
+add_custom_target(maintainer_files
+  DEPENDS ${CMAKE_HOME_DIRECTORY}/src/kernel/xml/simgrid_dtd.h
+          ${CMAKE_HOME_DIRECTORY}/src/kernel/xml/simgrid_dtd.c
+          ${CMAKE_HOME_DIRECTORY}/src/dag/dax_dtd.h
+          ${CMAKE_HOME_DIRECTORY}/src/dag/dax_dtd.c
+  )