00001 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil c-basic-offset: 3 -*- */ 00002 // vim:cindent:ts=3:sw=3:et:tw=80:sta: 00003 /*************************************************************** cppdom-cpr beg 00004 * 00005 * cppdom was forked from the original xmlpp version 0.6 under the LGPL. This 00006 * new, branched xmlpp is under the same LGPL (of course) and is being 00007 * maintained by: 00008 * Kevin Meinert <subatomic@users.sourceforge.net> 00009 * Allen Bierbaum <allenb@users.sourceforge.net> 00010 * Ben Scott <nonchocoboy@users.sourceforge.net> 00011 * 00012 * ----------------------------------------------------------------- 00013 * 00014 * xmlpp - an xml parser and validator written in C++ 00015 * copyright (c) 2000-2001 Michael Fink 00016 * 00017 * This library is free software; you can redistribute it and/or 00018 * modify it under the terms of the GNU Library General Public 00019 * License as published by the Free Software Foundation; either 00020 * version 2 of the License, or (at your option) any later version. 00021 * 00022 * This library is distributed in the hope that it will be useful, 00023 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00024 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00025 * Library General Public License for more details. 00026 * 00027 * You should have received a copy of the GNU Library General Public 00028 * License along with this library; if not, write to the 00029 * Free Software Foundation, Inc., 59 Temple Place - Suite 330, 00030 * Boston, MA 02111-1307, USA. 00031 * 00032 * ----------------------------------------------------------------- 00033 * File: $RCSfile: version.cpp,v $ 00034 * Date modified: $Date: 2003/01/03 02:37:47 $ 00035 * Version: $Revision: 1.2 $ 00036 * ----------------------------------------------------------------- 00037 * 00038 ************************************************************ cppdom-cpr-end */ 00039 #include "version.h" 00040 00041 // These helper macros are used to stringify a given macro 00042 #define CPPDOM_STR(s) # s 00043 #define CPPDOM_XSTR(s) CPPDOM_STR(s) 00044 00045 // These helper macros are used to build up the CPPDOM_VERSION_STRING macro. 00046 #define CPPDOM_DOT(a,b) a ## . ## b 00047 #define CPPDOM_XDOT(a,b) CPPDOM_DOT(a,b) 00048 00049 //-------------------------------------------------------------------------- 00050 // Define the CPPDOM_VERSION_STRING macros 00051 //-------------------------------------------------------------------------- 00052 00053 // Create the CPPDOM_VERSION_STRING macro 00054 #define CPPDOM_VERSION_STRING \ 00055 CPPDOM_XDOT( \ 00056 CPPDOM_XDOT(CPPDOM_VERSION_MAJOR, CPPDOM_VERSION_MINOR), \ 00057 CPPDOM_VERSION_PATCH \ 00058 ) 00059 00060 namespace cppdom 00061 { 00062 const char* version = CPPDOM_XSTR(CPPDOM_VERSION_STRING); 00063 } 00064 00065 // Undef all the helper macros 00066 #undef CPPDOM_XSTR 00067 #undef CPPDOM_STR 00068 #undef CPPDOM_DOT 00069 #undef CPPDOM_XDOT 00070 00071 // Undef the CPPDOM_VERSION_STRING temporary macro 00072 #undef CPPDOM_VERSION_STRING 00073