[Scummvm-cvs-logs] SF.net SVN: scummvm: [21687] scummvm/trunk

fingolfin at users.sourceforge.net fingolfin at users.sourceforge.net
Sat Apr 8 04:38:01 CEST 2006


Revision: 21687
Author:   fingolfin
Date:     2006-04-08 04:36:49 -0700 (Sat, 08 Apr 2006)
ViewCVS:  http://svn.sourceforge.net/scummvm/?rev=21687&view=rev

Log Message:
-----------
Moved version vars from base/main.cpp to base/version.cpp; thus now version.o is always rebuilt on every change, not main.o

Modified Paths:
--------------
    scummvm/trunk/Makefile.common
    scummvm/trunk/base/main.cpp
    scummvm/trunk/base/module.mk

Added Paths:
-----------
    scummvm/trunk/base/version.cpp
Modified: scummvm/trunk/Makefile.common
===================================================================
--- scummvm/trunk/Makefile.common	2006-04-08 11:21:04 UTC (rev 21686)
+++ scummvm/trunk/Makefile.common	2006-04-08 11:36:49 UTC (rev 21687)
@@ -70,10 +70,10 @@
 DEPDIRS = $(addsuffix /$(DEPDIR),$(MODULE_DIRS))
 DEPFILES = 
 
-# Make main.o depend on all other object files. This way if anything is
-# changed, it causes main.cpp to be recompiled. This in turn ensures that
+# Make base/version.o depend on all other object files. This way if anything is
+# changed, it causes version.cpp to be recompiled. This in turn ensures that
 # the build date in gScummVMBuildDate is correct.
-base/main.o: $(filter-out base/libbase.a,$(OBJS))
+base/version.o: $(filter-out base/libbase.a,$(OBJS))
 
 # The build rule for the ScummVM executable
 $(EXECUTABLE):  $(OBJS)

Modified: scummvm/trunk/base/main.cpp
===================================================================
--- scummvm/trunk/base/main.cpp	2006-04-08 11:21:04 UTC (rev 21686)
+++ scummvm/trunk/base/main.cpp	2006-04-08 11:36:49 UTC (rev 21687)
@@ -33,7 +33,6 @@
 #include "base/engine.h"
 #include "base/gameDetector.h"
 #include "base/plugins.h"
-#include "base/internal_version.h"
 #include "base/version.h"
 #include "common/config-manager.h"
 #include "common/file.h"
@@ -59,89 +58,6 @@
 #include "gui/Actions.h"
 #endif
 
