Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid
authorMartin Quinson <martin.quinson@loria.fr>
Fri, 20 May 2016 18:26:39 +0000 (20:26 +0200)
committerMartin Quinson <martin.quinson@loria.fr>
Fri, 20 May 2016 18:26:39 +0000 (20:26 +0200)
15 files changed:
doc/doxygen/deployment.doc
doc/doxygen/index.doc
doc/doxygen/module-msg.doc
doc/doxygen/modules.doc
doc/doxygen/pls.doc
examples/msg/README.doc
include/xbt/config.h
src/simix/smx_vm.cpp
src/surf/AsClusterTorus.cpp
src/surf/HostImpl.hpp
src/surf/network_interface.hpp
src/surf/sg_platf.cpp
src/xbt/xbt_matrix.c
src/xbt/xbt_str.c
tools/cmake/Documentation.cmake

index 107b44b..7168ff3 100644 (file)
@@ -1,29 +1,29 @@
-/*! \page deployment Deploy the simulation
+/*! @page deployment Deploy the simulation
 
-\section dep_over Overview
+@section dep_over Overview
 
 When you want to simulate the behavior of your code with SimGrid, you need
 to tell SimGrid exactly what code (that you wrote) is supposed to be run by which host - so you need to assign
-processes/functions to hosts. The hosts in question here are the hosts of your platform model; see Section \ref platform for details on how to set one up.
+processes/functions to hosts. The hosts in question here are the hosts of your platform model; see Section @ref platform for details on how to set one up.
 
-This assignment of the form \c code -> \c host is what the deployment file is all about, which will
+This assignment of the form @c code -> @c host is what the deployment file is all about, which will
 be discussed briefly here.
 
-\note 
+@note 
     You can bypass the deployment file by hardcoding it in your user code, at least when you're using
     MSG.
 
-The deployment file looks just like a \ref platform "platform" file, except that in
-this case, only two different tags are used: \c process and \c argument, whereas
+The deployment file looks just like a @ref platform "platform" file, except that in
+this case, only two different tags are used: @c process and @c argument, whereas
 the latter is just used to supply additional configuration options to the process; the
-order in which the \c argument tags are given is important and depends on the application.
+order in which the @c argument tags are given is important and depends on the application.
 
 ### The process tag ###
 
 #### Attribute list ####
 
-%As already written above, the \c process tag is the tag that defines which host
-executes which function (from your application). Hence, the \c host and \c function
+%As already written above, the @c process tag is the tag that defines which host
+executes which function (from your application). Hence, the @c host and @c function
 attributes are mandatory; however, there are some optional attributes to the process tag. Here is a list of all attributes of this tag:
 
 | Attribute name  | Mandatory | Values                 | Description                                                                                                               |
@@ -36,14 +36,14 @@ attributes are mandatory; however, there are some optional attributes to the pro
 
 #### An example ####
 
-A complete example including a \ref MSG_ext_ms_application "deployment file" can be found 
-in the Section \ref MSG_ex_basics "MSG basics".
+A complete example including a @ref MSG_ext_ms_application "deployment file" can be found 
+in the Section @ref msg_ex_basics "MSG basics".
 
-See also files such as \c examples/msg/masterslave/deployment_masterslave.xml.
+See also files such as @c examples/msg/masterslave/deployment_masterslave.xml.
 
 ### The argument tag ###
 
-This tag must always be contained by a \c process tag - it doesn't make sense
+This tag must always be contained by a @c process tag - it doesn't make sense
 without it.
 
 The way this works is that the order of arguments must be pre-defined <i>by the user</i>:
@@ -59,9 +59,9 @@ executed by this process) in the order you declare them.
 
 #### An example ####
 
-A complete example including a \ref MSG_ext_ms_application "deployment file" can be found 
-in the Section \ref MSG_ex_basics "MSG basics".
+A complete example including a @ref MSG_ext_ms_application "deployment file" can be found 
+in the Section @ref msg_ex_basics "MSG basics".
 
-See also files such as \c examples/msg/masterslave/deployment_masterslave.xml.
+See also files such as @c examples/msg/masterslave/deployment_masterslave.xml.
 
 */
