Thema: Delphi win32api und Delphi 2007

Einzelnen Beitrag anzeigen

delphin06

Registriert seit: 18. Jun 2006
154 Beiträge
 
#9

Re: win32api und Delphi 2007

  Alt 15. Apr 2007, 11:07
Jo das kann gut sein! Wenn ich wüsste was ich da alles ändern muss...

Delphi-Quellcode:
{$DEFINE BORLAND}

{ Set FreePascal to Delphi mode }
{$IFDEF FPC}
  {$MODE DELPHI}
  {$ASMMODE Intel}
  {$UNDEF BORLAND}
{$ENDIF}

{$IFDEF BORLAND}
  {$IFDEF LINUX}
    {$DEFINE KYLIX}
  {$ENDIF LINUX}
{$ENDIF BORLAND}

{------------------------------------------------------------------------------}
{ VERXXX to COMPILERX, DELPHIX and BCBX mappings                               }
{------------------------------------------------------------------------------}

{$IFDEF BORLAND}
  {$IFDEF KYLIX}
    {$I kylix.inc} // FPC incompatible stuff
  {$ELSE ~KYLIX}

    {$DEFINE UNKNOWN_COMPILER_VERSION}

    {$IFDEF VER80}
      {$DEFINE COMPILER1}
      {$DEFINE DELPHI1}
      {$DEFINE DELPHICOMPILER1}
      {$DEFINE RTL80_UP}
      {$UNDEF UNKNOWN_COMPILER_VERSION}
    {$ENDIF}

    {$IFDEF VER90}
      {$DEFINE COMPILER2}
      {$DEFINE DELPHI2}
      {$DEFINE DELPHICOMPILER2}
      {$DEFINE RTL90_UP}
      {$UNDEF UNKNOWN_COMPILER_VERSION}
    {$ENDIF}

    {$IFDEF VER93}
      {$DEFINE COMPILER2}
      {$DEFINE BCB1}
      {$DEFINE BCB}
      {$DEFINE RTL93_UP}
      {$UNDEF UNKNOWN_COMPILER_VERSION}
    {$ENDIF}

    {$IFDEF VER100}
      {$DEFINE COMPILER3}
      {$DEFINE DELPHI3}
      {$DEFINE DELPHICOMPILER3}
      {$DEFINE RTL100_UP}
      {$UNDEF UNKNOWN_COMPILER_VERSION}
    {$ENDIF}

    {$IFDEF VER110}
      {$DEFINE COMPILER35}
      {$DEFINE BCB3}
      {$DEFINE RTL110_UP}
      {$UNDEF UNKNOWN_COMPILER_VERSION}
    {$ENDIF}

    {$IFDEF VER120}
      {$DEFINE COMPILER4}
      {$DEFINE DELPHI4}
      {$DEFINE DELPHICOMPILER4}
      {$DEFINE RTL120_UP}
      {$UNDEF UNKNOWN_COMPILER_VERSION}
    {$ENDIF}

    {$IFDEF VER125}
      {$DEFINE COMPILER4}
      {$DEFINE BCB4}
      {$DEFINE BCB}
      {$DEFINE RTL125_UP}
      {$UNDEF UNKNOWN_COMPILER_VERSION}
    {$ENDIF}

    {$IFDEF VER130}
      {$DEFINE COMPILER5}
      {$IFDEF BCB}
        {$DEFINE BCB5}
      {$ELSE}
        {$DEFINE DELPHI5}
        {$DEFINE DELPHICOMPILER5}
      {$ENDIF}
      {$DEFINE RTL130_UP}
      {$UNDEF UNKNOWN_COMPILER_VERSION}
    {$ENDIF}

    {$IFDEF VER140}
      {$DEFINE COMPILER6}
      {$IFDEF BCB}
        {$DEFINE BCB6}
      {$ELSE}
        {$DEFINE DELPHI6}
        {$DEFINE DELPHICOMPILER6}
      {$ENDIF}
      {$DEFINE RTL140_UP}
      {$UNDEF UNKNOWN_COMPILER_VERSION}
    {$ENDIF}

    {$IFDEF VER150}
      {$DEFINE COMPILER7}
      {$DEFINE DELPHI7}
      {$DEFINE DELPHICOMPILER7}
      {$DEFINE RTL150_UP}
      {$UNDEF UNKNOWN_COMPILER_VERSION}
    {$ENDIF}

    {$IFDEF VER160}
      {$DEFINE BDS2}
      {$DEFINE BDS}
      {$DEFINE COMPILER8}
      {$DEFINE DELPHI8}
      {$DEFINE DELPHICOMPILER8}
      {$DEFINE RTL160_UP}
      {$UNDEF UNKNOWN_COMPILER_VERSION}
    {$ENDIF}

    {$IFDEF VER170}
      {$DEFINE BDS3}
      {$DEFINE BDS}
      {$DEFINE COMPILER9}
      {$DEFINE DELPHI9}
      {$DEFINE DELPHI2005} // synonym to DELPHI9
      {$DEFINE DELPHICOMPILER9}
      {$DEFINE RTL170_UP}
      {$UNDEF UNKNOWN_COMPILER_VERSION}
    {$ENDIF}

    {$IFDEF VER180}
      {$DEFINE BDS}
      {$IFDEF VER185}
        {$DEFINE BDS5}
        {$DEFINE COMPILER11}
        {$IFDEF BCB}
          {$DEFINE BCB11}
        {$ELSE}
          {$DEFINE DELPHI11}
          {$DEFINE DELPHICOMPILER11}
        {$ENDIF}
        {$DEFINE RTL185_UP}
      {$ELSE ~~VER185}
        {$DEFINE BDS4}
        {$DEFINE COMPILER10}
        {$IFDEF BCB}
          {$DEFINE BCB10}
        {$ELSE}
          {$DEFINE DELPHI10}
          {$DEFINE DELPHICOMPILER10}
        {$ENDIF}
        {$DEFINE RTL180_UP}
      {$ENDIF ~VER185}
      {$UNDEF UNKNOWN_COMPILER_VERSION}
    {$ENDIF}

    {$IFDEF UNKNOWN_COMPILER_VERSION} // adjust for newer version
      {$DEFINE BDS5}
      {$DEFINE BDS}
      {$DEFINE COMPILER11}
      {$DEFINE DELPHI11}
      {$DEFINE DELPHICOMPILER11}
      {$DEFINE RTL185_UP}
      {$UNDEF UNKNOWN_COMPILER_VERSION}
    {$ENDIF}

  {$ENDIF ~KYLIX}

  {$IFDEF BCB}
    {$DEFINE CPPBUILDER}
    {$DEFINE BCBCOMPILER}
  {$ELSE ~BCB}
    {$DEFINE DELPHI}
    {$DEFINE DELPHICOMPILER}
  {$ENDIF ~BCB}

