/** \file Singleton to return SVN global revision \author Tom Paul \version $Id: SVNGlobalRevision.h.in 9955 2008-03-14 10:57:58Z javierg $ \date 28 Jun 2007 */ #ifndef _fwk_SVNGlobalRevision_h_ #define _fwk_SVNGlobalRevision_h_ static const char CVSId_fwk_SVNGlobalRevision[] = "$Id: SVNGlobalRevision.h.in 9955 2008-03-14 10:57:58Z javierg $"; #include #include namespace fwk { /** \brief Singleton to return SVN global revision This can be used to get the SVN global revision number, since the usual keyword replacement in SVN will not fill that information in anyplace. The revision number is determined using the svnversion utility at the time configure is run, IF you are working from the SVN repository. If you are not working from the repository (eg you use a tarball distribution), then the value was filled at the time the release manager built the distribution. NB. If you work from SVN, and you update your local revision but do not re-run configure, then the SVN global revision number in this file will not be updated. Too bad for you. In any case, it is a good idea to reconfigure when you update your local copy of the repository anyway. \author Tom Paul \version $Id: SVNGlobalRevision.h.in 9955 2008-03-14 10:57:58Z javierg $ \date 28 Jun 2007 */ class SVNGlobalRevision : public utl::Singleton { public: std::string GetId() const { return fGlobalId; } static std::string ExtractFromIdString(const char* const str); private: SVNGlobalRevision() : fGlobalId("23728") { } const std::string fGlobalId; friend class utl::Singleton; }; } // fwk #endif // _fwk_SVNGlobalRevision_h_ // Configure (x)emacs for this file ... // Local Variables: // mode:c++ // compile-command: "make -C .. -k" // End: