git-svn-id: https://192.168.0.254/svn/Componentes.Terceros.jcl@20 c37d764d-f447-7644-a108-883140d013fb
365 lines
12 KiB
PHP
365 lines
12 KiB
PHP
{**************************************************************************************************}
|
|
{ }
|
|
{ The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License");}
|
|
{ you may not use this file except in compliance with the License. You may obtain a copy of the }
|
|
{ License at http://www.mozilla.org/MPL/ }
|
|
{ }
|
|
{ Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF }
|
|
{ ANY KIND, either express or implied. See the License for the specific language governing rights }
|
|
{ and limitations under the License. }
|
|
{ }
|
|
{ The Original Code is jcl.inc }
|
|
{ }
|
|
{ The Initial Developer of the Original Code is Marcel van Brakel. }
|
|
{ Portions created by Marcel van Brakel are Copyright (C) Marcel van Brakel. }
|
|
{ }
|
|
{ Contributors: }
|
|
{ Marcel van Brakel }
|
|
{ Matthias Thoma (mthoma) }
|
|
{ Petr Vones }
|
|
{ Robert Marquardt (marquardt) }
|
|
{ Robert Rossmair (rrossmair) }
|
|
{ }
|
|
{**************************************************************************************************}
|
|
{ }
|
|
{ This include file defines various JCL specific defines. The more generic defines are defined in }
|
|
{ the jedi.inc file which is shared with the JEDI VCL. }
|
|
{ }
|
|
{**************************************************************************************************}
|
|
{ }
|
|
{ Last modified: $Date:: 2009-08-25 20:22:46 +0200 (mar., 25 août 2009) $ }
|
|
{ Revision: $Rev:: 2969 $ }
|
|
{ Author: $Author:: outchy $ }
|
|
{ }
|
|
{**************************************************************************************************}
|
|
|
|
{$BOOLEVAL OFF} // Boolean shortcut evaluation
|
|
{$LONGSTRINGS ON} // Long strings
|
|
{$WRITEABLECONST OFF} // Read-only typed constants
|
|
{$TYPEDADDRESS OFF} // Type checked pointers off
|
|
|
|
{$I jedi.inc} // Pull in the JCL/J-VCL shared directives
|
|
|
|
{$IFNDEF JEDI_INC}
|
|
ALERT_jedi_inc_incompatible
|
|
// secure against old versions of jedi.inc.
|
|
{$ENDIF ~JEDI_INC}
|
|
|
|
{$IFNDEF JCLINSTALL}
|
|
{$IFDEF CLR}
|
|
{----------------------------}
|
|
{ BDS }
|
|
{----------------------------}
|
|
{$IFDEF BDS3}
|
|
{$I jcld9.net.inc}
|
|
{$DEFINE JCL_CONFIGURED}
|
|
{$ENDIF BDS3}
|
|
{----------------------------}
|
|
{$IFDEF BDS4}
|
|
{$I jcld10.net.inc}
|
|
{$DEFINE JCL_CONFIGURED}
|
|
{$ENDIF BDS4}
|
|
{----------------------------}
|
|
{$IFDEF BDS5}
|
|
{$I jcld11.net.inc}
|
|
{$DEFINE JCL_CONFIGURED}
|
|
{$ENDIF BDS5}
|
|
{----------------------------}
|
|
{$ELSE ~CLR}
|
|
{----------------------------}
|
|
{ C++Builder }
|
|
{----------------------------}
|
|
{$IFDEF BCB5}
|
|
{$I jclc5.inc}
|
|
{$DEFINE JCL_CONFIGURED}
|
|
{$ENDIF BCB5}
|
|
{----------------------------}
|
|
{$IFDEF BCB6}
|
|
{$I jclc6.inc}
|
|
{$DEFINE JCL_CONFIGURED}
|
|
{$ENDIF BCB6}
|
|
{----------------------------}
|
|
{ Delphi }
|
|
{----------------------------}
|
|
{$IFDEF DELPHI5}
|
|
{$I jcld5.inc}
|
|
{$DEFINE JCL_CONFIGURED}
|
|
{$ENDIF DELPIH5}
|
|
{----------------------------}
|
|
{$IFDEF DELPHI6}
|
|
{$I jcld6.inc}
|
|
{$DEFINE JCL_CONFIGURED}
|
|
{$ENDIF DELPIH6}
|
|
{----------------------------}
|
|
{$IFDEF DELPHI7}
|
|
{$I jcld7.inc}
|
|
{$DEFINE JCL_CONFIGURED}
|
|
{$ENDIF DELPIH7}
|
|
{----------------------------}
|
|
{ BDS }
|
|
{----------------------------}
|
|
// BDS 1 and BDS 2 have the same version numbers for their native compilers
|
|
// no compiler defines are used for BDS 1 and BDS 2
|
|
{$IFDEF BDS1}
|
|
//{$I jclcs1.inc}
|
|
{$DEFINE JCL_CONFIGURED}
|
|
{$ENDIF BDS1}
|
|
{----------------------------}
|
|
{$IFDEF BDS2}
|
|
//{$I jcld8.inc}
|
|
{$DEFINE JCL_CONFIGURED}
|
|
{$ENDIF BDS2}
|
|
{----------------------------}
|
|
{$IFDEF BDS3}
|
|
{$I jcld9.inc}
|
|
{$DEFINE JCL_CONFIGURED}
|
|
{$ENDIF BDS3}
|
|
{----------------------------}
|
|
{$IFDEF BDS4}
|
|
{$I jcld10.inc}
|
|
{$DEFINE JCL_CONFIGURED}
|
|
{$ENDIF BDS4}
|
|
{----------------------------}
|
|
{$IFDEF BDS5}
|
|
{$I jcld11.inc}
|
|
{$DEFINE JCL_CONFIGURED}
|
|
{$ENDIF BDS5}
|
|
{----------------------------}
|
|
{$IFDEF BDS6}
|
|
{$I jcld12.inc}
|
|
{$DEFINE JCL_CONFIGURED}
|
|
{$ENDIF BDS6}
|
|
{----------------------------}
|
|
{$IFDEF BDS7}
|
|
{$I jcld14.inc}
|
|
{$DEFINE JCL_CONFIGURED}
|
|
{$ENDIF BDS7}
|
|
{----------------------------}
|
|
{$IFDEF FPC}
|
|
{$I jclfpc.inc}
|
|
{$DEFINE JCL_CONFIGURED}
|
|
{$ENDIF FPC}
|
|
{----------------------------}
|
|
{$ENDIF ~CLR}
|
|
|
|
// check configuration
|
|
{$IFNDEF JCL_CONFIGURED}
|
|
{$IFDEF SUPPORTS_COMPILETIME_MESSAGES}
|
|
{$MESSAGE FATAL 'Your Delphi/BCB version is not supported by this JCL version!'}
|
|
{$ELSE ~SUPPORTS_COMPILETIME_MESSAGES}
|
|
'Your Delphi/BCB version is not supported by this JCL version!'
|
|
{$ENDIF ~SUPPORTS_COMPILETIME_MESSAGES}
|
|
{$ENDIF !JCL_CONFIGURED}
|
|
|
|
{$ENDIF ~JCLINSTALL}
|
|
|
|
// Math precision selection, mutually exclusive
|
|
{$IFDEF MATH_EXTENDED_PRECISION}
|
|
{$UNDEF MATH_SINGLE_PRECISION}
|
|
{$UNDEF MATH_DOUBLE_PRECISION}
|
|
{$ENDIF}
|
|
{$IFDEF MATH_DOUBLE_PRECISION}
|
|
{$UNDEF MATH_SINGLE_PRECISION}
|
|
{$UNDEF MATH_EXTENDED_PRECISION}
|
|
{$ENDIF}
|
|
{$IFDEF MATH_SINGLE_PRECISION}
|
|
{$UNDEF MATH_DOUBLE_PRECISION}
|
|
{$UNDEF MATH_EXTENDED_PRECISION}
|
|
{$ENDIF}
|
|
|
|
{$IFNDEF MATH_EXTENDED_PRECISION}
|
|
{$IFNDEF MATH_DOUBLE_PRECISION}
|
|
{$IFNDEF MATH_SINGLE_PRECISION}
|
|
{$IFDEF FPC}
|
|
{$IFDEF CPU64}
|
|
{$DEFINE MATH_DOUBLE_PRECISION}
|
|
{$ELSE ~CPU64}
|
|
{$DEFINE MATH_EXTENDED_PRECISION}
|
|
{$ENDIF ~CPU64}
|
|
{$ELSE ~FPC}
|
|
{$DEFINE MATH_EXTENDED_PRECISION}
|
|
{$ENDIF ~FPC}
|
|
{$ENDIF}
|
|
{$ENDIF}
|
|
{$ENDIF}
|
|
|
|
{$IFDEF MATH_EXTENDED_PRECISION}
|
|
{$IFDEF CPU64}
|
|
{$IFDEF FPC}
|
|
{$MESSAGE FATAL 'FPC does not support extended floating points on x86_64!'}
|
|
{$ENDIF FPC}
|
|
{$ENDIF CPU64}
|
|
{$ENDIF MATH_EXTENDED_PRECISION}
|
|
|
|
// PCRE options, mutually exclusive
|
|
{$IFDEF PCRE_STATICLINK}
|
|
{$UNDEF PCRE_LINKDLL}
|
|
{$UNDEF PCRE_LINKONREQUEST}
|
|
{$ENDIF PCRE_STATICLINK}
|
|
{$IFDEF PCRE_LINKDLL}
|
|
{$UNDEF PCRE_LINKONREQUEST}
|
|
{$ENDIF PCRE_LINKDLL}
|
|
|
|
{$IFNDEF PCRE_STATICLINK}
|
|
{$IFNDEF PCRE_LINKDLL}
|
|
{$IFNDEF PCRE_LINKONREQUEST}
|
|
{$DEFINE PCRE_LINKONREQUEST}
|
|
{$ENDIF ~PCRE_LINKONREQUEST}
|
|
{$ENDIF ~PCRE_LINKDLL}
|
|
{$ENDIF ~PCRE_STATICLINK}
|
|
|
|
{$IFNDEF PCRE_STATICLINK}
|
|
{$DEFINE PCRE_EXPORT_CDECL}
|
|
{$ENDIF ~PCRE_STATICLINK}
|
|
|
|
// BZip2 options
|
|
{$IFDEF BZIP2_STATICLINK}
|
|
{$UNDEF BZIP2_LINKDLL}
|
|
{$UNDEF BZIP2_LINKONREQUEST}
|
|
{$ENDIF BZIP2_STATICLINK}
|
|
{$IFDEF BZIP2_LINKDLL}
|
|
{$UNDEF BZIP2_LINKONREQUEST}
|
|
{$ENDIF BZIP2_LINKDLL}
|
|
|
|
{$IFNDEF BZIP2_STATICLINK}
|
|
{$IFNDEF BZIP2_LINKDLL}
|
|
{$IFNDEF BZIP2_LINKONREQUEST}
|
|
{$DEFINE BZIP2_STATICLINK}
|
|
{$ENDIF ~BZIP2_LINKONREQUEST}
|
|
{$ENDIF ~BZIP2_LINKDLL}
|
|
{$ENDIF ~BZIP2_STATICLINK}
|
|
|
|
{$IFDEF BZIP2_STATICLINK}
|
|
{$DEFINE BZIP2_EXPORT_STDCALL}
|
|
{$ENDIF BZIP2_STATICLINK}
|
|
|
|
{$IFDEF BZIP2_LINKDLL}
|
|
{$DEFINE BZIP2_EXPORT_CDECL}
|
|
{$ENDIF BZIP2_LINKDLL}
|
|
|
|
{$IFDEF BZIP2_LINKONREQUEST}
|
|
{$DEFINE BZIP2_EXPORT_CDECL}
|
|
{$ENDIF BZIP2_LINKONREQUEST}
|
|
|
|
|
|
// ZLib options
|
|
{$IFDEF ZLIB_STATICLINK}
|
|
{$UNDEF ZLIB_LINKDLL}
|
|
{$UNDEF ZLIB_LINKONREQUEST}
|
|
{$ENDIF ZLIB_STATICLINK}
|
|
{$IFDEF ZLIB_LINKDLL}
|
|
{$UNDEF ZLIB_LINKONREQUEST}
|
|
{$ENDIF ZLIB_LINKDLL}
|
|
|
|
{$IFNDEF ZLIB_STATICLINK}
|
|
{$IFNDEF ZLIB_LINKDLL}
|
|
{$IFNDEF ZLIB_LINKONREQUEST}
|
|
{$DEFINE ZLIB_STATICLINK}
|
|
{$ENDIF ~ZLIB_LINKONREQUEST}
|
|
{$ENDIF ~ZLIB_LINKDLL}
|
|
{$ENDIF ~ZLIB_STATICLINK}
|
|
|
|
{$IFDEF ZLIB_LINKDLL}
|
|
{$DEFINE ZLIB_EXPORT_CDECL}
|
|
{$ENDIF ZLIB_LINKDLL}
|
|
{$IFDEF ZLIB_LINKONREQUEST}
|
|
{$DEFINE ZLIB_EXPORT_CDECL}
|
|
{$ENDIF ZLIB_LINKONREQUEST}
|
|
// calling convention for static link is fastcall
|
|
|
|
{$IFDEF UNICODE_RAW_DATA}
|
|
{$UNDEF UNICODE_ZLIB_DATA}
|
|
{$UNDEF UNICODE_BZIP2_DATA}
|
|
{$ENDIF UNICODE_RAW_DATA}
|
|
|
|
{$IFDEF UNICODE_ZLIB_DATA}
|
|
{$UNDEF UNICODE_RAW_DATA}
|
|
{$UNDEF UNICODE_BZIP2_DATA}
|
|
{$ENDIF UNICODE_ZLIB_DATA}
|
|
|
|
{$IFNDEF UNICODE_ZLIB_DATA}
|
|
{$IFNDEF UNICODE_BZIP2_DATA}
|
|
{$DEFINE UNICODE_RAW_DATA}
|
|
{$ENDIF ~UNICODE_BZIP2_DATA}
|
|
{$ENDIF ~UNICODE_ZLIB_DATA}
|
|
|
|
{$IFDEF CONTAINER_ANSISTR}
|
|
{$UNDEF CONTAINER_WIDESTR}
|
|
{$UNDEF CONTAINER_UNICODESTR}
|
|
{$UNDEF CONTAINER_NOSTR}
|
|
{$ENDIF CONTAINER_ANSISTR}
|
|
|
|
{$IFDEF CONTAINER_WIDESTR}
|
|
{$UNDEF CONTAINER_UNICODESTR}
|
|
{$UNDEF CONTAINER_NOSTR}
|
|
{$ENDIF CONTAINER_WIDESTR}
|
|
|
|
{$IFDEF CONTAINER_UNICODESTR}
|
|
{$UNDEF CONTAINER_NOSTR}
|
|
{$ENDIF CONTAINER_UNICODESTR}
|
|
|
|
{$IFNDEF CONTAINER_ANSISTR}
|
|
{$IFNDEF CONTAINER_WIDESTR}
|
|
{$IFNDEF CONTAINER_UNICODESTR}
|
|
{$IFNDEF CONTAINER_NOSTR}
|
|
{$IFDEF SUPPORTS_UNICODE_STRING}
|
|
{$DEFINE CONTAINER_UNICODESTR}
|
|
{$ELSE ~SUPPORTS_UNICODE_STRING}
|
|
{$DEFINE CONTAINER_ANSISTR}
|
|
{$ENDIF ~SUPPORTS_UNICODE_STRING}
|
|
{$ENDIF ~CONTAINER_NOSTR}
|
|
{$ENDIF ~CONTAINER_UNICODESTR}
|
|
{$ENDIF ~CONTAINER_WIDESTR}
|
|
{$ENDIF ~CONTAINER_ANSISTR}
|
|
|
|
// 7zip options
|
|
{$IFDEF 7ZIP_STATICLINK}
|
|
{$UNDEF 7ZIP_LINKDLL}
|
|
{$UNDEF 7ZIP_LINKONREQUEST}
|
|
{$ENDIF 7ZIP_STATICLINK}
|
|
|
|
{$IFDEF 7ZIP_LINKDLL}
|
|
{$UNDEF 7ZIP_LINKONREQUEST}
|
|
{$ENDIF 7ZIP_LINKDLL}
|
|
|
|
{$IFNDEF 7ZIP_STATICLINK}
|
|
{$IFNDEF 7ZIP_LINKDLL}
|
|
{$IFNDEF 7ZIP_LINKONREQUEST}
|
|
{$DEFINE 7ZIP_LINKONREQUEST}
|
|
{$ENDIF ~7ZIP_LINKONREQUEST}
|
|
{$ENDIF ~7ZIP_LINKDLL}
|
|
{$ENDIF ~7ZIP_STATICLINK}
|
|
|
|
{$IFDEF SUPPORTS_UNSAFE_WARNINGS}
|
|
{$WARN UNSAFE_TYPE OFF}
|
|
{$WARN UNSAFE_CODE OFF}
|
|
{$WARN UNSAFE_CAST OFF}
|
|
{$ENDIF}
|
|
|
|
{$IFNDEF DROP_OBSOLETE_CODE}
|
|
{$IFNDEF JCLINSTALL}
|
|
{$DEFINE KEEP_DEPRECATED}
|
|
{$ENDIF}
|
|
{$ENDIF}
|
|
|
|
{$IFDEF CLR}
|
|
{$WARN UNSAFE_TYPE ON}
|
|
{$WARN UNSAFE_CODE ON}
|
|
{$WARN UNSAFE_CAST ON}
|
|
{$WARN UNIT_PLATFORM OFF}
|
|
|
|
{$DEFINE MSWINDOWS}
|
|
{$DEFINE PIC}
|
|
{$DEFINE PUREPASCAL}
|
|
{$ENDIF CLR}
|
|
|
|
// Delphi 2005 has a compiler internal failure when compiling the JCL with UNITVERSIONING enabled
|
|
{$IFDEF DELPHI2005}
|
|
{$UNDEF UNITVERSIONING}
|
|
{$ENDIF DELPHI2005}
|
|
|
|
{$IFDEF FPC}
|
|
{$DEFINE DEBUG_NO_TD32}
|
|
{$ENDIF FPC}
|
|
|