{$ENDIF BORLAND}

{------------------------------------------------------------------------------}
{ DELPHIX_UP from DELPHIX mappings                                             }
{------------------------------------------------------------------------------}

{$IFDEF DELPHI11 }  {$DEFINE DELPHI11_UP }  {$ENDIF}
{$IFDEF DELPHI10 }  {$DEFINE DELPHI10_UP }  {$ENDIF}
{$IFDEF DELPHI9  }  {$DEFINE DELPHI9_UP  }  {$ENDIF}
{$IFDEF DELPHI8  }  {$DEFINE DELPHI8_UP  }  {$ENDIF}
{$IFDEF DELPHI7  }  {$DEFINE DELPHI7_UP  }  {$ENDIF}
{$IFDEF DELPHI6  }  {$DEFINE DELPHI6_UP  }  {$ENDIF}
{$IFDEF DELPHI5  }  {$DEFINE DELPHI5_UP  }  {$ENDIF}
{$IFDEF DELPHI4  }  {$DEFINE DELPHI4_UP  }  {$ENDIF}
{$IFDEF DELPHI3  }  {$DEFINE DELPHI3_UP  }  {$ENDIF}
{$IFDEF DELPHI2  }  {$DEFINE DELPHI2_UP  }  {$ENDIF}
{$IFDEF DELPHI1  }  {$DEFINE DELPHI1_UP  }  {$ENDIF}

