5 /* Copyright (c) 2003, 2004 Martin Quinson. All rights reserved. */
7 /* This program is free software; you can redistribute it and/or modify it
8 * under the terms of the license (GNU LGPL) which comes with this package. */
10 #include "xbt/sysdep.h"
12 #include "xbt/dynar.h"
13 #include "xbt/config.h"
15 #include "xbt/module.h" /* this module */
17 #include "xbt_modinter.h" /* prototype of other module's init/exit in XBT */
19 XBT_LOG_NEW_DEFAULT_SUBCATEGORY(module,xbt, "module handling");
21 char *xbt_binary_name=NULL; /* Mandatory to retrieve neat backtraces */
22 int xbt_initialized=0;
28 xbt_module_new_fct_t new;
29 xbt_module_finalize_fct_t finalize;
32 /** @brief Initialize the xbt mechanisms. */
34 xbt_init(int *argc, char **argv) {
37 if (xbt_initialized!=1)
40 xbt_binary_name = strdup(argv[0]);
41 VERB0("Initialize XBT");
43 xbt_log_init(argc,argv);
46 /** @brief Finalize the xbt mechanisms. */
50 if (xbt_initialized == 0)
51 free(xbt_binary_name);