Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why use JCL UNITVERSIONING?

The JCL library have an conditional define UNITVERSIONING. I don't know why this option exists and don't know how to use this. I know that there are a unit called JclUnitVersioning.pas, but can't find a use.

Where to use this in a real word project?

like image 386
Clóvis Valadares Junior Avatar asked Mar 09 '11 19:03

Clóvis Valadares Junior


1 Answers

It supports the JclUnitVersioning unit, which exposes the constants like these in a more coherent way:

{$IFDEF UNITVERSIONING}
const
  UnitVersioning: TUnitVersionInfo = (
    RCSfile: '$URL: https://jcl.svn.sourceforge.net/svnroot/jcl/tags/JCL-1.101-    Build2725/jcl/source/common/Jcl8087.pas $';
    Revision: '$Revision: 1$';
    Date: '$Date: 12/05/2008 10:29:10$';
    LogPath: 'JCL\source\common'
    );
{$ENDIF UNITVERSIONING}

An old version of the JclUnitVersioning unit is here]1 and gives you a rough idea how it works: the unit has a global function GetUnitVersioning: TUnitVersioning; which gives you back the version information for all units that support UNITVERSIONING.

From there you can enumerate them, and ask for details.

This is very handy for instance when you want to know which exact version of a unit gets linked into your .EXE.

--jeroen

like image 75
Jeroen Wiert Pluimers Avatar answered Oct 23 '22 14:10

Jeroen Wiert Pluimers