{------------------------------------------------------------------------------}
{ DELPHIX_UP from DELPHIX_UP mappings                                          }
{------------------------------------------------------------------------------}

{$IFDEF DELPHI11_UP}   {$DEFINE DELPHI10_UP }  {$ENDIF}
{$IFDEF DELPHI10_UP }  {$DEFINE DELPHI9_UP  }  {$ENDIF}

{$IFDEF DELPHI9_UP}
  {$DEFINE DELPHI2005_UP} // synonym to DELPHI9_UP
  {$DEFINE DELPHI8_UP}
{$ENDIF}

{$IFDEF DELPHI8_UP }  {$DEFINE DELPHI7_UP }  {$ENDIF}
{$IFDEF DELPHI7_UP }  {$DEFINE DELPHI6_UP }  {$ENDIF}
{$IFDEF DELPHI6_UP }  {$DEFINE DELPHI5_UP }  {$ENDIF}
{$IFDEF DELPHI5_UP }  {$DEFINE DELPHI4_UP }  {$ENDIF}
{$IFDEF DELPHI4_UP }  {$DEFINE DELPHI3_UP }  {$ENDIF}
{$IFDEF DELPHI3_UP }  {$DEFINE DELPHI2_UP }  {$ENDIF}
{$IFDEF DELPHI2_UP }  {$DEFINE DELPHI1_UP }  {$ENDIF}

{------------------------------------------------------------------------------}
{ BCBX_UP from BCBX mappings                                                   }
{------------------------------------------------------------------------------}

{$IFDEF BCB11}  {$DEFINE BCB11_UP}  {$ENDIF}
{$IFDEF BCB10}  {$DEFINE BCB10_UP}  {$ENDIF}
{$IFDEF BCB6 }  {$DEFINE BCB6_UP }  {$ENDIF}
{$IFDEF BCB5 }  {$DEFINE BCB5_UP }  {$ENDIF}
{$IFDEF BCB4 }  {$DEFINE BCB4_UP }  {$ENDIF}
{$IFDEF BCB3 }  {$DEFINE BCB3_UP }  {$ENDIF}
{$IFDEF BCB1 }  {$DEFINE BCB1_UP }  {$ENDIF}

{------------------------------------------------------------------------------}
{ BCBX_UP from BCBX_UP mappings                                                }
{------------------------------------------------------------------------------}

{$IFDEF BCB11_UP}  {$DEFINE BCB10_UP}  {$ENDIF}
{$IFDEF BCB10_UP}  {$DEFINE BCB6_UP }  {$ENDIF}
{$IFDEF BCB6_UP }  {$DEFINE BCB5_UP }  {$ENDIF}
{$IFDEF BCB5_UP }  {$DEFINE BCB4_UP }  {$ENDIF}
{$IFDEF BCB4_UP }  {$DEFINE BCB3_UP }  {$ENDIF}
{$IFDEF BCB3_UP }  {$DEFINE BCB1_UP }  {$ENDIF}

{------------------------------------------------------------------------------}
{ BDSX_UP from BDSX mappings                                                   }
{------------------------------------------------------------------------------}

{$IFDEF BDS5 }  {$DEFINE BDS5_UP }  {$ENDIF}
{$IFDEF BDS4 }  {$DEFINE BDS4_UP }  {$ENDIF}
{$IFDEF BDS3 }  {$DEFINE BDS3_UP }  {$ENDIF}
{$IFDEF BDS2 }  {$DEFINE BDS2_UP }  {$ENDIF}

