UniMRCP  1.5.0
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
uni_revision.h
Go to the documentation of this file.
1 /*
2  * Copyright 2008-2017 Arsen Chaloyan
3  *
4  * Licensed under the Apache License, Version 2.0 (the License);
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an AS IS BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #ifndef UNI_REVISION_H
18 #define UNI_REVISION_H
19 
20 /**
21  * @file uni_revision.h
22  * @brief UniMRCP Revision
23  *
24  * This file contains the revision number and other relevant information.
25  * The revision indicates the number of commits since the last release,
26  * and is supposed to be set by the maintainer on certain milestones between
27  * releases. The revision number is also reset to 0 on every new release.
28  */
29 
30 #include "uni_version.h"
31 
32 /** Revision (number of commits since last release). */
33 #define UNI_REVISION 0
34 
35 /** Revision string. */
36 #define UNI_REVISION_STRING "0"
37 
38 /** Revision date. */
39 #define UNI_REVISION_DATE "2017-08-22"
40 
41 /** Revision stamp. */
42 #define UNI_REVISION_STAMP 20170822L
43 
44 /** Check at compile time if the revision number is at least a certain level. */
45 #define UNI_REVISION_AT_LEAST(rev) ((rev) < UNI_REVISION)
46 
47 /** Check at compile time if the full version of UniMRCP is at least a certain level. */
48 #define UNI_FULL_VERSION_AT_LEAST(major,minor,patch,rev) \
49 (((major) < UNI_MAJOR_VERSION) \
50  || ((major) == UNI_MAJOR_VERSION && (minor) < UNI_MINOR_VERSION) \
51  || ((major) == UNI_MAJOR_VERSION && (minor) == UNI_MINOR_VERSION && (patch) < UNI_PATCH_VERSION) \
52  || ((major) == UNI_MAJOR_VERSION && (minor) == UNI_MINOR_VERSION && (patch) == UNI_PATCH_VERSION && (rev) <= UNI_REVISION))
53 
54 /**
55  * The formatted string of UniMRCP's full version.
56  * For example:
57  * release version string: 1.3.0
58  * development version string: 1.3.0-r33
59  */
60 #define UNI_FULL_VERSION_STRING \
61  (UNI_REVISION > 0) ? UNI_VERSION_STRING "-r" UNI_REVISION_STRING : UNI_VERSION_STRING
62 
63 #endif /* UNI_REVISION_H */
UniMRCP Version.