]> icculus.org git repositories - taylor/freespace2.git/blob - include/version.h
Initial revision
[taylor/freespace2.git] / include / version.h
1 /*
2  * $Logfile: /Freespace2/code/GlobalIncs/version.h $
3  * $Revision$
4  * $Date$
5  * $Author$
6  *
7  *
8  * $Log$
9  * Revision 1.1  2002/05/03 03:28:12  root
10  * Initial revision
11  *
12  * 
13  * 23    11/03/99 11:07a Jefff
14  * version num -> 1.2
15  * 
16  * 22    10/27/99 3:05p Jefff
17  * upped version to 1.1 for german
18  * 
19  * 21    10/25/99 5:40p Jefff
20  * bump version to 1.02 for German version
21  * 
22  * 20    10/06/99 10:24a Jefff
23  * upped OEM version to 1.0
24  * 
25  * 19    10/01/99 9:10a Daveb
26  * V 1.1 PATCH
27  * 
28  * 18    9/14/99 7:34a Dave
29  * 
30  * 17    9/13/99 12:00a Dave
31  * Bumped to 0.07
32  * 
33  * 16    9/11/99 11:01p Dave
34  * Upped to 0.06
35  * 
36  * 15    9/10/99 9:44p Dave
37  * Bumped version # up. Make server reliable connects not have such a huge
38  * timeout. 
39  * 
40  * 14    8/16/99 4:04p Dave
41  * Big honking checkin.
42  * 
43  * 13    8/09/99 2:21p Andsager
44  * Fix patching from multiplayer direct to launcher update tab.
45  * 
46  * 12    8/09/99 10:36a Dave
47  * Version info for game.
48  * 
49  * 11    8/06/99 4:37p Andsager
50  * demo patch to 1.10
51  * 
52  * 10    8/06/99 4:35p Andsager
53  * test patching - up demo version to 1.01
54  * 
55  * 9     8/06/99 10:33a Andsager
56  * Demo release canditate version number.
57  * 
58  * 8     8/06/99 12:33a Andsager
59  * up demo to 1.2
60  * 
61  * 7     8/05/99 5:31p Andsager
62  * Up demo version 1.01
63  * 
64  * 6     7/30/99 11:59a Andsager
65  * 
66  * 5     7/28/99 2:51p Andsager
67  * Update demo build to 1.0.0
68  * 
69  * 4     7/27/99 8:59a Andsager
70  * Make major, minor version consistent for all builds.  Only show major
71  * and minor for launcher update window.
72  * 
73  * 3     7/15/99 9:20a Andsager
74  * FS2_DEMO initial checkin
75  * 
76  * 2     5/19/99 4:07p Dave
77  * Moved versioning code into a nice isolated common place. Fixed up
78  * updating code on the pxo screen. Fixed several stub problems.
79  * 
80  * 1     5/18/99 4:28p Dave
81  * 
82  * $NoKeywords: $
83  */
84
85 #ifndef __FS2_VERSIONING_HEADER_FILE
86 #define __FS2_VERSIONING_HEADER_FILE
87
88 // ----------------------------------------------------------------------------------------------------------------
89 // VERSION DEFINES/VARS
90 //
91
92 // keep this defined to build a standalone only executable
93 // STANDALONE_ONLY
94 // #define STANDALONE_ONLY_BUILD
95 // #define STANDALONE_ONLY_RELEASE_VERSION              0
96
97 // Here are the version defines.  
98 //      Gets displayed as MAJOR.MINOR, or 1.21 if MAJOR = 1, MINOR = 21.
99 //      Prior to release, MAJOR should be zero.  After release, it should be 1.  Probably never increase to 2 as that could
100 //      cause confusion with a sequel.
101 //      MINOR should increase by 1 for each minor upgrade and by 10 for major upgrades.
102 //      With each rev we send, we should increase MINOR.
103 // Version history (full version):
104 //              1.0     Initial US/UK release
105 //              1.01    Patch for Win95 volume label bug
106 //              1.20    German release version
107
108 #if defined (FS2_DEMO)
109         #define FS_VERSION_MAJOR 01                                     // Major is 0 for pre-release and 1 for 1.0 release
110         #define FS_VERSION_MINOR 10                                     // Increase by 1 for minor revs, 10 for major.
111         #define FS_VERSION_BUILD 00                                     // Build version 
112 #elif defined(OEM_BUILD)
113         #define FS_VERSION_MAJOR 01                                     // Major is 0 for pre-release and 1 for 1.0 release
114         #define FS_VERSION_MINOR 00                                     // Increase by 1 for minor revs, 10 for major.
115         #define FS_VERSION_BUILD 00                                     // Build version 
116 #else
117         #define FS_VERSION_MAJOR 01                                     // Major is 0 for pre-release and 1 for 1.0 release
118         #define FS_VERSION_MINOR 20                                     // Increase by 1 for minor revs, 10 for major.
119         #define FS_VERSION_BUILD 00                                     // Build version 
120 #endif
121
122 #define VERSION_LOC_FNAME                       "version.nfo"
123 #define MOTD_LOC_FNAME                          "motd.txt"
124
125 #ifdef MULTIPLAYER_BETA_BUILD
126         #define MOTD_URL                                                "http://www.pxo.net/files/fs2beta/motd.txt"
127         #define VERSION_URL                                     "http://www.pxo.net/files/fs2beta/version.nfo"
128 #elif defined(FS2_DEMO)
129         #define MOTD_URL                                                "http://www.pxo.net/files/fs2demo/motd.txt"
130         #define VERSION_URL                                     "http://www.pxo.net/files/fs2demo/version.nfo"
131 #else
132         #define MOTD_URL                                                "http://www.pxo.net/files/fs2/motd.txt"
133         #define VERSION_URL                                     "http://www.pxo.net/files/fs2/version.nfo"
134 #endif
135
136 #define VERSION_FILE_COMMENT_CHAR ';'
137 #define NO_VERSION_IN_REGISTRY          -2
138
139 // ----------------------------------------------------------------------------------------------------------------
140 // VERSION FUNCTIONS
141 //
142
143 // compare version against the passed version file
144 // returns -1 on error 
145 // 0 if we are an earlier version
146 // 1 if same version
147 // 2 if higher version
148 // fills in user version and latest version values if non-NULL
149 int version_compare(char *filename, int *u_major, int *u_minor, int *u_build, int *l_major, int *l_minor, int *l_build);
150
151 #endif
152