index b3d247e..878274d 100644 (file)
@@ -13,6 +13,7 @@
 - @subpage getting_started
   - @subpage install
 - @subpage application
+  - @subpage MSG_API
   - @subpage platform
   - @subpage deployment
   - @subpage options
index 71851e2..f502bd8 100644 (file)
@@ -1,4 +1,6 @@
-/** \addtogroup MSG_API
+/**
+@defgroup MSG_API  MSG: Simple API for Concurrent Sequential Process Algorithms
+@brief Simple programming environment
 
 MSG was the first distributed programming environment provided within SimGrid,
 and is still the most commonly used nowadays. If you are unsure of the interface
index 783a392..4b48cc4 100644 (file)
@@ -1,9 +1,3 @@
-/**
-@defgroup MSG_API      MSG
-@brief Simple programming environment
-
-*/
-
 /**
 @defgroup XBT_API      XBT
 @brief The core toolbox of SimGrid, containing usefull datatypes and friends
index 8c421bf..b4ca1a0 100644 (file)
@@ -87,9 +87,9 @@ A ns-3 platform is automatically created from the provided SimGrid platform file
 
 More about ns-3 simulator <a href="http://www.nsnam.org/">(Official website)</a>
 
-\subsection pls_examples Examples
+\subsection ns3_examples Examples
 
-There is an example in the \c examples/ folder, that shows how to use the bindings. See also the \ref MSG_ex_PLS 
-"documentation for this example".
+For an example using NS3 as a SimGrid module, please refer to the 
+@ref msg_ex_ns3 "relevant section" of the documentation.
 
 */
index d363311..db0ce0d 100644 (file)
@@ -6,7 +6,7 @@ documentation, but it should remain readable directly.
  @ingroup MSG_API
  @brief Find the MSG example fitting your needs from the extensive set provided in the archive.
 
-  - @ref msg_ex_basic
+  - @ref msg_ex_basics
   - @ref msg_ex_async
   - @ref msg_ex_process
   - @ref msg_ex_tracing
@@ -18,7 +18,7 @@ documentation, but it should remain readable directly.
   - @ref msg_ex_apps
   - @ref msg_ex_misc
                    
-@section msg_ex_basic Basic examples and features
+@section msg_ex_basics Basic examples and features
 
  - <b>Ping Pong</b>: @ref examples/msg/app-pingpong/app-pingpong.c\n
    It's hard to think of a simpler example: it is just sending one
index b5df791..3e87a94 100644 (file)
@@ -43,27 +43,7 @@ SG_BEGIN_DECL()
  *
  *  \section XBT_cfg_ex Example of use
  *
- *  \dontinclude config.c
- *
- *  First, let's create a configuration set with some registered variables.
- *  This must be done by the configurable library before the user interactions.
- *
- *  \skip make_set
- *  \until end_of_make_set
- *
- *  Now, set and get a single value
- *  \skip get_single_value
- *  \skip int
- *  \until cfg_free
- *
- *  And now, set and get a multiple value
- *  \skip get_multiple_value
- *  \skip dyn
- *  \until cfg_free
- *
- *  All those functions throws mismatch_error if asked to deal with an  unregistered variable.
- *  \skip myset
- *  \until cfg_free
+ *  TBD
  */
 /** @defgroup XBT_cfg_use User interface: changing values
  *  @ingroup XBT_config
index e74974f..ba2d444 100644 (file)
@@ -1,5 +1,4 @@
-/* Copyright (c) 2007-2015. The SimGrid Team.
- * All rights reserved.                                                     */
+/* Copyright (c) 2007-2015. The SimGrid Team. All rights reserved.          */
 
 /* This program is free software; you can redistribute it and/or modify it
  * under the terms of the license (GNU LGPL) which comes with this package. */
@@ -9,15 +8,14 @@
 #include "src/surf/virtual_machine.hpp"
 #include "src/surf/HostImpl.hpp"
 