{------------------------------------------------------------------------------}
{ BDSX_UP from BDSX_UP mappings                                                }
{------------------------------------------------------------------------------}

{$IFDEF BDS5_UP }  {$DEFINE BDS4_UP }  {$ENDIF}
{$IFDEF BDS4_UP }  {$DEFINE BDS3_UP }  {$ENDIF}
{$IFDEF BDS3_UP }  {$DEFINE BDS2_UP }  {$ENDIF}

{------------------------------------------------------------------------------}
{ DELPHICOMPILERX_UP from DELPHICOMPILERX mappings                             }
{------------------------------------------------------------------------------}

{$IFDEF DELPHICOMPILER11 }  {$DEFINE DELPHICOMPILER11_UP }  {$ENDIF}
{$IFDEF DELPHICOMPILER10 }  {$DEFINE DELPHICOMPILER10_UP }  {$ENDIF}
{$IFDEF DELPHICOMPILER9  }  {$DEFINE DELPHICOMPILER9_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER8  }  {$DEFINE DELPHICOMPILER8_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER7  }  {$DEFINE DELPHICOMPILER7_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER6  }  {$DEFINE DELPHICOMPILER6_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER5  }  {$DEFINE DELPHICOMPILER5_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER4  }  {$DEFINE DELPHICOMPILER4_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER3  }  {$DEFINE DELPHICOMPILER3_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER2  }  {$DEFINE DELPHICOMPILER2_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER1  }  {$DEFINE DELPHICOMPILER1_UP  }  {$ENDIF}

{------------------------------------------------------------------------------}
{ DELPHICOMPILERX_UP from DELPHICOMPILERX_UP mappings                          }
{------------------------------------------------------------------------------}

{$IFDEF DELPHICOMPILER11_UP }  {$DEFINE DELPHICOMPILER10_UP }  {$ENDIF}
{$IFDEF DELPHICOMPILER10_UP }  {$DEFINE DELPHICOMPILER9_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER9_UP  }  {$DEFINE DELPHICOMPILER8_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER8_UP  }  {$DEFINE DELPHICOMPILER7_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER8_UP  }  {$DEFINE DELPHICOMPILER7_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER7_UP  }  {$DEFINE DELPHICOMPILER6_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER6_UP  }  {$DEFINE DELPHICOMPILER5_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER5_UP  }  {$DEFINE DELPHICOMPILER4_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER4_UP  }  {$DEFINE DELPHICOMPILER3_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER3_UP  }  {$DEFINE DELPHICOMPILER2_UP  }  {$ENDIF}
{$IFDEF DELPHICOMPILER2_UP  }  {$DEFINE DELPHICOMPILER1_UP  }  {$ENDIF}

{------------------------------------------------------------------------------}
{ COMPILERX_UP from COMPILERX mappings                                         }
{------------------------------------------------------------------------------}

{$IFDEF COMPILER11 }  {$DEFINE COMPILER11_UP }  {$ENDIF}
{$IFDEF COMPILER10 }  {$DEFINE COMPILER10_UP }  {$ENDIF}
{$IFDEF COMPILER9  }  {$DEFINE COMPILER9_UP  }  {$ENDIF}
{$IFDEF COMPILER8  }  {$DEFINE COMPILER8_UP  }  {$ENDIF}
{$IFDEF COMPILER7  }  {$DEFINE COMPILER7_UP  }  {$ENDIF}
{$IFDEF COMPILER6  }  {$DEFINE COMPILER6_UP  }  {$ENDIF}
{$IFDEF COMPILER5  }  {$DEFINE COMPILER5_UP  }  {$ENDIF}
{$IFDEF COMPILER4  }  {$DEFINE COMPILER4_UP  }  {$ENDIF}
{$IFDEF COMPILER35 }  {$DEFINE COMPILER35_UP }  {$ENDIF}
{$IFDEF COMPILER3  }  {$DEFINE COMPILER3_UP  }  {$ENDIF}
{$IFDEF COMPILER2  }  {$DEFINE COMPILER2_UP  }  {$ENDIF}
{$IFDEF COMPILER1  }  {$DEFINE COMPILER1_UP  }  {$ENDIF}

