Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use variable substitution in the command line before starting it up
[simgrid.git] / tools / tesh / tesh.h
index c0127ea..8e7b17e 100644 (file)
@@ -2,7 +2,7 @@
 
 /* TESH (Test Shell) -- mini shell specialized in running test units        */
 
-/* Copyright (c) 2007 Martin Quinson.                                       */
+/* Copyright (c) 2007-2008, Da SimGrid team.                                */
 /* All rights reserved.                                                     */
 
 /* This program is free software; you can redistribute it and/or modify it
 #ifndef TESH_H
 #define TESH_H
 
+#include "portable.h"
 #include "xbt/xbt_os_thread.h"
-/*** Buffers ***/
-/***************/
-#include "buff.h"
+#include "xbt/strbuff.h"
 
 /*** What we need to know about signals ***/
 /******************************************/
 const char* signal_name(unsigned int got, char *expected);
 
 #include "run_context.h"
-  
+
 /*** Options ***/
 int timeout_value; /* child timeout value */
 
 rctx_t rctx;
 char *testsuite_name;
+
+
+/* Environment related definitions */
+# ifdef __APPLE__
+/* under darwin, the environment gets added to the process at startup time. So, it's not defined at library link time, forcing us to extra tricks */
+# include <crt_externs.h>
+# define environ (*_NSGetEnviron())
+# else
+/* the environment, as specified by the opengroup, used to initialize the process properties */
+extern char **environ;
+# endif
+
+xbt_dict_t env; /* the environment, stored as a dict (for variable substitution) */
+
 #endif /* TESH_H */