mirror of
https://github.com/libretro/scummvm.git
synced 2024-12-13 04:28:37 +00:00
260 lines
5.5 KiB
C++
260 lines
5.5 KiB
C++
/* ScummVM - Graphic Adventure Engine
|
|
*
|
|
* ScummVM is the legal property of its developers, whose names
|
|
* are too numerous to list here. Please refer to the COPYRIGHT
|
|
* file distributed with this source distribution.
|
|
*
|
|
* This program is free software: you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation, either version 3 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
*
|
|
*/
|
|
|
|
#include "common/scummsys.h"
|
|
#include "base/version.h"
|
|
|
|
#define INCLUDED_FROM_BASE_VERSION_CPP
|
|
#include "base/internal_version.h"
|
|
|
|
/*
|
|
* Version string and build date string. These can be used by anything that
|
|
* wants to display this information to the user (e.g. about dialog).
|
|
*
|
|
* Note: it would be very nice if we could instead of (or in addition to) the
|
|
* build date present a date which corresponds to the date our source files
|
|
* were last changed. To understand the difference, imagine that a user
|
|
* makes a checkout on January 1, then after a week compiles it
|
|
* (e.g. after doing a 'make clean'). The build date then will say January 8
|
|
* even though the files were last changed on January 1.
|
|
*
|
|
* Another problem is that __DATE__/__TIME__ depend on the local time zone.
|
|
*
|
|
* It's clear that such a "last changed" date would be much more useful to us
|
|
* for feedback purposes. After all, when somebody files a bug report, we
|
|
* don't care about the build date, we want to know which date their checkout
|
|
* was made.
|
|
*
|
|
* So, how could we implement this? At least on unix systems, a special script
|
|
* could do it. Basically, that script could parse the output of "svn info" or
|
|
* "svnversion" to determine the revision of the checkout, and insert that
|
|
* information somehow into the build process (e.g. by generating a tiny
|
|
* header file, analog to internal_version.h, maybe called svn_rev.h or so.)
|
|
*
|
|
* Drawback: This only works on systems which can run suitable scripts as part
|
|
* of the build process (so I guess Visual C++ would be out of the game here?
|
|
* I don't know VC enough to be sure). And of course it must be robust enough
|
|
* to properly work in exports (i.e. release tar balls etc.).
|
|
*/
|
|
const char gScummVMVersion[] = SCUMMVM_VERSION SCUMMVM_REVISION;
|
|
#if defined(__amigaos4__) || defined(__MORPHOS__)
|
|
static const char *version_cookie __attribute__((used)) = "$VER: ScummVM " SCUMMVM_VERSION SCUMMVM_REVISION " (" AMIGA_DATE ")";
|
|
#endif
|
|
const char gScummVMBuildDate[] = __DATE__ " " __TIME__;
|
|
const char gScummVMVersionDate[] = SCUMMVM_VERSION SCUMMVM_REVISION " (" __DATE__ " " __TIME__ ")";
|
|
const char gScummVMCompiler[] = ""
|
|
#define STR_HELPER(x) #x
|
|
#define STR(x) STR_HELPER(x)
|
|
#if defined(_MSC_VER)
|
|
"MSVC " STR(_MSC_FULL_VER)
|
|
#elif defined(__INTEL_COMPILER)
|
|
"ICC " STR(__INTEL_COMPILER) "." STR(__INTEL_COMPILER_UPDATE)
|
|
#elif defined(__clang__)
|
|
"Clang " STR(__clang_major__) "." STR(__clang_minor__) "." STR(__clang_patchlevel__)
|
|
#elif defined(__GNUC__)
|
|
"GCC " STR(__GNUC__) "." STR(__GNUC_MINOR__) "." STR(__GNUC_PATCHLEVEL__)
|
|
#else
|
|
"unknown compiler"
|
|
#endif
|
|
#undef STR
|
|
#undef STR_HELPER
|
|
;
|
|
const char gScummVMFullVersion[] = "ScummVM " SCUMMVM_VERSION SCUMMVM_REVISION " (" __DATE__ " " __TIME__ ")";
|
|
const char gScummVMFeatures[] = ""
|
|
#ifdef TAINTED_BUILD
|
|
// TAINTED means the build contains engines/subengines not enabled by default
|
|
"TAINTED "
|
|
#endif
|
|
|
|
#ifdef USE_TREMOR
|
|
# ifdef USE_TREMOLO
|
|
// libTremolo is used on WinCE for better ogg performance
|
|
"Tremolo "
|
|
# else
|
|
"Tremor "
|
|
# endif
|
|
#elif defined(USE_VORBIS)
|
|
"Vorbis "
|
|
#endif
|
|
|
|
#ifdef USE_FLAC
|
|
"FLAC "
|
|
#endif
|
|
|
|
#ifdef USE_MAD
|
|
"MP3 "
|
|
#endif
|
|
|
|
#ifdef USE_ALSA
|
|
"ALSA "
|
|
#endif
|
|
|
|
#ifdef USE_SEQ_MIDI
|
|
"SEQ "
|
|
#endif
|
|
|
|
#ifdef USE_SNDIO
|
|
"sndio "
|
|
#endif
|
|
|
|
#ifdef USE_TIMIDITY
|
|
"TiMidity "
|
|
#endif
|
|
|
|
#ifdef USE_RGB_COLOR
|
|
"RGB "
|
|
#endif
|
|
|
|
#ifdef USE_ZLIB
|
|
"zLib "
|
|
#endif
|
|
|
|
#ifdef USE_MPEG2
|
|
"MPEG2 "
|
|
#endif
|
|
|
|
#ifdef USE_FLUIDLITE
|
|
"FluidLite "
|
|
#elif defined(USE_FLUIDSYNTH)
|
|
"FluidSynth "
|
|
#endif
|
|
|
|
#ifdef USE_SONIVOX
|
|
"EAS "
|
|
#endif
|
|
|
|
#ifdef USE_MIKMOD
|
|
"MikMod "
|
|
#endif
|
|
|
|
#ifdef USE_OPENMPT
|
|
"OpenMPT "
|
|
#endif
|
|
|
|
#ifdef USE_THEORADEC
|
|
"Theora "
|
|
#endif
|
|
|
|
#ifdef USE_VPX
|
|
"VPX "
|
|
#endif
|
|
|
|
#ifdef USE_FAAD
|
|
"AAC "
|
|
#endif
|
|
|
|
#ifdef USE_A52
|
|
"A/52 "
|
|
#endif
|
|
|
|
#ifdef USE_FREETYPE2
|
|
"FreeType2 "
|
|
#endif
|
|
|
|
#ifdef USE_FRIBIDI
|
|
"FriBiDi "
|
|
#endif
|
|
|
|
#ifdef USE_JPEG
|
|
"JPEG "
|
|
#endif
|
|
|
|
#ifdef USE_PNG
|
|
"PNG "
|
|
#endif
|
|
|
|
#ifdef USE_GIF
|
|
"GIF "
|
|
#endif
|
|
|
|
#ifdef ENABLE_VKEYBD
|
|
"VirtualKeyboard "
|
|
#endif
|
|
|
|
#ifdef ENABLE_EVENTRECORDER
|
|
"EventRecorder "
|
|
#endif
|
|
|
|
#ifdef USE_TASKBAR
|
|
"taskbar "
|
|
#endif
|
|
|
|
#ifdef USE_TTS
|
|
"TTS "
|
|
#endif
|
|
|
|
#ifdef USE_CLOUD
|
|
"cloud ("
|
|
# ifdef USE_LIBCURL
|
|
"servers"
|
|
# ifdef USE_SDL_NET
|
|
", local) "
|
|
# else
|
|
") "
|
|
# endif
|
|
# endif
|
|
#else
|
|
# ifdef USE_LIBCURL
|
|
"libcurl "
|
|
# endif
|
|
# ifdef USE_SDL_NET
|
|
"SDL_net "
|
|
# endif
|
|
#endif
|
|
|
|
#ifdef USE_ENET
|
|
"ENet "
|
|
#endif
|
|
|
|
#ifdef SDL_BACKEND
|
|
# ifdef USE_SDL2
|
|
"SDL2 "
|
|
# else
|
|
"SDL1.2 "
|
|
# endif
|
|
#endif
|
|
|
|
#ifdef USE_TINYGL
|
|
"TinyGL "
|
|
#endif
|
|
|
|
#ifdef USE_OPENGL
|
|
"OpenGL "
|
|
# ifdef USE_OPENGL_SHADERS
|
|
"(with shaders) "
|
|
# endif
|
|
#endif
|
|
|
|
#ifdef USE_GLES_MODE
|
|
# if USE_GLES_MODE == 0
|
|
"OpenGL desktop only "
|
|
# elif USE_GLES_MODE == 1
|
|
"OpenGL ES 1 only "
|
|
# elif USE_GLES_MODE == 2
|
|
"OpenGL ES 2 only "
|
|
# endif
|
|
#endif
|
|
|
|
#ifdef USE_RETROWAVE
|
|
"RetroWave "
|
|
#endif
|
|
;
|