[67] | 1 | /*! |
---|
| 2 | * \file version.h |
---|
| 3 | * \author Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name> |
---|
[42] | 4 | * |
---|
[67] | 5 | * $Id: version.h 71 2009-12-07 16:06:44Z laleppa $ |
---|
| 6 | * $URL: https://tspsg.svn.sourceforge.net/svnroot/tspsg/trunk/src/version.h $ |
---|
| 7 | * |
---|
| 8 | * \brief Contains TSPSG version information defines. |
---|
| 9 | * |
---|
| 10 | * <b>TSPSG: TSP Solver and Generator</b> |
---|
| 11 | * |
---|
| 12 | * This file is part of TSPSG. |
---|
| 13 | * |
---|
| 14 | * TSPSG is free software: you can redistribute it and/or modify |
---|
| 15 | * it under the terms of the GNU General Public License as published by |
---|
| 16 | * the Free Software Foundation, either version 3 of the License, or |
---|
| 17 | * (at your option) any later version. |
---|
| 18 | * |
---|
| 19 | * TSPSG is distributed in the hope that it will be useful, |
---|
| 20 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
---|
| 21 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
---|
| 22 | * GNU General Public License for more details. |
---|
| 23 | * |
---|
| 24 | * You should have received a copy of the GNU General Public License |
---|
| 25 | * along with TSPSG. If not, see <http://www.gnu.org/licenses/>. |
---|
| 26 | */ |
---|
| 27 | /*! |
---|
| 28 | * \mainpage |
---|
[66] | 29 | * \image html tspsg.png |
---|
[64] | 30 | * <b>TSPSG: TSP Solver and Generator</b> |
---|
[66] | 31 | * \author Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name> |
---|
[64] | 32 | * |
---|
[42] | 33 | * $Id: version.h 71 2009-12-07 16:06:44Z laleppa $ |
---|
| 34 | * $URL: https://tspsg.svn.sourceforge.net/svnroot/tspsg/trunk/src/version.h $ |
---|
| 35 | * |
---|
| 36 | * TSPSG is free software: you can redistribute it and/or modify |
---|
| 37 | * it under the terms of the GNU General Public License as published by |
---|
| 38 | * the Free Software Foundation, either version 3 of the License, or |
---|
| 39 | * (at your option) any later version. |
---|
| 40 | * |
---|
| 41 | * TSPSG is distributed in the hope that it will be useful, |
---|
| 42 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
---|
| 43 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
---|
| 44 | * GNU General Public License for more details. |
---|
| 45 | * |
---|
| 46 | * You should have received a copy of the GNU General Public License |
---|
| 47 | * along with TSPSG. If not, see <http://www.gnu.org/licenses/>. |
---|
| 48 | */ |
---|
| 49 | |
---|
| 50 | #ifndef VERSION_H |
---|
| 51 | #define VERSION_H |
---|
| 52 | |
---|
[64] | 53 | //! TSPSG version ID |
---|
[63] | 54 | #define VERSIONID "$Id: version.h 71 2009-12-07 16:06:44Z laleppa $" |
---|
[64] | 55 | //! Major version of current TSPSG build |
---|
[42] | 56 | #define BUILD_VERSION_MAJOR 0 |
---|
[64] | 57 | //! Minor version of current TSPSG build |
---|
[42] | 58 | #define BUILD_VERSION_MINOR 1 |
---|
[71] | 59 | /*! |
---|
| 60 | * \brief TSPSG release number |
---|
| 61 | * |
---|
| 62 | * Release number meanings: |
---|
| 63 | * - 1 -- 3: <b>alpha</b> 1 to 3 |
---|
| 64 | * - 4 -- 7: <b>beta</b> 1 to 4 |
---|
| 65 | * - 8 -- 10: <b>rc</b> 1 to 3 |
---|
| 66 | * - 11 -- x: <b>release</b> 1 to x-10 |
---|
| 67 | */ |
---|
[45] | 68 | #define BUILD_RELEASE 2 |
---|
[64] | 69 | |
---|
| 70 | /*! |
---|
| 71 | * \brief Current TSPSG build number |
---|
| 72 | * |
---|
[71] | 73 | * This will only change on releases and will be the same as revision number. |
---|
[64] | 74 | */ |
---|
[45] | 75 | #define BUILD_NUMBER 65535 |
---|
[64] | 76 | |
---|
| 77 | /*! |
---|
| 78 | * \def BUILD_STATUS |
---|
| 79 | * \brief TSPSG build status |
---|
| 80 | * |
---|
[71] | 81 | * Determined based on BUILD_NUMBER and BUILD_RELEASE. |
---|
[64] | 82 | */ |
---|
[45] | 83 | #if BUILD_NUMBER == 65535 |
---|
| 84 | #define BUILD_STATUS (dev build) |
---|
[71] | 85 | #else |
---|
| 86 | #if BUILD_RELEASE < 4 |
---|
| 87 | #define BUILD_STATUS (alpha) |
---|
| 88 | #elif BUILD_RELEASE < 8 |
---|
| 89 | #define BUILD_STATUS (beta) |
---|
| 90 | #elif BUILD_RELEASE < 11 |
---|
| 91 | #define BUILD_STATUS (rc) |
---|
| 92 | #else |
---|
| 93 | #define BUILD_STATUS |
---|
| 94 | #endif |
---|
[45] | 95 | #endif // BUILD_NUMBER == 65535 |
---|
[42] | 96 | |
---|
[66] | 97 | //! \internal \brief A helper for QUOTE(x). |
---|
| 98 | #define QUOTE_X(x) #x |
---|
[64] | 99 | //! Used for "conversion" of \a x to quoted string |
---|
[42] | 100 | #define QUOTE(x) QUOTE_X(x) |
---|
| 101 | |
---|
[64] | 102 | /*! |
---|
| 103 | * \def BUILD_VERSION |
---|
[66] | 104 | * \brief Full version of TSPSG in the form: \c major.\c minor.\c release[ \c status]. |
---|
[64] | 105 | */ |
---|
[45] | 106 | #ifndef BUILD_STATUS |
---|
| 107 | #define BUILD_VERSION QUOTE(BUILD_VERSION_MAJOR.BUILD_VERSION_MINOR.BUILD_RELEASE) |
---|
| 108 | #else |
---|
| 109 | #define BUILD_VERSION QUOTE(BUILD_VERSION_MAJOR.BUILD_VERSION_MINOR.BUILD_RELEASE BUILD_STATUS) |
---|
| 110 | #endif |
---|
[42] | 111 | |
---|
| 112 | #endif // VERSION_H |
---|