X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=ginac%2Fversion.h;h=018d4615374978d2b751359b95f543afcbb01508;hp=b79b9fb5ae7cc035c7fa22a322d83f6af7224d9b;hb=0289100f425e420da988a709cd52616b6d69d348;hpb=e0f0681b814fecff5523d21b4368ebbeecc330eb diff --git a/ginac/version.h b/ginac/version.h index b79b9fb5..018d4615 100644 --- a/ginac/version.h +++ b/ginac/version.h @@ -32,6 +32,48 @@ /* Micro version of GiNaC */ #define GINACLIB_MICRO_VERSION 2 +// GiNaC library version information. It has very little to do with GiNaC +// version number. In particular, library version is OS dependent. +// +// When making releases, do +// 1. Increment GINAC_LT_REVISION +// 2. If any interfaces have been added, removed, or changed since the last +// release, increment GINAC_LT_CURRENT and set GINAC_LT_REVISION to 0. +// 3. If any interfaces have been added since the last release, increment +// GINAC_LT_AGE. +// 4. If any interfaces have been removed since the last release, set +// GINAC_LT_AGE to 0. +// +// Please note: the libtool naming scheme cannot guarantee that on all +// systems, the numbering is consecutive. It only guarantees that it is +// increasing. This doesn't matter, though: there is not incurred cost +// for numbers that are omitted, except for shrinking the available space +// of leftover numbers. Not something we need to worry about yet. ;-) +#define GINAC_LT_CURRENT 3 +#define GINAC_LT_REVISION 0 +#define GINAC_LT_AGE 1 + +/* + * GiNaC archive file version information. + * + * The current archive version is GINACLIB_ARCHIVE_VERSION. This is + * the version of archives created by the current version of GiNaC. + * Archives version (GINACLIB_ARCHIVE_VERSION - GINACLIB_ARCHIVE_AGE) + * thru * GINACLIB_ARCHIVE_VERSION can be read by current version + * of GiNaC. + * + * Backward compatibility notes: + * If new properties have been added: + * GINACLIB_ARCHIVE_VERSION += 1 + * GINACLIB_ARCHIVE_AGE += 1 + * If backwards compatibility has been broken, i.e. some properties + * has been removed, or their type and/or meaning changed: + * GINACLIB_ARCHIVE_VERSION += 1 + * GINACLIB_ARCHIVE_AGE = 0 + */ +#define GINACLIB_ARCHIVE_VERSION 3 +#define GINACLIB_ARCHIVE_AGE 3 + namespace GiNaC { extern const int version_major;