-/*
- * 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 of CVS 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. This is even more important now since anon CVS lags a few
- * days behind developer CVS.
- *
- * So, how could we implement this? At least on unix systems, a special script
- * could do it. Basically, that script would run over all .cpp/.h files and
- * parse the CVS 'Header' keyword we have in our file headers.
- * That line contains a date/time in GMT. Now, the script just has to collect
- * all these times and find the latest. This time then would be inserted into
- * a header file or so (common/date.h ?) which engine.cpp then could
- * include and put into a global variable analog to gScummVMBuildDate.
- *
- * Drawback: scanning all source/header files will be rather slow. Also, this
- * only works on systems which can run powerful enough scripts (so I guess
- * Visual C++ would be out of the game here? don't know VC enough to be sure).
- *
- * Another approach would be to somehow get CVS to update a global file
- * (e.g. LAST_CHANGED) whenever any checkins are made. That would be
- * faster and work w/o much "logic" on the client side, in particular no
- * scripts have to be run. The problem with this is that I am not even
- * sure it's actually possible! Modifying files during commit time is trivial
- * to setup, but I have no idea if/how one can also change files which are not
- * currently being commit'ed.
- */
-const char *gScummVMVersion = SCUMMVM_VERSION;
-const char *gScummVMBuildDate = __DATE__ " " __TIME__;
-const char *gScummVMVersionDate = SCUMMVM_VERSION " (" __DATE__ " " __TIME__ ")";
-const char *gScummVMFullVersion = "ScummVM " SCUMMVM_VERSION " (" __DATE__ " " __TIME__ ")";
-const char *gScummVMFeatures = ""
-#ifdef USE_TREMOR
-	"Tremor "
-#else
-#ifdef USE_VORBIS
-	"Vorbis "
-#endif
-#endif
-	
-#ifdef USE_FLAC
-	"FLAC "
-#endif
-
-#ifdef USE_MAD
-	"MP3 "
-#endif
-
-#ifdef USE_ALSA
-	"ALSA "
-#endif
-
-#ifdef USE_ZLIB
-	"zLib "
-#endif
-
-#ifdef USE_MPEG2
-	"MPEG2 "
-#endif
-
-#ifdef USE_FLUIDSYNTH
-	"FluidSynth "
-#endif
-
-#ifdef __SYMBIAN32__
-// we want a list of compiled in engines visible in the program,
-// because we also release special builds with only one engine
-#include "backends/symbian/src/main_features.inl"
-#endif
-	;
-
 /** List all supported game IDs, i.e. all games which any loaded plugin supports. */
 void listGames() {
 	const PluginList &plugins = PluginManager::instance().getPlugins();

Modified: scummvm/trunk/base/module.mk
===================================================================
--- scummvm/trunk/base/module.mk	2006-04-08 11:21:04 UTC (rev 21686)
+++ scummvm/trunk/base/module.mk	2006-04-08 11:36:49 UTC (rev 21687)
@@ -4,7 +4,8 @@
 	engine.o \
 	gameDetector.o \
 	main.o \
-	plugins.o
+	plugins.o \
+	version.o
 
 MODULE_DIRS += \
 	base

Added: scummvm/trunk/base/version.cpp
===================================================================
--- scummvm/trunk/base/version.cpp	                        (rev 0)
+++ scummvm/trunk/base/version.cpp	2006-04-08 11:36:49 UTC (rev 21687)
@@ -0,0 +1,110 @@
+/* ScummVM - Scumm Interpreter
+ * Copyright (C) 2001  Ludvig Strigeus
+ * Copyright (C) 2001-2006 The ScummVM project
+ *
+ * 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 2
+ * 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, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * $URL$
+ * $Id: main.cpp 21627 2006-04-05 06:58:18Z sev $
+ *
+ */
+
+#include "common/stdafx.h"
+#include "base/internal_version.h"
+#include "base/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 of CVS 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. This is even more important now since anon CVS lags a few
+ * days behind developer CVS.
+ *
+ * So, how could we implement this? At least on unix systems, a special script
+ * could do it. Basically, that script would run over all .cpp/.h files and
+ * parse the CVS 'Header' keyword we have in our file headers.
+ * That line contains a date/time in GMT. Now, the script just has to collect
+ * all these times and find the latest. This time then would be inserted into
+ * a header file or so (common/date.h ?) which engine.cpp then could
+ * include and put into a global variable analog to gScummVMBuildDate.
+ *
+ * Drawback: scanning all source/header files will be rather slow. Also, this
+ * only works on systems which can run powerful enough scripts (so I guess
+ * Visual C++ would be out of the game here? don't know VC enough to be sure).
+ *
+ * Another approach would be to somehow get CVS to update a global file
+ * (e.g. LAST_CHANGED) whenever any checkins are made. That would be
+ * faster and work w/o much "logic" on the client side, in particular no
+ * scripts have to be run. The problem with this is that I am not even
+ * sure it's actually possible! Modifying files during commit time is trivial
+ * to setup, but I have no idea if/how one can also change files which are not
+ * currently being commit'ed.
+ */
+const char *gScummVMVersion = SCUMMVM_VERSION;
+const char *gScummVMBuildDate = __DATE__ " " __TIME__;
+const char *gScummVMVersionDate = SCUMMVM_VERSION " (" __DATE__ " " __TIME__ ")";
+const char *gScummVMFullVersion = "ScummVM " SCUMMVM_VERSION " (" __DATE__ " " __TIME__ ")";
+const char *gScummVMFeatures = ""
+#ifdef USE_TREMOR
+	"Tremor "
+#else
+#ifdef USE_VORBIS
+	"Vorbis "
+#endif
+#endif
+	
+#ifdef USE_FLAC
+	"FLAC "
+#endif
+
+#ifdef USE_MAD
+	"MP3 "
+#endif
+
+#ifdef USE_ALSA
+	"ALSA "
+#endif
+
+#ifdef USE_ZLIB
+	"zLib "
+#endif
+
+#ifdef USE_MPEG2
+	"MPEG2 "
+#endif
+
+#ifdef USE_FLUIDSYNTH
+	"FluidSynth "
+#endif
+
+#ifdef __SYMBIAN32__
+// we want a list of compiled in engines visible in the program,
+// because we also release special builds with only one engine
+#include "backends/symbian/src/main_features.inl"
+#endif
+	;
+


Property changes on: scummvm/trunk/base/version.cpp
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:keywords
   + "Date Rev Author URL Id"
Name: svn:eol-style
   + native


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.





More information about the Scummvm-git-logs mailing list