1 // os.h copyright "Ruurd A. Reitsma" <R.A.Reitsma@wbmt.tudelft.nl>
12 /// Do we need a base class for this?
17 UNIX, // Do we have to distinguish sh and csh?
22 static void init(int * argc, char ** argv[]);
25 static string binpath() {return binpath_;};
28 static string binname() {return binname_;};
30 // system_tempdir actually doesn't belong here.
31 // I put it here only to avoid a global variable.
32 static void setTmpDir(string p) {tmpdir_ = p;};
35 static string getTmpDir() {return tmpdir_;};
38 static string current_root();
41 static os::shell_type shell() {return _shell;};
44 static string::size_type common_path(string const &p1, string const &p2);
46 // no-op on UNIX, '\\'->'/' on OS/2 and Win32, ':'->'/' on MacOS, etc.
47 static string slashify_path(string p);
48 static string external_path(string p);
49 static void warn(string mesg);
51 static string binpath_;
52 static string binname_;
53 static string tmpdir_;
54 static os::shell_type _shell;
55 static unsigned long cp_; // Used only on OS/2 to determine file system encoding.
57 // Never initialize static variables in the header!
58 // Anyway I bet this class will never be constructed.