{------------------------------------------------------------------------------}
{ COMPILERX_UP from COMPILERX_UP mappings                                      }
{------------------------------------------------------------------------------}

{$IFDEF COMPILER11_UP }  {$DEFINE COMPILER10_UP}  {$ENDIF}
{$IFDEF COMPILER10_UP }  {$DEFINE COMPILER9_UP }  {$ENDIF}
{$IFDEF COMPILER9_UP  }  {$DEFINE COMPILER8_UP }  {$ENDIF}
{$IFDEF COMPILER8_UP  }  {$DEFINE COMPILER7_UP }  {$ENDIF}
{$IFDEF COMPILER7_UP  }  {$DEFINE COMPILER6_UP }  {$ENDIF}
{$IFDEF COMPILER6_UP  }  {$DEFINE COMPILER5_UP }  {$ENDIF}
{$IFDEF COMPILER5_UP  }  {$DEFINE COMPILER4_UP }  {$ENDIF}
{$IFDEF COMPILER4_UP  }  {$DEFINE COMPILER35_UP}  {$ENDIF}
{$IFDEF COMPILER35_UP }  {$DEFINE COMPILER3_UP }  {$ENDIF}
{$IFDEF COMPILER3_UP  }  {$DEFINE COMPILER2_UP }  {$ENDIF}
{$IFDEF COMPILER2_UP  }  {$DEFINE COMPILER1_UP }  {$ENDIF}

{------------------------------------------------------------------------------}
{ RTLX_UP from RTLX_UP mappings                                                }
{------------------------------------------------------------------------------}

{$IFDEF RTL185_UP}  {$DEFINE RTL180_UP}  {$ENDIF}
{$IFDEF RTL180_UP}  {$DEFINE RTL170_UP}  {$ENDIF}
{$IFDEF RTL170_UP}  {$DEFINE RTL160_UP}  {$ENDIF}
{$IFDEF RTL160_UP}  {$DEFINE RTL150_UP}  {$ENDIF}
{$IFDEF RTL150_UP}  {$DEFINE RTL145_UP}  {$ENDIF}
{$IFDEF RTL145_UP}  {$DEFINE RTL142_UP}  {$ENDIF}
{$IFDEF RTL142_UP}  {$DEFINE RTL140_UP}  {$ENDIF}
{$IFDEF RTL140_UP}  {$DEFINE RTL130_UP}  {$ENDIF}
{$IFDEF RTL130_UP}  {$DEFINE RTL125_UP}  {$ENDIF}
{$IFDEF RTL125_UP}  {$DEFINE RTL120_UP}  {$ENDIF}
{$IFDEF RTL120_UP}  {$DEFINE RTL110_UP}  {$ENDIF}
{$IFDEF RTL110_UP}  {$DEFINE RTL100_UP}  {$ENDIF}
{$IFDEF RTL100_UP}  {$DEFINE RTL93_UP }  {$ENDIF}
{$IFDEF RTL93_UP }  {$DEFINE RTL90_UP }  {$ENDIF}
{$IFDEF RTL90_UP }  {$DEFINE RTL80_UP }  {$ENDIF}

{------------------------------------------------------------------------------}

{$IFDEF DELPHICOMPILER}
  {$DEFINE DELPHILANGUAGE}
{$ENDIF}

{$IFDEF BCBCOMPILER}
  {$DEFINE DELPHILANGUAGE}
{$ENDIF}

{------------------------------------------------------------------------------}
{ KYLIXX_UP from KYLIXX mappings                                               }
{------------------------------------------------------------------------------}

