static void LOG_help(void)
{
- printf("Description of the logging output:\n"
-"\n Threshold configuration: --log=CATEGORY_NAME.thres:PRIORITY_LEVEL\n"
+ printf(
+"Description of the logging output:\n"
+"\n"
+" Threshold configuration: --log=CATEGORY_NAME.thres:PRIORITY_LEVEL\n"
" CATEGORY_NAME: defined in code with function 'XBT_LOG_NEW_CATEGORY'\n"
" PRIORITY_LEVEL: the level to print (trace,debug,verbose,info,warning,error,critical)\n"
" -> trace: enter and return of some functions\n"
" -> warning: minor issue encountered\n"
" -> error: issue encountered\n"
" -> critical: major issue encountered\n"
-"\n Format configuration: --log=CATEGORY_NAME.fmt:OPTIONS\n"
-" OPTIONS may be:\n"
+"\n"
+" Format configuration: --log=CATEGORY_NAME.fmt:OPTIONS\n"
+" OPTIONS may be:\n"
" -> %%%%: the %% char\n"
" -> %%n: platform-dependent line separator (LOG4J compatible)\n"
" -> %%e: plain old space (SimGrid extension)\n"
" -> %%B: short backtrace (only the first line of the %%b). Called %%throwable{short} in LOG4J; defined where %%b is.\n"
"\n"
" -> %%d: date (UNIX-like epoch)\n"
-" -> %%r: application age (time elapsed since the beginning of the application)\n");
+" -> %%r: application age (time elapsed since the beginning of the application)\n"
+ );
}
/* Parse the command line, looking for options */
int i, j;
char *opt;
- for (i = 1; i < *argc; i++) {
- int remove_it = 0;
+ for (j = i = 1; i < *argc; i++) {
if (!strncmp(argv[i], "--cfg=", strlen("--cfg="))) {
opt = strchr(argv[i], '=');
opt++;
xbt_cfg_set_parse(_surf_cfg_set, opt);
XBT_DEBUG("Did apply '%s' as config setting", opt);
- remove_it = 1;
- } else if (!strncmp(argv[i], "--cfg-help", strlen("--cfg-help") + 1) ||
- !strncmp(argv[i], "--help", strlen("--help") + 1)) {
+ } else if (!strcmp(argv[i], "--cfg-help") || !strcmp(argv[i], "--help")) {
printf
("Description of the configuration accepted by this simulator:\n");
xbt_cfg_help(_surf_cfg_set);
- printf("\nYou can also use --help-models to see the details of all models known by this simulator.\n");
+ printf(
+"\n"
+"You can also use --help-models to see the details of all models known by this simulator.\n"
#ifdef HAVE_TRACING
- printf("\nYou can also use --help-tracing to see the details of all tracing options known by this simulator.\n");
+"\n"
+"You can also use --help-tracing to see the details of all tracing options known by this simulator.\n"
#endif
- printf("\nYou can also use --help-logs to see the details of logging output.\n\n");
+"\n"
+"You can also use --help-logs to see the details of logging output.\n"
+"\n"
+ );
exit(0);
- } else if (!strncmp(argv[i], "--help-models", strlen("--help-models") + 1)) {
+ } else if (!strcmp(argv[i], "--help-models")) {
model_help("workstation", surf_workstation_model_description);
printf("\n");
model_help("CPU", surf_cpu_model_description);
printf(" %s: %s\n", surf_optimization_mode_description[i].name, surf_optimization_mode_description[i].description);
printf("Both network and CPU models have 'Lazy' as default optimization level\n");
exit(0);
- } else if (!strncmp(argv[i], "--help-logs", strlen("--help-logs") + 1)) {
+ } else if (!strcmp(argv[i], "--help-logs")) {
LOG_help ();
exit(0);
#ifdef HAVE_TRACING
- } else if (!strncmp(argv[i], "--help-tracing", strlen("--help-tracing") + 1)) {
+ } else if (!strcmp(argv[i], "--help-tracing")) {
TRACE_help (1);
exit(0);
#endif
+ } else {
+ argv[j++] = argv[i];
}
- if (remove_it) { /*remove this from argv */
- for (j = i + 1; j < *argc; j++) {
- argv[j - 1] = argv[j];
- }
-
- argv[j - 1] = NULL;
- (*argc)--;
- i--; /* compensate effect of next loop incrementation */
- }
+ }
+ if (j < *argc) {
+ argv[j] = NULL;
+ *argc = j;
}
}