diff --git a/SConstruct b/SConstruct index 1a8e9c1d5..84886e5a7 100644 --- a/SConstruct +++ b/SConstruct @@ -51,6 +51,7 @@ class DXXProgram: self.opengles_lib = str(ARGUMENTS.get('opengles_lib', self.OGLES_LIB)) self.asm = int(ARGUMENTS.get('asm', 0)) self.editor = int(ARGUMENTS.get('editor', 0)) + self.extra_version = ARGUMENTS.get('extra_version', None) self.sdlmixer = int(ARGUMENTS.get('sdlmixer', 1)) self.ipv6 = int(ARGUMENTS.get('ipv6', 0)) self.use_udp = int(ARGUMENTS.get('use_udp', 1)) @@ -497,8 +498,13 @@ class D2XProgram(DXXProgram): def register_program(self): env = self.env exe_target = os.path.join(self.srcdir, self.target) + versid_cppdefines=env['CPPDEFINES'][:] + if self.user_settings.extra_version: + versid_cppdefines.append(('DESCENT_VERSION_EXTRA', '\\"%s\\"' % self.user_settings.extra_version)) + env.Object(source = ['main/vers_id.c'], CPPDEFINES=versid_cppdefines) + versid_sources = ['main/vers_id%s' % env['OBJSUFFIX']] # finally building program... - env.Program(target=str(exe_target), source = self.common_sources, LIBS = self.platform_settings.libs, LINKFLAGS = str(self.platform_settings.lflags)) + env.Program(target=str(exe_target), source = self.common_sources + versid_sources, LIBS = self.platform_settings.libs, LINKFLAGS = str(self.platform_settings.lflags)) if (sys.platform != 'darwin'): env.Install(self.user_settings.BIN_DIR, str(exe_target)) env.Alias('install', self.user_settings.BIN_DIR) diff --git a/main/inferno.c b/main/inferno.c index f404643aa..2ec9edbf6 100644 --- a/main/inferno.c +++ b/main/inferno.c @@ -359,7 +359,7 @@ int main(int argc, char *argv[]) load_text(); //print out the banner title - con_printf(CON_NORMAL, "%s%s %s %s\n", DESCENT_VERSION, PHYSFSX_exists(MISSION_DIR "d2x.hog",1) ? " Vertigo Enhanced" : "", __DATE__,__TIME__); // D2X version + con_printf(CON_NORMAL, "%s%s %s\n", DESCENT_VERSION, PHYSFSX_exists(MISSION_DIR "d2x.hog",1) ? " Vertigo Enhanced" : "", g_descent_build_datetime); // D2X version con_printf(CON_NORMAL, "This is a MODIFIED version of Descent 2, based on %s.\n", BASED_VERSION); con_printf(CON_NORMAL, "%s\n%s\n",TXT_COPYRIGHT,TXT_TRADEMARK); con_printf(CON_NORMAL, "Copyright (C) 1999 Peter Hawkins, 2002 Bradley Bell, 2005-2011 Christian Beckhaeuser\n\n"); diff --git a/main/vers_id.c b/main/vers_id.c new file mode 100644 index 000000000..5ade53700 --- /dev/null +++ b/main/vers_id.c @@ -0,0 +1,8 @@ +#include "vers_id.h" + +#ifndef DESCENT_VERSION_EXTRA +#define DESCENT_VERSION_EXTRA "v" VERSION +#endif + +const char g_descent_version[40] = "D2X-Rebirth " DESCENT_VERSION_EXTRA; +const char g_descent_build_datetime[20] = __DATE__ " " __TIME__; diff --git a/main/vers_id.h b/main/vers_id.h index 78eb7b703..5289c15a3 100644 --- a/main/vers_id.h +++ b/main/vers_id.h @@ -12,6 +12,9 @@ #define BASED_VERSION "Full Version v1.2" #define VERSION D2XMAJOR "." D2XMINOR "." D2XMICRO -#define DESCENT_VERSION "D2X-Rebirth v" VERSION +#define DESCENT_VERSION g_descent_version + +extern const char g_descent_version[40]; +extern const char g_descent_build_datetime[20]; #endif /* _VERS_ID */