{$IFDEF KYLIX3}
  {$DEFINE KYLIX3_UP}
  {$DEFINE KYLIX2_UP}
  {$DEFINE KYLIX1_UP}
{$ENDIF}

{$IFDEF KYLIX2}
  {$DEFINE KYLIX2_UP}
  {$DEFINE KYLIX1_UP}
{$ENDIF}

{$IFDEF KYLIX1}
  {$DEFINE KYLIX1_UP}
{$ENDIF}

{------------------------------------------------------------------------------}
{ Map COMPILERX_UP to friendly feature names                                   }
{------------------------------------------------------------------------------}

{$IFDEF FPC}
  {$IFDEF  VER1_0}
     Please use FPC 2.0 or later to compile this.
  {$ELSE}
    {$DEFINE SUPPORTS_OUTPARAMS}
    {$DEFINE SUPPORTS_WIDECHAR}
    {$DEFINE SUPPORTS_WIDESTRING}
    {$IFDEF HASINTF}
      {$DEFINE SUPPORTS_INTERFACE}
    {$ENDIF}
    {$IFDEF HASVARIANT}
      {$DEFINE SUPPORTS_VARIANT}
    {$ENDIF}
    {$IFDEF FPC_HAS_TYPE_SINGLE}
      {$DEFINE SUPPORTS_SINGLE}
    {$ENDIF}
    {$IFDEF FPC_HAS_TYPE_DOUBLE}
      {$DEFINE SUPPORTS_DOUBLE}
    {$ENDIF}
    {$IFDEF FPC_HAS_TYPE_EXTENDED}
      {$DEFINE SUPPORTS_EXTENDED}
    {$ENDIF}
    {$IFDEF HASCURRENCY}
      {$DEFINE SUPPORTS_CURRENCY}
    {$ENDIF}
    {$DEFINE SUPPORTS_THREADVAR}
    {$DEFINE SUPPORTS_CONSTPARAMS}
    {$DEFINE SUPPORTS_LONGWORD}
    {$DEFINE SUPPORTS_INT64}
    {$DEFINE SUPPORTS_DYNAMICARRAYS}
    {$DEFINE SUPPORTS_DEFAULTPARAMS}
    {$DEFINE SUPPORTS_OVERLOAD}
    {$DEFINE ACCEPT_DEPRECATED}
    {$DEFINE ACCEPT_PLATFORM}
    {$DEFINE ACCEPT_LIBRARY}
    {$DEFINE SUPPORTS_EXTSYM}
    {$DEFINE SUPPORTS_NODEFINE}

    {$DEFINE SUPPORTS_CUSTOMVARIANTS}
    {$DEFINE SUPPORTS_VARARGS}
    {$DEFINE SUPPORTS_ENUMVALUE}
    {$IFDEF LINUX}
      {$DEFINE HAS_UNIT_LIBC}
    {$ENDIF LINUX}
    {$DEFINE HAS_UNIT_TYPES}
    {$DEFINE HAS_UNIT_VARIANTS}
    {$DEFINE HAS_UNIT_STRUTILS}
    {$DEFINE HAS_UNIT_RTLCONSTS}

    {$DEFINE XPLATFORM_RTL}

    {$UNDEF SUPPORTS_DISPINTERFACE}
    {$UNDEF SUPPORTS_IMPLEMENTS}
    {$UNDEF SUPPORTS_UNSAFE_WARNINGS}
  {$ENDIF}
{$ENDIF FPC}

{$IFDEF COMPILER1_UP}
  {$DEFINE SUPPORTS_CONSTPARAMS}
  {$DEFINE SUPPORTS_SINGLE}
  {$DEFINE SUPPORTS_DOUBLE}
  {$DEFINE SUPPORTS_EXTENDED}
{$ENDIF COMPILER1_UP}

{$IFDEF COMPILER2_UP}
  {$DEFINE SUPPORTS_CURRENCY}
  {$DEFINE SUPPORTS_THREADVAR}
  {$DEFINE SUPPORTS_VARIANT}
  {$DEFINE SUPPORTS_WIDECHAR}
{$ENDIF COMPILER2_UP}

