-
Notifications
You must be signed in to change notification settings - Fork 0
/
sli_startup.h
113 lines (95 loc) · 2.21 KB
/
sli_startup.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
/*
* slistartup.h
*
* This file is part of NEST
*
* Copyright (C) 2004 by
* The NEST Initiative
*
* See the file AUTHORS for details.
*
* Permission is granted to compile and modify
* this file for non-commercial use.
* See the file LICENSE for details.
*
*/
#ifndef SLI_STARTUP_H
#define SLI_STARTUP_H
#include "sli_config.h"
#include "sli_module.h"
#include "sli_token.h"
#include "sli_function.h"
#include "sli_name.h"
#include "compose.hpp"
#include "dirent.h"
#include "errno.h"
#include <string>
class SLIStartup: public SLIModule
{
const std::string startupfilename;
const std::string slilibpath;
std::string slihomepath;
std::string slidocdir;
std::string locateSLIInstallationPath(void);
bool checkpath(std::string const &, std::string &) const;
std::string getenv(const std::string &) const;
std::string checkenvpath(std::string const &, SLIInterpreter *, std::string) const;
Token targs;
int verbosity_;
bool debug_;
public:
Name argv_name;
Name prgname_name;
Name exitcode_name;
Name prgmajor_name;
Name prgminor_name;
Name prgpatch_name;
Name prgbuilt_name;
Name prefix_name;
Name prgsourcedir_name;
Name prgbuilddir_name;
Name prgdatadir_name;
Name prgdocdir_name;
Name host_name;
Name hostos_name;
Name hostvendor_name;
Name hostcpu_name;
Name getenv_name;
Name statusdict_name;
Name start_name;
Name intsize_name;
Name longsize_name;
Name havelonglong_name;
Name longlongsize_name;
Name doublesize_name;
Name pointersize_name;
Name architecturedict_name;
Name have_mpi_name;
Name ismpi_name;
Name have_gsl_name;
Name have_pthreads_name;
Name havemusic_name;
Name ndebug_name;
Name exitcodes_name;
Name exitcode_success_name;
Name exitcode_scripterror_name;
Name exitcode_abort_name;
Name exitcode_segfault_name;
Name exitcode_exception_name;
Name exitcode_fatal_name;
Name exitcode_unknownerror_name;
class GetenvFunction: public SLIFunction
{
public:
void execute(SLIInterpreter *) const;
};
GetenvFunction getenvfunction;
SLIStartup(int, char**);
~SLIStartup(){}
void init(SLIInterpreter *);
const std::string name(void) const
{
return "SLIStartup";
}
};
#endif