42#ifndef INCLUDED_GLS_VERSION_H
43#define INCLUDED_GLS_VERSION_H
64#define GLS_VERSION_MAJOR 8
67#define GLS_VERSION_MINOR 1
70#define GLS_VERSION_BUILD 0000
73#define GLS_STRINGIZE( x ) #x
76#define GLS_STRINGIZE_VALUE( x ) GLS_STRINGIZE( x )
79#define GLS_VERSION_1( a, b ) GLS_STRINGIZE( a.b )
82#define GLS_VERSION GLS_VERSION_1( GLS_VERSION_MAJOR, GLS_VERSION_MINOR )
86#define GLS_LICENSE_VERSION GLS_VERSION_1( GLS_VERSION_MAJOR, 0 )
89#define GLS_BUILD_VERSION GLS_STRINGIZE_VALUE( GLS_VERSION_BUILD )
93# if !defined( GLS_COMPILER_VERSION )
95# pragma message( "Warning (gls_version.h): Unrecognized compiler version" )
96# define GLS_COMPILER_VERSION vcXX
99# pragma message( "Warning (gls_version.h): Unrecognized compiler version" )
100# define GLS_COMPILER_VERSION vcXX
101# elif _MSC_VER < 1800
102# define GLS_COMPILER_VERSION vc110
103# elif _MSC_VER < 1900
104# define GLS_COMPILER_VERSION vc120
105# elif _MSC_VER < 1910
106# define GLS_COMPILER_VERSION vc140
107# elif _MSC_VER < 1920
108# define GLS_COMPILER_VERSION vc141
109# elif _MSC_VER < 1930
110# define GLS_COMPILER_VERSION vc142
111# elif _MSC_VER < 1940
112# define GLS_COMPILER_VERSION vc143
114# pragma message( "Warning (gls_version.h): Unrecognized compiler version" )
115# define GLS_COMPILER_VERSION vcXX
125# define GLS_CRT_VERSION_INT_MD 0x06000000
126# define GLS_CRT_VERSION_INT_MT 0x02000000
127# define GLS_CRT_VERSION_INT_ML 0x01000000
128# define GLS_CRT_VERSION_INT_MDD 0x0E000000
129# define GLS_CRT_VERSION_INT_MTD 0x0A000000
130# define GLS_CRT_VERSION_INT_MLD 0x09000000
132# define GLS_CRT_VERSION_INT_MD_64 0x16000000
133# define GLS_CRT_VERSION_INT_MT_64 0x12000000
134# define GLS_CRT_VERSION_INT_ML_64 0x11000000
135# define GLS_CRT_VERSION_INT_MDD_64 0x1E000000
136# define GLS_CRT_VERSION_INT_MTD_64 0x1A000000
137# define GLS_CRT_VERSION_INT_MLD_64 0x19000000
139# if !defined( GLS_CRT_VERSION )
140# if defined( _DEBUG )
143# if defined( _WIN64 )
144# define GLS_CRT_VERSION _64mdd
145# define GLS_CRT_VERSION_INT GLS_CRT_VERSION_INT_MDD_64
147# define GLS_CRT_VERSION mdd
148# define GLS_CRT_VERSION_INT GLS_CRT_VERSION_INT_MDD
151# if defined( _WIN64 )
152# define GLS_CRT_VERSION _64mtd
153# define GLS_CRT_VERSION_INT GLS_CRT_VERSION_INT_MTD_64
155# define GLS_CRT_VERSION mtd
156# define GLS_CRT_VERSION_INT GLS_CRT_VERSION_INT_MTD
160# if defined( _WIN64 )
161# define GLS_CRT_VERSION _64mld
162# define GLS_CRT_VERSION_INT GLS_CRT_VERSION_INT_MLD_64
164# define GLS_CRT_VERSION mld
165# define GLS_CRT_VERSION_INT GLS_CRT_VERSION_INT_MLD
171# if defined( _WIN64 )
172# define GLS_CRT_VERSION _64md
173# define GLS_CRT_VERSION_INT GLS_CRT_VERSION_INT_MD_64
175# define GLS_CRT_VERSION md
176# define GLS_CRT_VERSION_INT GLS_CRT_VERSION_INT_MD
179# if defined( _WIN64 )
180# define GLS_CRT_VERSION _64mt
181# define GLS_CRT_VERSION_INT GLS_CRT_VERSION_INT_MT_64
183# define GLS_CRT_VERSION mt
184# define GLS_CRT_VERSION_INT GLS_CRT_VERSION_INT_MT
188# if defined( _WIN64 )
189# define GLS_CRT_VERSION _64ml
190# define GLS_CRT_VERSION_INT GLS_CRT_VERSION_INT_ML_64
192# define GLS_CRT_VERSION ml
193# define GLS_CRT_VERSION_INT GLS_CRT_VERSION_INT_ML
200# define GLS_CHECK_VERSION_ID_2( a, b, c, d, e ) GLS_VERSION_##a##_##b##_##c##_##d##_##e
203# define GLS_CHECK_VERSION_ID_1( v1, v2, v3, c1, c2 ) GLS_CHECK_VERSION_ID_2( v1, v2, v3, c1, c2 )
206# define GLS_CHECK_VERSION_ID GLS_CHECK_VERSION_ID_1( GLS_VERSION_MAJOR, GLS_VERSION_MINOR, GLS_VERSION_BUILD, GLS_COMPILER_VERSION, GLS_CRT_VERSION )
211# define GLS_CHECK_VERSION_ID_2( a, b, c ) GLS_VERSION_##a##_##b##_##c##_LIBRARY
214# define GLS_CHECK_VERSION_ID_1( v1, v2, v3 ) GLS_CHECK_VERSION_ID_2( v1, v2, v3 )
217# define GLS_CHECK_VERSION_ID GLS_CHECK_VERSION_ID_1( GLS_VERSION_MAJOR, GLS_VERSION_MINOR, GLS_VERSION_BUILD )
250#
if defined( _MSC_VER )
251 int compilerVersion = _MSC_VER + GLS_CRT_VERSION_INT )
252#elif defined( __GNUC__ )
253 int compilerVersion = __GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__ )
255 int compilerVersion = 0 )
282#if defined( __GNUC__ )
283 if( !compiler_compatible )
289 compiler_compatible =
true;
Definition: gls_version.h:234
GlsBuiltVersionInfo2(int glsMajor=8, int glsMinor=1, int glsBuild=0000, int compilerVersion=0)
Definition: gls_version.h:246
int _glsBuild
The build, and build minor runtime version.
Definition: gls_version.h:238
int _glsMinor
The minor runtime version.
Definition: gls_version.h:237
int _glsMajor
The major runtime version.
Definition: gls_version.h:236
int _compilerVersion
The compiler version.
Definition: gls_version.h:239
A file for all GL Studio files to include.
#define GLS_EXPORT
Macro denoting which functions should be visible from the runtime library.
Definition: gls_include.h:52
#define GLS_CHECK_VERSION_ID
The version check string, present as a symbol in the runtime library.
Definition: gls_version.h:217
#define GLS_VERSION_MINOR
The minor version of this runtime library build. i.e. 0.X.0000.
Definition: gls_version.h:67
#define GLS_VERSION_MAJOR
The major version of this runtime library build. i.e. X.0.0000.
Definition: gls_version.h:64
#define GLS_VERSION_BUILD
The build and build minor versions of this runtime library build. i.e. 0.0.XXXX.
Definition: gls_version.h:70
Force inclusion of the DirectShow library.
Definition: bmpimage.h:47
bool GlsBuiltVersionsMatchExactly(const GlsBuiltVersionInfo &a, const GlsBuiltVersionInfo &b)
Definition: gls_version.h:270
bool GlsBuiltVersionsAreBinaryCompatible(const GlsBuiltVersionInfo &a, const GlsBuiltVersionInfo &b)
Definition: gls_version.h:278
GlsBuiltVersionInfo2 GlsBuiltVersionInfo
Typedef for backward compatibilty purposes.
Definition: gls_version.h:265