{$IFDEF COMPILER3_UP}
  {$DEFINE SUPPORTS_OUTPARAMS}
  {$DEFINE SUPPORTS_WIDESTRING}
  {$DEFINE SUPPORTS_INTERFACE}
  {$DEFINE SUPPORTS_DISPINTERFACE}
  {$DEFINE SUPPORTS_DISPID}
  {$DEFINE SUPPORTS_WEAKPACKAGEUNIT}
{$ENDIF COMPILER3_UP}

{$IFDEF COMPILER35_UP}
  {$DEFINE SUPPORTS_EXTSYM}
  {$DEFINE SUPPORTS_NODEFINE}
{$ENDIF COMPILER35_UP}

{$IFDEF COMPILER4_UP}
  {$DEFINE SUPPORTS_LONGWORD}
  {$DEFINE SUPPORTS_INT64}
  {$DEFINE SUPPORTS_DYNAMICARRAYS}
  {$DEFINE SUPPORTS_DEFAULTPARAMS}
  {$DEFINE SUPPORTS_OVERLOAD}
  {$DEFINE SUPPORTS_IMPLEMENTS}
{$ENDIF COMPILER4_UP}

{$IFDEF COMPILER6_UP}
  {$DEFINE SUPPORTS_DEPRECATED}
  {$DEFINE SUPPORTS_LIBRARY}
  {$DEFINE SUPPORTS_PLATFORM}
  {$DEFINE SUPPORTS_LOCAL}
  {$DEFINE ACCEPT_DEPRECATED}
  {$DEFINE ACCEPT_PLATFORM}
  {$DEFINE ACCEPT_LIBRARY}
  {$DEFINE SUPPORTS_DEPRECATED_WARNINGS}
  {$DEFINE SUPPORTS_LIBRARY_WARNINGS}
  {$DEFINE SUPPORTS_PLATFORM_WARNINGS}
  {$DEFINE SUPPORTS_CUSTOMVARIANTS}
  {$DEFINE SUPPORTS_VARARGS}
  {$DEFINE SUPPORTS_ENUMVALUE}
  {$DEFINE SUPPORTS_COMPILETIME_MESSAGES}
{$ENDIF COMPILER6_UP}

{$IFDEF COMPILER7_UP}
  {$DEFINE SUPPORTS_UNSAFE_WARNINGS}
{$ENDIF COMPILER7_UP}

{$IFDEF COMPILER9_UP}
  {$DEFINE SUPPORTS_FOR_IN}
  {$DEFINE SUPPORTS_INLINE}
  {$DEFINE SUPPORTS_NESTED_CONSTANTS}
  {$DEFINE SUPPORTS_NESTED_TYPES}
  {$IFDEF CLR}
    {$DEFINE SUPPORTS_ENHANCED_RECORDS}
    {$DEFINE SUPPORTS_CLASS_FIELDS}
    {$DEFINE SUPPORTS_CLASS_HELPERS}
    {$DEFINE SUPPORTS_CLASS_OPERATORS}
    {$DEFINE SUPPORTS_STRICT}
    {$DEFINE SUPPORTS_STATIC}
    {$DEFINE SUPPORTS_FINAL}
  {$ENDIF CLR}
{$ENDIF COMPILER9_UP}

{$IFDEF COMPILER10_UP}
  {$DEFINE SUPPORTS_ENHANCED_RECORDS}
  {$DEFINE SUPPORTS_CLASS_FIELDS}
  {$DEFINE SUPPORTS_CLASS_HELPERS}
  {$DEFINE SUPPORTS_CLASS_OPERATORS}
  {$DEFINE SUPPORTS_STRICT}
  {$DEFINE SUPPORTS_STATIC}
  {$DEFINE SUPPORTS_FINAL}
{$ENDIF COMPILER10_UP}

