1 |
arta |
1.1 |
/* |
2 |
|
|
* jsoc_version.h |
3 |
|
|
* |
4 |
|
|
* Contains the master version, release and build number definition. |
5 |
|
|
* |
6 |
|
|
* Responsible: CM |
7 |
|
|
* |
8 |
|
|
* NOTE: !!!!!!!! This should only be modified by the CM !!!!!!!!!!!! |
9 |
|
|
* |
10 |
|
|
*/ |
11 |
|
|
|
12 |
|
|
#ifndef JSOC_VERSION_INCL |
13 |
|
|
|
14 |
|
|
#define JSOC_VERSION_INCL 1 |
15 |
|
|
|
16 |
arta |
1.110 |
#define jsoc_version "V9R0" |
17 |
|
|
#define jsoc_vers_num (900) |
18 |
arta |
1.1 |
|
19 |
arta |
1.21 |
|
20 |
|
|
static inline const char *jsoc_getversion(char *verstr, int size, int *isdev) |
21 |
|
|
{ |
22 |
arta |
1.64 |
char *vers = strdup(jsoc_version); |
23 |
|
|
char *pc = NULL; |
24 |
|
|
int len = strlen(jsoc_version); |
25 |
|
|
|
26 |
|
|
if (vers) |
27 |
|
|
{ |
28 |
|
|
if (isdev) |
29 |
|
|
{ |
30 |
|
|
*isdev = 0; |
31 |
|
|
} |
32 |
|
|
|
33 |
|
|
if ((pc = strchr(vers, 'R')) != NULL) |
34 |
|
|
{ |
35 |
|
|
*pc = '\0'; |
36 |
|
|
} |
37 |
|
|
|
38 |
|
|
if (jsoc_version[len - 1] == 'X') |
39 |
|
|
{ |
40 |
|
|
if (isdev) |
41 |
|
|
{ |
42 |
|
|
*isdev = 1; |
43 |
|
|
} |
44 |
|
|
|
45 |
|
|
vers[len - 1] = '\0'; |
46 |
|
|
} |
47 |
|
|
|
48 |
|
|
snprintf(verstr, size, "%s.%s", vers + 1, pc + 1); |
49 |
|
|
|
50 |
|
|
free(vers); |
51 |
|
|
} |
52 |
|
|
else |
53 |
|
|
{ |
54 |
|
|
fprintf(stderr, "Out of memory.\n"); |
55 |
|
|
} |
56 |
|
|
|
57 |
|
|
return jsoc_version; |
58 |
arta |
1.21 |
} |
59 |
|
|
|
60 |
arta |
1.1 |
#endif |
61 |
|
|
|