From: <ou...@us...> - 2007-11-30 19:31:38
|
Revision: 2244 http://jcl.svn.sourceforge.net/jcl/?rev=2244&view=rev Author: outchy Date: 2007-11-30 11:31:30 -0800 (Fri, 30 Nov 2007) Log Message: ----------- Introducing CLR version detection (based on revision 2220 of Andreas Hausladen) Revision Links: -------------- http://jcl.svn.sourceforge.net/jcl/?rev=2220&view=rev Modified Paths: -------------- trunk/jcl/source/common/JclDateTime.pas trunk/jcl/source/jedi.inc Modified: trunk/jcl/source/common/JclDateTime.pas =================================================================== --- trunk/jcl/source/common/JclDateTime.pas 2007-11-30 19:28:51 UTC (rev 2243) +++ trunk/jcl/source/common/JclDateTime.pas 2007-11-30 19:31:30 UTC (rev 2244) @@ -62,7 +62,9 @@ {$ENDIF UNITVERSIONING} {$IFDEF CLR} System.Globalization, System.Runtime.InteropServices, + {$IFDEF CLR20} System.Runtime.InteropServices.ComTypes, + {$ENDIF CLR20} {$ELSE} {$IFDEF MSWINDOWS} Windows, @@ -88,7 +90,11 @@ {$IFDEF CLR} type + {$IFDEF CLR20_UP} TFileTime = System.Runtime.InteropServices.ComTypes.FILETIME; + {$ELSE ~CLR20_UP} + TFileTime = System.Runtime.InteropServices.FILETIME; + {$ENDIF ~CLR20_UP} {$ENDIF CLR} { Encode / Decode functions } Modified: trunk/jcl/source/jedi.inc =================================================================== --- trunk/jcl/source/jedi.inc 2007-11-30 19:28:51 UTC (rev 2243) +++ trunk/jcl/source/jedi.inc 2007-11-30 19:31:30 UTC (rev 2244) @@ -293,6 +293,19 @@ RTL185_UP Defined when compiling with Delphi for Win32 2007 or later +- CLR Versions + + Directive Description + ------------------------------------------------------------------------------ + CLR Defined when compiling for .NET + CLR10 Defined when compiling for .NET 1.0 (may be overriden by FORCE_CLR10) + CLR10_UP Defined when compiling for .NET 1.0 or later + CLR11 Defined when compiling for .NET 1.1 (may be overriden by FORCE_CLR11) + CLR11_UP Defined when compiling for .NET 1.1 or later + CLR20 Defined when compiling for .NET 2.0 (may be overriden by FORCE_CLR20) + CLR20_UP Defined when compiling for .NET 2.0 or later + + - Feature Directives The features directives are used to test if the compiler supports specific @@ -504,6 +517,9 @@ {$IFDEF VER160} {$DEFINE BDS2} {$DEFINE BDS} + {$IFDEF CLR} + {$DEFINE CLR10} + {$ENDIF CLR} {$DEFINE COMPILER8} {$DEFINE DELPHI8} {$DEFINE DELPHICOMPILER8} @@ -514,6 +530,9 @@ {$IFDEF VER170} {$DEFINE BDS3} {$DEFINE BDS} + {$IFDEF CLR} + {$DEFINE CLR11} + {$ENDIF CLR} {$DEFINE COMPILER9} {$DEFINE DELPHI9} {$DEFINE DELPHI2005} // synonym to DELPHI9 @@ -524,6 +543,9 @@ {$IFDEF VER180} {$DEFINE BDS} + {$IFDEF CLR} + {$DEFINE CLR11} + {$ENDIF CLR} {$IFDEF VER185} {$DEFINE BDS5} {$DEFINE COMPILER11} @@ -553,6 +575,9 @@ {$IFDEF VER190} // Delphi.NET 2007 {$DEFINE BDS} {$DEFINE BDS5} + {$IFDEF CLR} + {$DEFINE CLR20} + {$ENDIF CLR} {$DEFINE COMPILER11} {$DEFINE DELPHI11} {$DEFINE DELPHI2007} // synonym to DELPHI10 @@ -754,7 +779,46 @@ {$IFDEF RTL90_UP} {$DEFINE RTL80_UP} {$ENDIF} {------------------------------------------------------------------------------} +{ Check for CLR overrides of default detection } +{------------------------------------------------------------------------------} +{$IFDEF CLR} + {$IFDEF FORCE_CLR10} + {$DEFINE CLR10} + {$UNDEF CLR11} + {$UNDEF CLR20} + {$ENDIF FORCE_CLR10} + + {$IFDEF FORCE_CLR11} + {$UNDEF CLR10} + {$DEFINE CLR11} + {$UNDEF CLR20} + {$ENDIF FORCE_CLR11} + + {$IFDEF FORCE_CLR20} + {$UNDEF CLR10} + {$UNDEF CLR11} + {$DEFINE CLR20} + {$ENDIF FORCE_CLR20} +{$ENDIF CLR} + +{------------------------------------------------------------------------------} +{ CLRX from CLRX_UP mappings } +{------------------------------------------------------------------------------} + +{$IFDEF CLR10} {$DEFINE CLR10_UP} {$ENDIF} +{$IFDEF CLR11} {$DEFINE CLR11_UP} {$ENDIF} +{$IFDEF CLR20} {$DEFINE CLR20_UP} {$ENDIF} + +{------------------------------------------------------------------------------} +{ CLRX_UP from CLRX_UP mappings } +{------------------------------------------------------------------------------} + +{$IFDEF CLR20_UP} {$DEFINE CLR11_UP} {$ENDIF} +{$IFDEF CLR11_UP} {$DEFINE CLR10_UP} {$ENDIF} + +{------------------------------------------------------------------------------} + {$IFDEF DELPHICOMPILER} {$DEFINE DELPHILANGUAGE} {$ENDIF} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |