/[projects]/dao/DelphiScanner/Components/tpsystools_4.04/source/StDefine.inc
ViewVC logotype

Contents of /dao/DelphiScanner/Components/tpsystools_4.04/source/StDefine.inc

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2671 - (show annotations) (download)
Tue Aug 25 18:15:15 2015 UTC (8 years, 9 months ago) by torben
File size: 6353 byte(s)
Added tpsystools component
1 (* ***** BEGIN LICENSE BLOCK *****
2 * Version: MPL 1.1
3 *
4 * The contents of this file are subject to the Mozilla Public License Version
5 * 1.1 (the "License"); you may not use this file except in compliance with
6 * the License. You may obtain a copy of the License at
7 * http://www.mozilla.org/MPL/
8 *
9 * Software distributed under the License is distributed on an "AS IS" basis,
10 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
11 * for the specific language governing rights and limitations under the
12 * License.
13 *
14 * The Original Code is TurboPower SysTools
15 *
16 * The Initial Developer of the Original Code is
17 * TurboPower Software
18 *
19 * Portions created by the Initial Developer are Copyright (C) 1996-2002
20 * the Initial Developer. All Rights Reserved.
21 *
22 * Contributor(s):
23 *
24 * ***** END LICENSE BLOCK ***** *)
25
26 {*********************************************************}
27 {* SysTools: StDefine.inc 4.03 *}
28 {*********************************************************}
29 {* SysTools: Compiler options/directives include file *}
30 {*********************************************************}
31
32 { Because StDefine.inc is included in all SysTools units, you can specify }
33 { global compiler options here. STDEFINE is included *before* each units' }
34 { required compiler options, so options specified here might be overridden }
35 { by hardcoded options in the source file. }
36
37 {$IFNDEF LINUX}
38 {---Global compiler defines for 32-bit OS's---}
39 {$A+} {Word Align Data}
40 {$H+} {Huge string support}
41 {$Q+} {Overflow check}
42 {$R+} {Range check}
43 {$S-} {Stack check}
44 {$T-} {Typed @ check}
45 {$V-} {Var strings}
46 {$B-} {Incomplete boolean evaluation}
47 {$J+} {Writeable Typed Constants}
48 {$ENDIF LINUX}
49
50 {$DEFINE ThreadSafe}
51 { This define determines whether SysTools operations are safe in a 32-bit }
52 { multi-threaded application. Leaving it undefined will improved performance}
53 { slightly in a single-threaded 32-bit application. }
54
55 {$DEFINE Median}
56 {.$DEFINE MidPoint}
57 {.$DEFINE Random}
58 { The three partitioning methods used by the merge sort algorithm in STSORT.}
59 { Choose one, and one only. Median is on average fastest, and quite safe. }
60 { Midpoint is the simplest, but may degrade on some data sets. Random is }
61 { the safest, but on average the slowest. Safety in this context means the }
62 { prevention of the underlying quicksort degenerating into a sort of O(N^2) }
63 { The default is Median. }
64
65 {.$DEFINE SuppressWarnings}
66 { This define enables you to suppress warnings that are generated for code }
67 { in SysTools by Delphi 2/3. The two most common warnings are (a) function }
68 { does not set Result and (b) variable used before being initialized. The }
69 { code however has been tested to be correct but is complex enough to fool }
70 { the compiler. You should leave this define activated. }
71
72 {.$DEFINE UseMathUnit}
73 { This define is used to decide if the Math unit should be used. }
74 { Define UseMathUnit if the Math unit is available (it isn't with some }
75 { versions of the compilers -- Delphi 1, C++Builder 1, Delphi 2 Standard, }
76 { and a few others - check to be sure). }
77
78
79 {===========!! DO NOT ALTER ANYTHING BEYOND THIS POINT !!==================}
80 {===========!! DO NOT ALTER ANYTHING BEYOND THIS POINT !!==================}
81
82 {$IFDEF VER93}
83 {$DEFINE CBuilder}
84 {$ENDIF}
85 {$IFDEF VER110}
86 {$DEFINE CBuilder}
87 {$ObjExportAll On}
88 {$ENDIF}
89 {$IFDEF VER125}
90 {$DEFINE CBuilder}
91 {$ObjExportAll On}
92 {$ENDIF}
93 {$IFDEF VER130}
94 {$IFDEF BCB}
95 {$DEFINE CBuilder}
96 {$ObjExportAll On}
97 {$ENDIF}
98 {$ENDIF}
99 {$IFDEF VER140}
100 {$IFDEF BCB}
101 {$DEFINE CBuilder}
102 {$ObjExportAll On}
103 {$ENDIF}
104 {$ENDIF}
105
106 {$IFNDEF LINUX}
107 {$IFNDEF WIN32}
108 {$IFDEF VER80}
109 {$DEFINE WIN16} { Delphi 1.0, 16-Bit Windows }
110 {$ENDIF}
111 {$ENDIF}
112 {$ENDIF}
113
114 {$IFNDEF VER80} {Delphi 1.0}
115 {$DEFINE VERSION2} {Delphi 2.0 and BCB 1 or higher}
116 {$ENDIF}
117
118 {$IFDEF VERSION2}
119 {$IFNDEF VER90} {Delphi 2.0}
120 {$IFNDEF VER93} {BCB 1.0}
121 {$DEFINE VERSION3} {Delphi 3.0 or BCB 3.0}
122 {$ENDIF}
123 {$ENDIF}
124 {$ENDIF}
125
126 {$IFDEF VERSION3}
127 {$IFNDEF VER100} {Delphi 3}
128 {$IFNDEF VER110} {BCB 3}
129 {$DEFINE VERSION4} {Delphi 4.0 or higher}
130 {$ENDIF}
131 {$ENDIF}
132 {$ENDIF}
133
134 {$IFDEF VERSION4}
135 {$IFNDEF VER120} {Delphi 4}
136 {$IFNDEF VER125} {BCB 4}
137 {$DEFINE VERSION5} {Delphi 5.0 or higher}
138 {$ENDIF}
139 {$ENDIF}
140 {$ENDIF}
141
142 {$IFDEF VERSION5}
143 {$IFNDEF VER130} { Delphi 5 }
144 {$IFNDEF VER135} { BCB 5 }
145 {$IFNDEF LINUX }
146 {$DEFINE VERSION6} { Delphi 6.0 or higher }
147 {$ENDIF}
148 {$ENDIF}
149 {$ENDIF}
150 {$ENDIF}
151
152 {$IFDEF VERSION6}
153 {$IFNDEF VER140} { Delphi 6 }
154 {$IFNDEF LINUX }
155 {$DEFINE VERSION7} { Delphi 7.0 or higher }
156 {$ENDIF}
157 {$ENDIF}
158 {$ENDIF}
159
160 {$IF compilerversion >= 23} { Delphi XE2 }
161 {$DEFINE DELPHIXE2}
162 {$ENDIF}
163
164 {$IFDEF VERSION4}
165 {$DEFINE HasLongWord} { D4 and above have a true LongWord type }
166 {$DEFINE HasInt64 } { D4 and above have a 64-bit Integer }
167 {$ENDIF}
168 {$IFDEF LINUX}
169 {$DEFINE HasLongWord} { Kylix has a true LongWord type }
170 {$DEFINE HasInt64 } { Kylix has a 64-bit Integer }
171 {$ENDIF}
172
173 {$IFDEF VERSION3}
174 {$IFNDEF VERSION4}
175 {$DEFINE VERSION3ONLY}
176 {$ENDIF}
177 {$ENDIF}
178
179
180 {Set up the string type expected}
181 {$UNDEF HStrings}
182 {$UNDEF WStrings}
183
184 {$IFOPT H+}
185 {$DEFINE HStrings} {Huge strings under WIN32}
186 {$UNDEF NStrings}
187 {$ELSE}
188 {$DEFINE WStrings} {255-character strings under WIN32}
189 {$UNDEF NStrings}
190 {$ENDIF}
191
192 {$IFDEF Median}
193 {$IFDEF MidPoint}
194 !! ERROR: you must define only one of Median, MidPoint, Random
195 {$ENDIF}
196 {$IFDEF Random}
197 !! ERROR: you must define only one of Median, MidPoint, Random
198 {$ENDIF}
199 {$ENDIF}
200 {$IFDEF MidPoint}
201 {$IFDEF Random}
202 !! ERROR: you must define only one of Median, MidPoint, Random
203 {$ENDIF}
204 {$ENDIF}
205 {$IFNDEF Median}
206 {$IFNDEF MidPoint}
207 {$IFNDEF Random}
208 !! ERROR: you must define at least one of Median, MidPoint, Random
209 {$ENDIF}
210 {$ENDIF}
211 {$ENDIF}
212

  ViewVC Help
Powered by ViewVC 1.1.20