AcePerl

 view release on metacpan or  search on metacpan

acelib/wh/version.h  view on Meta::CPAN


#define UT_MAKE_GETCOMPILEDATEROUTINE()                                      \
char *utAppGetCompileDate(void) { return UT_COMPILE_PHRASE " " __DATE__ " " __TIME__ ; }



/* These tools assume that various numbers/strings are defined, e.g.         */
/*                                                                           */
/* #define SOME_TITLE   "UT library"         (definitive name for library)   */
/* #define SOME_DESC    "brief description"  (purpose of library - one liner)*/
/* #define SOME_VERSION 1                    (major version)                 */
/* #define SOME_RELEASE 0                    (minor version)                 */
/* #define SOME_UPDATE  1                    (latest fix number)             */
/*                                                                           */

/* 1) Use UT_MAKESTRING to make strings out of #define'd numbers.            */
/*    (required because of the way ANSI preprocessor handles strings)        */
/*    e.g. UT_MAKESTRING(6)  produces "6"                                    */
/*                                                                           */
#define UT_PUTSTRING(x) #x
#define UT_MAKESTRING(x) UT_PUTSTRING(x)

/* 2) Make a single version number out of the version, release and update    */
/*    numbers.                                                               */
/* NOTE that there will be no more than 100 (i.e. 0 - 99) revisions per      */
/* version, or updates per revision, otherwise version will be wrong.        */
/*                                                                           */
#define UT_MAKE_VERSION_NUMBER(VERSION, RELEASE, UPDATE) \
((VERSION * 10000) + (RELEASE * 100) + UPDATE)

/* 3) Make a version string containing the title of the application/library  */
/*    and the version, release and update numbers.                           */
/*                                                                           */
#define UT_MAKE_VERSION_STRING(TITLE, VERSION, RELEASE, UPDATE) \
TITLE " - " UT_MAKESTRING(VERSION) "." UT_MAKESTRING(RELEASE) "." UT_MAKESTRING(UPDATE)


/* 4) Macro for creating a standard copyright string to be inserted into    */
/*    compiled applications and libraries. The macro ensures a common       */
/*    format for version numbers etc.                                       */
/*                                                                           */
/* The macro is a statement, NOT an expression, but does NOT require a       */
/* terminating semi-colon. The macro should be coded like this:              */
/*                                                                           */
/*    UT_COPYRIGHT_STRING(prefix, title, description)                        */
/*                                                                           */
/*    where  prefix is some a string locally used to prefix variables        */
/*    where  title is a string of the form   "Appname  1.0.1"                */
/*      and  description is of the form  "Application to blah, blah."        */
/*                                                                           */
#define UT_COPYRIGHT()                                                               \
"@(#) Copyright (c):  J Thierry-Mieg and R Durbin, 1998 \n"                          \
"@(#) \n"                                                                            \
"@(#) This file contains the above Sanger Informatics Group library, \n"             \
"@(#) written by   Richard Durbin (Sanger Centre, UK) rd@sanger.ac.uk \n"            \
"@(#)              Jean Thierry-Mieg (CRBM du CNRS, France) mieg@kaa.crbm.cnrs-mop.fr \n" \
"@(#)              Ed Griffiths (Sanger Centre, UK) edgrif@sanger.ac.uk \n"          \
"@(#)              Fred Wobus (Sanger Centre, UK) fw@sanger.ac.uk \n"                \
"@(#) You may redistribute this software subject to the conditions in the \n"        \
"@(#) accompanying copyright file. Anyone interested in obtaining an up to date \n"  \
"@(#) version should contact one of the authors at the above email addresses. \n"


#define UT_COPYRIGHT_STRING(TITLE, VERSION, RELEASE, UPDATE, DESCRIPTION_STRING)     \
static const char *ut_copyright_string =                                             \
"@(#) \n"                                                                            \
"@(#) --------------------------------------------------------------------------\n"  \
"@(#) Title/Version:  "UT_MAKE_VERSION_STRING(TITLE, VERSION, RELEASE, UPDATE)"\n"   \
"@(#)      Compiled:  "__DATE__" "__TIME__"\n"                                       \
"@(#)   Description:  " DESCRIPTION_STRING"\n"                                       \
UT_COPYRIGHT()                                                                       \
"@(#) --------------------------------------------------------------------------\n"  \
"@(#) \n" ;


#endif	/* UT_VERSION_H */



( run in 1.626 second using v1.01-cache-2.11-cpan-5c0b1e786e0 )