]>
Commit | Line | Data |
---|---|---|
cdd8d745 VZ |
1 | /* |
2 | * Name: wx/version.h | |
3 | * Purpose: wxWidgets version numbers | |
4 | * Author: Julian Smart | |
5 | * Modified by: Ryan Norton (Converted to C) | |
6 | * Created: 29/01/98 | |
7 | * RCS-ID: $Id$ | |
8 | * Copyright: (c) 1998 Julian Smart | |
9 | * Licence: wxWindows licence | |
10 | */ | |
34cbe514 RN |
11 | |
12 | /* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */ | |
c801d85f | 13 | |
1fd4a033 VZ |
14 | #ifndef _WX_VERSION_H_ |
15 | #define _WX_VERSION_H_ | |
c801d85f | 16 | |
cdd8d745 | 17 | #include "wx/cpp.h" /* for wxSTRINGIZE */ |
386f7c47 | 18 | |
34cbe514 RN |
19 | /* the constants below must be changed with each new version */ |
20 | /* ---------------------------------------------------------------------------- */ | |
c0589c62 | 21 | |
151815eb VZ |
22 | /* |
23 | Don't forget to update WX_CURRENT, WX_REVISION and WX_AGE in | |
24 | build/bakefiles/version.bkl and regenerate the makefiles when you change | |
25 | this! | |
26 | */ | |
27 | ||
28 | /* NB: this file is parsed by automatic tools so don't change its format! */ | |
eeade4cc | 29 | #define wxMAJOR_VERSION 2 |
7fd3acaf | 30 | #define wxMINOR_VERSION 9 |
14b682f7 | 31 | #define wxRELEASE_NUMBER 5 |
7fd3acaf | 32 | #define wxSUBRELEASE_NUMBER 0 |
14b682f7 | 33 | #define wxVERSION_STRING wxT("wxWidgets 2.9.5") |
1fd4a033 | 34 | |
34cbe514 RN |
35 | /* nothing to update below this line when updating the version */ |
36 | /* ---------------------------------------------------------------------------- */ | |
c0589c62 | 37 | |
67d124f6 MW |
38 | /* Users can pre-define wxABI_VERSION to a lower value in their |
39 | * makefile/project settings to compile code that will be binary compatible | |
40 | * with earlier versions of the ABI within the same minor version (between | |
41 | * minor versions binary compatibility breaks anyway). The default is the | |
42 | * version of wxWidgets being used. A single number with two decimal digits | |
43 | * for each component, e.g. 20601 for 2.6.1 */ | |
44 | #ifndef wxABI_VERSION | |
45a9a137 | 45 | #define wxABI_VERSION ( wxMAJOR_VERSION * 10000 + wxMINOR_VERSION * 100 + 99 ) |
67d124f6 MW |
46 | #endif |
47 | ||
34cbe514 | 48 | /* helpers for wxVERSION_NUM_XXX */ |
d70471fe VZ |
49 | #define wxMAKE_VERSION_STRING(x, y, z) \ |
50 | wxSTRINGIZE(x) wxSTRINGIZE(y) wxSTRINGIZE(z) | |
51 | #define wxMAKE_VERSION_DOT_STRING(x, y, z) \ | |
52 | wxSTRINGIZE(x) "." wxSTRINGIZE(y) "." wxSTRINGIZE(z) | |
1fd4a033 | 53 | |
860037d1 VZ |
54 | #define wxMAKE_VERSION_STRING_T(x, y, z) \ |
55 | wxSTRINGIZE_T(x) wxSTRINGIZE_T(y) wxSTRINGIZE_T(z) | |
56 | #define wxMAKE_VERSION_DOT_STRING_T(x, y, z) \ | |
9a83f860 | 57 | wxSTRINGIZE_T(x) wxT(".") wxSTRINGIZE_T(y) wxT(".") wxSTRINGIZE_T(z) |
860037d1 | 58 | |
34cbe514 | 59 | /* these are used by src/msw/version.rc and should always be ASCII, not Unicode */ |
c0589c62 VZ |
60 | #define wxVERSION_NUM_STRING \ |
61 | wxMAKE_VERSION_STRING(wxMAJOR_VERSION, wxMINOR_VERSION, wxRELEASE_NUMBER) | |
62 | #define wxVERSION_NUM_DOT_STRING \ | |
63 | wxMAKE_VERSION_DOT_STRING(wxMAJOR_VERSION, wxMINOR_VERSION, wxRELEASE_NUMBER) | |
860037d1 VZ |
64 | |
65 | /* those are Unicode-friendly */ | |
66 | #define wxVERSION_NUM_STRING_T \ | |
67 | wxMAKE_VERSION_STRING_T(wxMAJOR_VERSION, wxMINOR_VERSION, wxRELEASE_NUMBER) | |
68 | #define wxVERSION_NUM_DOT_STRING_T \ | |
69 | wxMAKE_VERSION_DOT_STRING_T(wxMAJOR_VERSION, wxMINOR_VERSION, wxRELEASE_NUMBER) | |
1fd4a033 | 70 | |
34cbe514 | 71 | /* some more defines, not really sure if they're [still] useful */ |
d0ee33f5 | 72 | #define wxVERSION_NUMBER ( (wxMAJOR_VERSION * 1000) + (wxMINOR_VERSION * 100) + wxRELEASE_NUMBER ) |
d5a07b9e | 73 | #define wxBETA_NUMBER 0 |
d0ee33f5 | 74 | #define wxVERSION_FLOAT ( wxMAJOR_VERSION + (wxMINOR_VERSION/10.0) + (wxRELEASE_NUMBER/100.0) + (wxBETA_NUMBER/10000.0) ) |
c801d85f | 75 | |
34cbe514 | 76 | /* check if the current version is at least major.minor.release */ |
f6bcfd97 BP |
77 | #define wxCHECK_VERSION(major,minor,release) \ |
78 | (wxMAJOR_VERSION > (major) || \ | |
79 | (wxMAJOR_VERSION == (major) && wxMINOR_VERSION > (minor)) || \ | |
80 | (wxMAJOR_VERSION == (major) && wxMINOR_VERSION == (minor) && wxRELEASE_NUMBER >= (release))) | |
81 | ||
eeade4cc VZ |
82 | /* the same but check the subrelease also */ |
83 | #define wxCHECK_VERSION_FULL(major,minor,release,subrel) \ | |
d0ee33f5 | 84 | (wxCHECK_VERSION(major, minor, release) && \ |
eeade4cc VZ |
85 | ((major) != wxMAJOR_VERSION || \ |
86 | (minor) != wxMINOR_VERSION || \ | |
87 | (release) != wxRELEASE_NUMBER || \ | |
d0ee33f5 | 88 | (subrel) <= wxSUBRELEASE_NUMBER)) |
eeade4cc | 89 | |
34cbe514 | 90 | #endif /* _WX_VERSION_H_ */ |
1fd4a033 | 91 |