-//If you need to log some stuffs, just uncomment these two lines and uses XBT_DEBUG for instance
 XBT_LOG_NEW_DEFAULT_SUBCATEGORY(simix_vm, simix, "Logging specific to SIMIX (vms)");
 
 /* **** create a VM **** */
 
 /**
- * \brief Internal function to create a SIMIX host.
- * \param name name of the host to create
- * \param data some user data (may be NULL)
+ * @brief Internal function to create a SIMIX host.
+ * @param name name of the host to create
+ * @param data some user data (may be NULL)
  */
 sg_host_t SIMIX_vm_create(const char *name, sg_host_t ind_phys_host)
 {
@@ -105,9 +103,9 @@ e_surf_vm_state_t SIMIX_vm_get_state(sg_host_t ind_vm)
 }
 
 /**
- * \brief Function to migrate a SIMIX VM host.
+ * @brief Function to migrate a SIMIX VM host.
  *
- * \param host the vm host to migrate (a sg_host_t)
+ * @param host the vm host to migrate (a sg_host_t)
  */
 void SIMIX_vm_migrate(sg_host_t ind_vm, sg_host_t ind_dst_pm)
 {
@@ -119,7 +117,7 @@ void SIMIX_vm_migrate(sg_host_t ind_vm, sg_host_t ind_dst_pm)
 }
 
 /**
- * \brief Encompassing simcall to prevent the removal of the src or the dst node at the end of a VM migration
+ * @brief Encompassing simcall to prevent the removal of the src or the dst node at the end of a VM migration
  *  The simcall actually invokes the following calls: 
  *     simcall_vm_set_affinity(vm, src_pm, 0); 
  *     simcall_vm_migrate(vm, dst_pm); 
@@ -127,9 +125,9 @@ void SIMIX_vm_migrate(sg_host_t ind_vm, sg_host_t ind_dst_pm)
  *
  * It is called at the end of the migration_rx_fun function from msg/msg_vm.c
  *
- * \param vm VM to migrate
- * \param src_pm  Source physical host
- * \param dst_pmt Destination physical host
+ * @param vm VM to migrate
+ * @param src_pm  Source physical host
+ * @param dst_pmt Destination physical host
  */
 void SIMIX_vm_migratefrom_resumeto(sg_host_t vm, sg_host_t src_pm, sg_host_t dst_pm)
 {
@@ -145,9 +143,9 @@ void SIMIX_vm_migratefrom_resumeto(sg_host_t vm, sg_host_t src_pm, sg_host_t dst
 } 
 
 /**
- * \brief Function to get the physical host of the given SIMIX VM host.
+ * @brief Function to get the physical host of the given SIMIX VM host.
  *
- * \param host the vm host to get_phys_host (a sg_host_t)
+ * @param host the vm host to get_phys_host (a sg_host_t)
  */
 void *SIMIX_vm_get_pm(sg_host_t ind_vm)
 {
@@ -156,10 +154,10 @@ void *SIMIX_vm_get_pm(sg_host_t ind_vm)
 }
 
 /**
- * \brief Function to set the CPU bound of the given SIMIX VM host.
+ * @brief Function to set the CPU bound of the given SIMIX VM host.
  *
- * \param host the vm host (a sg_host_t)
- * \param bound bound (a double)
+ * @param host the vm host (a sg_host_t)
+ * @param bound bound (a double)
  */
 void SIMIX_vm_set_bound(sg_host_t ind_vm, double bound)
 {
@@ -168,11 +166,11 @@ void SIMIX_vm_set_bound(sg_host_t ind_vm, double bound)
 }
 
 /**
- * \brief Function to set the CPU affinity of the given SIMIX VM host.
+ * @brief Function to set the CPU affinity of the given SIMIX VM host.
  *
- * \param host the vm host (a sg_host_t)
- * \param host the pm host (a sg_host_t)
- * \param mask affinity mask (a unsigned long)
+ * @param host the vm host (a sg_host_t)
+ * @param host the pm host (a sg_host_t)
+ * @param mask affinity mask (a unsigned long)
  */
 void SIMIX_vm_set_affinity(sg_host_t ind_vm, sg_host_t ind_pm, unsigned long mask)
 {
@@ -185,11 +183,11 @@ void SIMIX_vm_set_affinity(sg_host_t ind_vm, sg_host_t ind_pm, unsigned long mas
 
 
 /**
- * \brief Function to suspend a SIMIX VM host. This function stops the execution of the
+ * @brief Function to suspend a SIMIX VM host. This function stops the execution of the
  * VM. All the processes on this VM will pause. The state of the VM is
  * preserved on memory. We can later resume it again.
  *
- * \param host the vm host to suspend (a sg_host_t)
+ * @param host the vm host to suspend (a sg_host_t)
  */
 void SIMIX_vm_suspend(sg_host_t ind_vm, smx_process_t issuer)
 {
@@ -226,10 +224,10 @@ void simcall_HANDLER_vm_suspend(smx_simcall_t simcall, sg_host_t ind_vm)
 
 
 /**
- * \brief Function to resume a SIMIX VM host. This function restart the execution of the
+ * @brief Function to resume a SIMIX VM host. This function restart the execution of the
  * VM. All the processes on this VM will run again.
  *
- * \param host the vm host to resume (a sg_host_t)
+ * @param host the vm host to resume (a sg_host_t)
  */
 void SIMIX_vm_resume(sg_host_t ind_vm, smx_process_t issuer)
 {
@@ -257,11 +255,11 @@ void simcall_HANDLER_vm_resume(smx_simcall_t simcall, sg_host_t ind_vm)
 
 
 /**
- * \brief Function to save a SIMIX VM host.
+ * @brief Function to save a SIMIX VM host.
  * This function is the same as vm_suspend, but the state of the VM is saved to the disk, and not preserved on memory.
  * We can later restore it again.
  *
- * \param host the vm host to save (a sg_host_t)
+ * @param host the vm host to save (a sg_host_t)
  */
 void SIMIX_vm_save(sg_host_t ind_vm, smx_process_t issuer)
 {
@@ -290,10 +288,10 @@ void simcall_HANDLER_vm_save(smx_simcall_t simcall, sg_host_t ind_vm)
 
 
 /**
- * \brief Function to restore a SIMIX VM host. This function restart the execution of the
+ * @brief Function to restore a SIMIX VM host. This function restart the execution of the
  * VM. All the processes on this VM will run again.
  *
- * \param host the vm host to restore (a sg_host_t)
+ * @param host the vm host to restore (a sg_host_t)
  */
 void SIMIX_vm_restore(sg_host_t ind_vm, smx_process_t issuer)
 {
@@ -321,11 +319,11 @@ void simcall_HANDLER_vm_restore(smx_simcall_t simcall, sg_host_t ind_vm)
 
 
 /**
- * \brief Function to shutdown a SIMIX VM host. This function powers off the
+ * @brief Function to shutdown a SIMIX VM host. This function powers off the
  * VM. All the processes on this VM will be killed. But, the state of the VM is
  * preserved on memory. We can later start it again.
  *
- * \param host the vm host to shutdown (a sg_host_t)
+ * @param host the vm host to shutdown (a sg_host_t)
  */
 void SIMIX_vm_shutdown(sg_host_t ind_vm, smx_process_t issuer)
 {
@@ -356,9 +354,9 @@ void simcall_HANDLER_vm_shutdown(smx_simcall_t simcall, sg_host_t ind_vm)
 
 
 /**
- * \brief Function to destroy a SIMIX VM host.
+ * @brief Function to destroy a SIMIX VM host.
  *
- * \param vm the vm host to destroy (a sg_host_t)
+ * @param vm the vm host to destroy (a sg_host_t)
  */
 void SIMIX_vm_destroy(sg_host_t vm)
 {
index 223c068..af5abc7 100644 (file)
@@ -36,9 +36,9 @@ namespace simgrid {
     void AsClusterTorus::create_links_for_node(sg_platf_cluster_cbarg_t cluster, int id, int rank, int position) {
       char *link_id;
       unsigned int j = 0;
-      /**
+      /*
        * Create all links that exist in the torus.
-       * Each rank creates #dimensions-1 links
+       * Each rank creates @a dimensions-1 links
        */
       int neighbour_rank_id = 0;        // The other node the link connects
       int current_dimension = 0,        // which dimension are we currently in?
@@ -72,7 +72,7 @@ namespace simgrid {
           info.link_up = Link::byName(link_id);
           info.link_down = info.link_up;
         }
-        /**
+        /*
          * Add the link to its appropriate position;
          * note that position rankId*(xbt_dynar_length(dimensions)+has_loopack?+has_limiter?)
          * holds the link "rankId->rankId"
@@ -92,8 +92,7 @@ namespace simgrid {
 
       if (!xbt_dynar_is_empty(dimensions)) {
         dimensions_ = xbt_dynar_new(sizeof(int), NULL);
-        /**
-         * We are in a torus cluster
+        /* We are in a torus cluster
          * Parse attribute dimensions="dim1,dim2,dim3,...,dimN"
          * and safe it in a dynarray.
          * Additionally, we need to know how many ranks we have in total
@@ -127,14 +126,14 @@ namespace simgrid {
       }
 
 
-      /**
+      /*
        * Dimension based routing routes through each dimension consecutively
        * TODO Change to dynamic assignment
        */
       unsigned int j, cur_dim, dim_product = 1;
       int current_node = src->id();
       int unsigned next_node = 0;
-      /**
+      /*
        * Arrays that hold the coordinates of the current node and
        * the target; comparing the values at the i-th position of
        * both arrays, we can easily assess whether we need to route
@@ -143,7 +142,7 @@ namespace simgrid {
       unsigned int *myCoords, *targetCoords;
       myCoords = rankId_to_coords(src->id(), dimensions_);
       targetCoords = rankId_to_coords(dst->id(), dimensions_);
-      /**
+      /*
        * linkOffset describes the offset where the link
        * we want to use is stored
        * (+1 is added because each node has a link from itself to itself,
index 5ddc32d..c423c91 100644 (file)
@@ -81,7 +81,6 @@ public:
    *
    * @param model HostModel associated to this Host
    * @param name The name of the Host
-   * @param props Dictionary of properties associated to this Host
    * @param storage The Storage associated to this Host
    * @param cpu The Cpu associated to this Host
    */
@@ -92,7 +91,6 @@ public:
    *
    * @param model HostModel associated to this Host
    * @param name The name of the Host
-   * @param props Dictionary of properties associated to this Host
    * @param constraint The lmm constraint associated to this Host if it is part of a LMM component
    * @param storage The Storage associated to this Host
    * @param cpu The Cpu associated to this Host
index 7473f1f..7ed69d0 100644 (file)
@@ -64,6 +64,7 @@ namespace simgrid {
        * @param bandwidth The initial bandwidth of the Link in bytes per second
        * @param latency The initial latency of the Link in seconds
        * @param policy The sharing policy of the Link
+       * @param props Dictionary of properties associated to this Link
        */
       virtual Link* createLink(const char *name, double bandwidth, double latency,
           e_surf_link_sharing_policy_t policy, xbt_dict_t properties)=0;
@@ -130,7 +131,7 @@ namespace simgrid {
      ************/
     /** @ingroup SURF_network_interface
      * @brief SURF network link interface class
-     * @details A Link represents the link between two [hosts](\ref Host)
+     * @details A Link represents the link between two [hosts](\ref simgrid::surf::Host)
      */
     class Link :
         public simgrid::surf::Resource,
index a073a63..effdb4b 100644 (file)
@@ -791,8 +791,7 @@ static void surf_config_models_setup()
  * Once this function was called, the configuration concerning the used
  * models cannot be changed anymore.
  *
- * @param AS_id name of this autonomous system. Must be unique in the platform
- * @param wanted_routing_type one of Full, Floyd, Dijkstra or similar. Full list in the variable routing_models, in src/surf/surf_routing.c
+ * @param AS the parameters defining the AS to build.
  */
 simgrid::s4u::As * sg_platf_new_AS_begin(sg_platf_AS_cbarg_t AS)
 {
index 4dd4e53..38cffdc 100644 (file)
@@ -11,7 +11,7 @@
 
 XBT_LOG_NEW_DEFAULT_SUBCATEGORY(xbt_matrix, xbt, "2D data storage");
 
-/** \brief constructor */
+/** @brief constructor */
 xbt_matrix_t xbt_matrix_new(int lines, int rows, const unsigned long elmsize, void_f_pvoid_t const free_f)
 {
   xbt_matrix_t res = xbt_new(s_xbt_matrix_t, 1);
@@ -23,7 +23,7 @@ xbt_matrix_t xbt_matrix_new(int lines, int rows, const unsigned long elmsize, vo
   return res;
 }
 
-/** \brief Creates a matrix being a submatrix of another one */
+/** @brief Creates a matrix being a submatrix of another one */
 xbt_matrix_t xbt_matrix_new_sub(xbt_matrix_t from, int lsize, int rsize, int lpos, int rpos,
                                 pvoid_f_pvoid_t const cpy_f)
 {
@@ -32,7 +32,7 @@ xbt_matrix_t xbt_matrix_new_sub(xbt_matrix_t from, int lsize, int rsize, int lpo
   return res;
 }
 
-/** \brief destructor */
+/** @brief destructor */
 void xbt_matrix_free(xbt_matrix_t mat)
 {
   if (mat) {
@@ -46,8 +46,8 @@ void xbt_matrix_free(xbt_matrix_t mat)
   }
 }
 
-/** \brief Display the content of a matrix (debugging purpose)
- *  \param coords: boolean indicating whether we should add the coords of each cell to the output*/
+/** @brief Display the content of a matrix (debugging purpose)
+ *  @param coords: boolean indicating whether we should add the coords of each cell to the output*/
 void xbt_matrix_dump(xbt_matrix_t matrix, const char *name, int coords, void_f_pvoid_t display_fun)
 {
   fprintf(stderr, ">>> Matrix %s dump (%u x %u)\n", name, matrix->lines, matrix->rows);
@@ -65,15 +65,16 @@ void xbt_matrix_dump(xbt_matrix_t matrix, const char *name, int coords, void_f_p
   fprintf(stderr, "<<< end_of_matrix %s dump\n", name);
 }
 
-/** \brief Copy the values from the matrix src into the matrix dst
- * \param dest: destination
- * \param src: source
- * \param lsize: number of lines to copy
- * \param rsize: number of rows to copy
- * \param lpos_dst: line offset on destination matrix
- * \param rpos_dst: row offset on destination matrix
- * \param lpos_src: line offset on destination matrix
- * \param rpos_src: row offset on destination matrix
+/** @brief Copy the values from the matrix src into the matrix dst
+ * @param dst: destination
+ * @param src: source
+ * @param lsize: number of lines to copy
+ * @param rsize: number of rows to copy
+ * @param lpos_dst: line offset on destination matrix
+ * @param rpos_dst: row offset on destination matrix
+ * @param lpos_src: line offset on destination matrix
+ * @param rpos_src: row offset on destination matrix
+ * @param cpy_f: the function to use to copy the elements over
  */
 void xbt_matrix_copy_values(xbt_matrix_t dst, xbt_matrix_t src, unsigned int lsize, unsigned int rsize,
                             unsigned int lpos_dst, unsigned int rpos_dst,unsigned int lpos_src, unsigned int rpos_src,
@@ -105,7 +106,7 @@ void xbt_matrix_copy_values(xbt_matrix_t dst, xbt_matrix_t src, unsigned int lsi
   }
 }
 
-/** \brief Creates a new matrix of double filled with zeros */
+/** @brief Creates a new matrix of double filled with zeros */
 xbt_matrix_t xbt_matrix_double_new_zeros(int lines, int rows)
 {
   xbt_matrix_t res = xbt_matrix_new(lines, rows, sizeof(double), NULL);
@@ -114,7 +115,7 @@ xbt_matrix_t xbt_matrix_double_new_zeros(int lines, int rows)
   return res;
 }
 
-/** \brief Creates a new matrix of double being the identity matrix */
+/** @brief Creates a new matrix of double being the identity matrix */
 xbt_matrix_t xbt_matrix_double_new_id(int lines, int rows)
 {
   xbt_matrix_t res = xbt_matrix_double_new_zeros(lines, rows);
@@ -124,7 +125,7 @@ xbt_matrix_t xbt_matrix_double_new_id(int lines, int rows)
   return res;
 }
 
-/** \brief Creates a new matrix of double containing the sequence of numbers in order */
+/** @brief Creates a new matrix of double containing the sequence of numbers in order */
 xbt_matrix_t xbt_matrix_double_new_seq(int lines, int rows)
 {
   xbt_matrix_t res = xbt_matrix_new(lines, rows, sizeof(double), NULL);
@@ -135,7 +136,7 @@ xbt_matrix_t xbt_matrix_double_new_seq(int lines, int rows)
   return res;
 }
 
-/** \brief add to C the result of A*B */
+/** @brief add to C the result of A*B */
 void xbt_matrix_double_addmult(xbt_matrix_t A, xbt_matrix_t B, /*OUT*/ xbt_matrix_t C)
 {
   xbt_assert(A->lines == C->lines, "A->lines != C->lines (%u vs %u)", A->lines, C->lines);
index 7cb36fe..6a54bb9 100644 (file)
@@ -478,8 +478,8 @@ char *xbt_str_from_file(FILE * file)
 
 /** @brief Parse an integer out of a string, or raise an error
  *
- * The #str is passed as argument to your #error_msg, as follows:
- *       THROWF(arg_error, 0, error_msg, str);
+ * The @a str is passed as argument to your @a error_msg, as follows:
+ * @verbatim THROWF(arg_error, 0, error_msg, str); @endverbatim
  */
 long int xbt_str_parse_int(const char* str, const char* error_msg)
 {
@@ -496,8 +496,8 @@ long int xbt_str_parse_int(const char* str, const char* error_msg)
 
 /** @brief Parse a double out of a string, or raise an error
  *
- * The #str is passed as argument to your #error_msg, as follows:
- *       THROWF(arg_error, 0, error_msg, str);
+ * The @a str is passed as argument to your @a error_msg, as follows:
+ * @verbatim THROWF(arg_error, 0, error_msg, str); @endverbatim
  */
 double xbt_str_parse_double(const char* str, const char* error_msg)
 {
index 555a3b1..2eacceb 100644 (file)
@@ -57,8 +57,6 @@ if(DOXYGEN_FOUND)
   ADD_CUSTOM_COMMAND(TARGET documentation
     COMMAND ${FIG2DEV_PATH}/fig2dev -Lmap ${CMAKE_HOME_DIRECTORY}/doc/shared/fig/simgrid_modules.fig | perl -pe 's/imagemap/simgrid_modules/g'| perl -pe 's/<IMG/<IMG style=border:0px/g' | ${CMAKE_HOME_DIRECTORY}/tools/doxygen/fig2dev_postprocessor.pl > ${CMAKE_HOME_DIRECTORY}/doc/simgrid_modules.map
     COMMAND pwd
-    COMMAND ${CMAKE_COMMAND} -E echo "XX Run doxygen"
-    COMMAND ${DOXYGEN_EXECUTABLE} Doxyfile
     COMMAND ${CMAKE_COMMAND} -E echo "XX Generate the index files"
     COMMAND ${CMAKE_COMMAND} -E remove ${CMAKE_HOME_DIRECTORY}/doc/doxygen/logcategories.doc
     COMMAND ${CMAKE_HOME_DIRECTORY}/tools/doxygen/xbt_log_extract_hierarchy.pl > ${CMAKE_HOME_DIRECTORY}/doc/doxygen/logcategories.doc
@@ -74,7 +72,7 @@ if(DOXYGEN_FOUND)
     COMMAND ${CMAKE_COMMAND} -E echo "XX Generate list of files in examples/ for XML tags"
     COMMAND ${CMAKE_HOME_DIRECTORY}/tools/doxygen/list_routing_models_examples.sh '<mount ' > ${CMAKE_HOME_DIRECTORY}/doc/example_lists/example_filelist_xmltag_mount
     COMMAND ${CMAKE_HOME_DIRECTORY}/tools/doxygen/list_routing_models_examples.sh '<link_ctn ' > ${CMAKE_HOME_DIRECTORY}/doc/example_lists/example_filelist_xmltag_linkctn
-    COMMAND ${CMAKE_COMMAND} -E echo "XX Run doxygen again"
+    COMMAND ${CMAKE_COMMAND} -E echo "XX Run doxygen"
     COMMAND ${DOXYGEN_EXECUTABLE} Doxyfile
     COMMAND ${CMAKE_COMMAND} -E remove ${CMAKE_HOME_DIRECTORY}/doc/simgrid_modules.map
     WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}/doc