1 
2 //  ------------------------------------------------------------------
3 //  GoldED+
4 //  Copyright (C) 1990-1999 Odinn Sorensen
5 //  Copyright (C) 1999-2000 Alexander S. Aganichev
6 //  ------------------------------------------------------------------
7 //  This program is free software; you can redistribute it and/or
8 //  modify it under the terms of the GNU General Public License as
9 //  published by the Free Software Foundation; either version 2 of the
10 //  License, or (at your option) any later version.
11 //
12 //  This program is distributed in the hope that it will be useful,
13 //  but WITHOUT ANY WARRANTY; without even the implied warranty of
14 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15 //  General Public License for more details.
16 //
17 //  You should have received a copy of the GNU General Public License
18 //  along with this program; if not, write to the Free Software
19 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
20 //  MA 02111-1307 USA
21 //  ------------------------------------------------------------------
22 //  $Id: golded3.cpp,v 1.16 2011/02/22 13:45:52 stas_degteff Exp $
23 //  ------------------------------------------------------------------
24 //  Product name and version stuff.
25 //  ------------------------------------------------------------------
26 #include <gcmpall.h>
27 //  ------------------------------------------------------------------
28 //  comment out for release
29 #define __GVER_SNAPSHOT__
30 //  ------------------------------------------------------------------
31 #ifndef __SRCDATE__
32 #include "../srcdate.h"
33 #endif
34 
35 #ifdef __GVER_SNAPSHOT__
36 #define __SO__ "-b"
37 #define __SC__ ""
38 #else
39 #undef __SRCDATE__
40 #define __SRCDATE__
41 #define __SO__
42 #define __SC__
43 #endif
44 
45 #define __GVER_LONGPID__  __GVER_PRENAME__ __GVER_NAME__ __GVER_POSTNAME__ __GVER_PLATFORM__
46 #define __GVER_SHORTPID__ __GVER_PRESHORTNAME__ __GVER_SHORTNAME__ __GVER_POSTSHORTNAME__ __GVER_SHORTPLATFORM__
47 #define __GVER_VER__(A,B,C) __GVER_PREVERSION__ #A "." #B "." #C __GVER_POSTVERSION__ __SO__ __SRCDATE__ __SC__
48 #define __GVER_SVER__(A,B,C) #A "." #B "." #C
49 
50 #define __GVER__(__GVER_MAJOR__,__GVER_MINOR__,__GVER_RELEASE__) \
51   int         __gver_major__    = __GVER_MAJOR__; \
52   int         __gver_minor__    = __GVER_MINOR__; \
53   int         __gver_release__  = __GVER_RELEASE__; \
54   const char* __gver_longpid__  = __GVER_LONGPID__; \
55   const char* __gver_shortpid__ = __GVER_SHORTPID__; \
56   const char* __gver_ver__      = __GVER_VER__(__GVER_MAJOR__,__GVER_MINOR__,__GVER_RELEASE__); \
57   const char* __gver_shortver__ = __GVER_SVER__(__GVER_MAJOR__,__GVER_MINOR__,__GVER_RELEASE__);
58 
59 
60 //  ------------------------------------------------------------------
61 //  Product name.
62 
63 #define __GVER_NAME__           "GoldED"
64 #define __GVER_SHORTNAME__      "GED"
65 
66 
67 //  ------------------------------------------------------------------
68 //  Vendor data displayed on the startup screen.
69 //  Define in "mygolded.h" if you want.
70 
71 #define __GVER_VENDOR_NAME__ "Anonymous"
72 #define __GVER_VENDOR_FIDO__ ""
73 #define __GVER_VENDOR_EMAIL__ ""
74 #define __GVER_RELEASENAME__ ""
75 
76 
77 //  ------------------------------------------------------------------
78 //  Strings prepended and appended to the product name.
79 //  Define in "mygolded.h" if you want.
80 
81 #define __GVER_PRENAME__       ""
82 #define __GVER_POSTNAME__      ""
83 #define __GVER_PRESHORTNAME__  ""
84 #define __GVER_POSTSHORTNAME__ ""
85 
86 
87 //  ------------------------------------------------------------------
88 //  Strings prepended and appened to the version numbers.
89 //  Define in "mygolded.h" if you want.
90 
91 #define __GVER_PREVERSION__    ""
92 #define __GVER_POSTVERSION__   ""
93 
94 
95 //  ------------------------------------------------------------------
96 //  Platform specific strings.
97 
98 #if defined(__MSDOS__)
99 #define __GVER_PLATFORM__      "/DPMI32"
100 #define __GVER_SHORTPLATFORM__ "DPMI"
101 #define __GVER_SHORTLOGNAME__  "X"
102 #define __GVER_CFGEXT__        ".gex"
103 #elif defined(__EMX__)
104 #define __GVER_PLATFORM__      "/EMX"
105 #define __GVER_SHORTPLATFORM__ "2"
106 #define __GVER_SHORTLOGNAME__  "2"
107 #define __GVER_CFGEXT__        ".geo"
108 #elif defined(__OS2__)
109 #define __GVER_PLATFORM__      "/2"
110 #define __GVER_SHORTPLATFORM__ "2"
111 #define __GVER_SHORTLOGNAME__  "2"
112 #define __GVER_CFGEXT__        ".geo"
113 #elif defined(__WIN32__)
114   #if defined(_M_X64)
115     #if defined(_MSC_VER)
116       #define __GVER_PLATFORM__      "/W64-MSVC"
117     #elif defined(__MINGW32__)
118       #define __GVER_PLATFORM__      "/W64-MINGW"
119     #else
120       #define __GVER_PLATFORM__      "/W64"
121     #endif
122     #define __GVER_SHORTPLATFORM__ "W64"
123     #define __GVER_SHORTLOGNAME__  "W"
124     #define __GVER_CFGEXT__        ".gew"
125   #else
126     #if defined(_MSC_VER)
127       #define __GVER_PLATFORM__      "/W32-MSVC"
128     #elif defined(__MINGW32__)
129       #define __GVER_PLATFORM__      "/W32-MINGW"
130     #else
131       #define __GVER_PLATFORM__      "/W32"
132     #endif
133     #define __GVER_SHORTPLATFORM__ "W32"
134     #define __GVER_SHORTLOGNAME__  "W"
135     #define __GVER_CFGEXT__        ".gew"
136   #endif
137 #elif defined(__linux__)
138 #define __GVER_PLATFORM__      "/LNX"
139 #define __GVER_SHORTPLATFORM__ "LNX"
140 #define __GVER_SHORTLOGNAME__  "L"
141 #define __GVER_CFGEXT__        ".gel"
142 #elif defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(__DragonFly__)
143 #define __GVER_PLATFORM__      "/BSD"
144 #define __GVER_SHORTPLATFORM__ "BSD"
145 #define __GVER_SHORTLOGNAME__  "B"
146 #define __GVER_CFGEXT__        ".geb"
147 #elif defined(__BEOS__)
148 #define __GVER_PLATFORM__      "/BeOS"
149 #define __GVER_SHORTPLATFORM__ "BeOS"
150 #define __GVER_SHORTLOGNAME__  "B"
151 #define __GVER_CFGEXT__        ".gbe"
152 #elif defined(__QNXNTO__)
153 #define __GVER_PLATFORM__      "/QNX"
154 #define __GVER_SHORTPLATFORM__ "QNX"
155 #define __GVER_SHORTLOGNAME__  "Q"
156 #define __GVER_CFGEXT__        ".gqx"
157 #elif defined(__sun__)
158   #if defined(__i386__)
159     #define __GVER_PLATFORM__      "/SunX86"
160     #define __GVER_CFGEXT__        ".ges"
161   #elif defined(__sparc__)
162     #define __GVER_PLATFORM__      "/SunSparc"
163     #define __GVER_CFGEXT__        ".gsu"
164   #else
165     #define __GVER_PLATFORM__      "/Sun"
166     #define __GVER_CFGEXT__        ".gsu"
167   #endif
168   #define __GVER_SHORTPLATFORM__ "SUN"
169   #define __GVER_SHORTLOGNAME__  "S"
170 #elif defined(__APPLE__)
171 #define __GVER_PLATFORM__      "/OSX"
172 #define __GVER_SHORTPLATFORM__ "OSX"
173 #define __GVER_SHORTLOGNAME__  "M"
174 #define __GVER_CFGEXT__        ".gem"
175 #elif defined(__UNIX__)
176 #define __GVER_PLATFORM__      "/UNX"
177 #define __GVER_SHORTPLATFORM__ "UNX"
178 #define __GVER_SHORTLOGNAME__  "U"
179 #define __GVER_CFGEXT__        ".geu"
180 #else
181 #define __GVER_PLATFORM__      ""
182 #define __GVER_SHORTPLATFORM__ ""
183 #define __GVER_SHORTLOGNAME__  "D"
184 #define __GVER_CFGEXT__        ".ged"
185 #endif
186 
187 //  ------------------------------------------------------------------
188 
189 // Include your personalized strings here:
190 #include <mygolded.h>
191 
192 
193 //  ------------------------------------------------------------------
194 //  Global variables
195 
196 const char* __gver_vendor_name__   = __GVER_VENDOR_NAME__;
197 const char* __gver_vendor_fido__   = __GVER_VENDOR_FIDO__;
198 const char* __gver_vendor_email__  = __GVER_VENDOR_EMAIL__;
199 const char* __gver_prename__       = __GVER_PRENAME__;
200 const char* __gver_preshortname__  = __GVER_PRESHORTNAME__;
201 const char* __gver_name__          = __GVER_NAME__;
202 const char* __gver_shortname__     = __GVER_SHORTNAME__;
203 const char* __gver_shortlogname__  = __GVER_SHORTNAME__ __GVER_SHORTLOGNAME__;
204 const char* __gver_postshortname__ = __GVER_POSTSHORTNAME__;
205 const char* __gver_postname__      = __GVER_POSTNAME__;
206 const char* __gver_platform__      = __GVER_PLATFORM__;
207 const char* __gver_shortplatform__ = __GVER_SHORTPLATFORM__;
208 const char* __gver_cfgext__        = __GVER_CFGEXT__;
209 const char* __gver_preversion__    = __GVER_PREVERSION__;
210 const char* __gver_postversion__   = __GVER_POSTVERSION__;
211 const char* __gver_releasename__   = __GVER_RELEASENAME__;
212 const char* __gver_date__          = __DATE__;
213 const char* __gver_time__          = __TIME__;
214 
215 
216 //  ------------------------------------------------------------------
217