{$IFDEF RTL140_UP}
  {$IFDEF LINUX}
    {$DEFINE HAS_UNIT_LIBC}
  {$ENDIF LINUX}
  {$DEFINE HAS_UNIT_RTLCONSTS}
  {$DEFINE HAS_UNIT_TYPES}
  {$DEFINE HAS_UNIT_VARIANTS}
  {$DEFINE HAS_UNIT_STRUTILS}
  {$DEFINE XPLATFORM_RTL}
{$ENDIF RTL140_UP}

{------------------------------------------------------------------------------}
{ Cross-platform related defines                                               }
{------------------------------------------------------------------------------}

{$IFNDEF CPU386}
  {$DEFINE PUREPASCAL}
{$ENDIF}

{$IFDEF WIN32}
  {$DEFINE MSWINDOWS} // predefined for D6+/BCB6+
  {$DEFINE Win32API}
{$ENDIF}

{$IFDEF DELPHILANGUAGE}
  {$IFDEF LINUX}
    {$DEFINE UNIX}
  {$ENDIF}

  {$IFNDEF CONSOLE}
    {$IFDEF LINUX}
      {$DEFINE VisualCLX}
    {$ENDIF}
    {$IFNDEF VisualCLX}
      {$DEFINE VCL}
    {$ENDIF}
  {$ENDIF ~CONSOLE}
{$ENDIF DELPHILANGUAGE}

{------------------------------------------------------------------------------}
{ Compiler settings                                                            }
{------------------------------------------------------------------------------}

{$IFOPT A+} {$DEFINE ALIGN_ON} {$ENDIF}
{$IFOPT B+} {$DEFINE BOOLEVAL_ON} {$ENDIF}
{$IFDEF COMPILER2_UP}
  {$IFOPT C+} {$DEFINE ASSERTIONS_ON} {$ENDIF}
{$ENDIF}
{$IFOPT D+} {$DEFINE DEBUGINFO_ON} {$ENDIF}
{$IFOPT G+} {$DEFINE IMPORTEDDATA_ON} {$ENDIF}
{$IFDEF COMPILER2_UP}
  {$IFOPT H+} {$DEFINE LONGSTRINGS_ON} {$ENDIF}
{$ENDIF}
{ HINTS }
{$IFOPT I+} {$DEFINE IOCHECKS_ON} {$ENDIF}
{$IFDEF COMPILER2_UP}
  {$IFOPT J+} {$DEFINE WRITEABLECONST_ON} {$ENDIF}
{$ENDIF}
{$IFOPT L+} {$DEFINE LOCALSYMBOLS} {$ENDIF}
{$IFOPT M+} {$DEFINE TYPEINFO_ON} {$ENDIF}
{$IFOPT O+} {$DEFINE OPTIMIZATION_ON} {$ENDIF}
{$IFOPT P+} {$DEFINE OPENSTRINGS_ON} {$ENDIF}
{$IFOPT Q+} {$DEFINE OVERFLOWCHECKS_ON} {$ENDIF}
{$IFOPT R+} {$DEFINE RANGECHECKS_ON} {$ENDIF}
{ REALCOMPATIBILITY }
{$IFOPT T+} {$DEFINE TYPEDADDRESS_ON} {$ENDIF}
{$IFOPT U+} {$DEFINE SAFEDIVIDE_ON} {$ENDIF}
{$IFOPT V+} {$DEFINE VARSTRINGCHECKS_ON} {$ENDIF}
{$IFOPT W+} {$DEFINE STACKFRAMES_ON} {$ENDIF}
{ WARNINGS }
{$IFOPT X+} {$DEFINE EXTENDEDSYNTAX_ON} {$ENDIF}

// for Delphi/BCB trial versions remove the point from the line below
{.$UNDEF SUPPORTS_WEAKPACKAGEUNIT}

{$ENDIF ~JEDI_INC}
  Mit Zitat antworten Zitat