Skip to content

Commit 1d299df

Browse files
committed
inc files refactoring
1 parent 97402c1 commit 1d299df

File tree

12 files changed

+226
-298
lines changed

12 files changed

+226
-298
lines changed

CryptoLib/src/Crypto/Digests/ClpDigest.pas

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -122,13 +122,10 @@ function TDigest.GetAlgorithmName: string;
122122
LowPoint, HighPoint: Int32;
123123
begin
124124
LName := FHash.Name;
125-
{$IFDEF DELPHIXE3_UP}
126-
LowPoint := System.Low(LName);
127-
HighPoint := System.High(LName);
128-
{$ELSE}
125+
129126
LowPoint := 1;
130127
HighPoint := System.Length(LName);
131-
{$ENDIF DELPHIXE3_UP}
128+
132129
result := Copy(LName, LowPoint + 1, HighPoint - 1);
133130
end;
134131

CryptoLib/src/Crypto/Macs/ClpKMac.pas

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -149,13 +149,10 @@ function TKMac.GetAlgorithmName: string;
149149
LowPoint, HighPoint: Int32;
150150
begin
151151
LName := Self.ClassName;
152-
{$IFDEF DELPHIXE3_UP}
153-
LowPoint := System.Low(LName);
154-
HighPoint := System.High(LName);
155-
{$ELSE}
152+
156153
LowPoint := 1;
157154
HighPoint := System.Length(LName);
158-
{$ENDIF DELPHIXE3_UP}
155+
159156
result := Copy(LName, LowPoint + 1, HighPoint - 1);
160157
end;
161158

CryptoLib/src/Include/CryptoLib.inc

Lines changed: 7 additions & 210 deletions
Original file line numberDiff line numberDiff line change
@@ -15,224 +15,21 @@
1515

1616
(* &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& *)
1717

18-
{$DEFINE DELPHI}
1918

20-
(* &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& *)
19+
{---------------------------- Compiler Family Switch --------------------------}
2120
{$IFDEF FPC}
22-
{$I CryptoLibHelper.inc} // Had to Include this Since Delphi Does not allow "FPC_FULLVERSION" to Compile.
23-
{$UNDEF DELPHI}
24-
{$MODE delphi}
25-
26-
{$IFDEF CPU386}
27-
{$DEFINE CRYPTOLIB_X86}
28-
{$ENDIF}
29-
30-
{$IFDEF CPUX64}
31-
{$DEFINE CRYPTOLIB_X86_64}
32-
{$ENDIF}
33-
34-
{$IFDEF CPUARM}
35-
{$DEFINE CRYPTOLIB_ARM}
36-
{$ENDIF}
37-
38-
{$IFDEF CPUAARCH64}
39-
{$DEFINE CRYPTOLIB_AARCH64}
40-
{$ENDIF}
41-
42-
{$IFDEF IPHONESIM}
43-
{$DEFINE CRYPTOLIB_IOSSIM}
44-
{$ENDIF}
45-
46-
{$IF DEFINED(MSWINDOWS)}
47-
{$DEFINE CRYPTOLIB_MSWINDOWS}
48-
{$ELSEIF DEFINED(UNIX)}
49-
{$DEFINE CRYPTOLIB_UNIX}
50-
{$IF DEFINED(BSD)}
51-
{$IF DEFINED(DARWIN)}
52-
{$DEFINE CRYPTOLIB_APPLE}
53-
{$IF DEFINED(CRYPTOLIB_ARM) OR DEFINED(CRYPTOLIB_AARCH64)}
54-
{$DEFINE CRYPTOLIB_IOS}
55-
{$ELSE}
56-
{$DEFINE CRYPTOLIB_MACOS}
57-
{$IFEND}
58-
{$ELSEIF DEFINED(FREEBSD) OR DEFINED(NETBSD) OR DEFINED(OPENBSD) OR DEFINED(DRAGONFLY)}
59-
{$DEFINE CRYPTOLIB_GENERIC_BSD}
60-
{$IFEND}
61-
{$ELSEIF DEFINED(ANDROID)}
62-
{$DEFINE CRYPTOLIB_ANDROID}
63-
{$ELSEIF DEFINED(LINUX)}
64-
{$DEFINE CRYPTOLIB_LINUX}
65-
{$ELSEIF DEFINED(SOLARIS)}
66-
{$DEFINE CRYPTOLIB_SOLARIS}
67-
{$ELSE}
68-
{$DEFINE CRYPTOLIB_UNDEFINED_UNIX_VARIANTS}
69-
{$IFEND}
21+
{$I CryptoLibFPC.inc} // FPC-specific settings
7022
{$ELSE}
71-
{$MESSAGE ERROR 'UNSUPPORTED TARGET.'}
72-
{$IFEND}
73-
74-
{$IFDEF CRYPTOLIB_ANDROID}
75-
{$DEFINE CRYPTOLIB_LINUX}
23+
{$DEFINE DELPHI}
24+
{$I ../../CryptoLib/src/Include/CryptoLibDelphi.inc} // Delphi-specific settings
7625
{$ENDIF}
7726

78-
{$IF DEFINED(CRYPTOLIB_LINUX) OR DEFINED(CRYPTOLIB_SOLARIS)}
79-
{$DEFINE CRYPTOLIB_HAS_GETRANDOM}
80-
{$IFEND}
81-
82-
{$DEFINE USE_UNROLLED_VARIANT}
83-
84-
// Disable Overflow and RangeChecks.
27+
{-------------------------- Common Compiler Settings --------------------------}
28+
{$SCOPEDENUMS ON}
8529
{$OVERFLOWCHECKS OFF}
8630
{$RANGECHECKS OFF}
87-
88-
// Enable Pointer Math
8931
{$POINTERMATH ON}
90-
91-
// Disable Warnings and Hints.
9232
{$WARNINGS OFF}
9333
{$HINTS OFF}
94-
{$NOTES OFF}
95-
96-
// Optimizations
97-
{$OPTIMIZATION LEVEL3}
98-
// disable "USELOADMODIFYSTORE" because it produces incorrect result
99-
// when used in combination with -CpCOREAVX2 and -OpCOREAVX2 in FPC 3.2.0 beta
100-
{$IFDEF FPC_GREATER_THAN_3.0.4}
101-
{$OPTIMIZATION NOUSELOADMODIFYSTORE}
102-
{$ENDIF}
103-
// level 4 optimizations
104-
{$OPTIMIZATION ORDERFIELDS}
105-
{$OPTIMIZATION DEADVALUES}
106-
107-
{$IFDEF CPUI386}
108-
{$OPTIMIZATION USEEBP}
109-
{$ENDIF}
110-
111-
{$IFDEF CPUX86_64}
112-
{$OPTIMIZATION USERBP}
113-
{$ENDIF}
114-
115-
{$ENDIF FPC}
116-
117-
(* &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& *)
118-
119-
{$IFDEF DELPHI}
120-
121-
// XE3 and Above
122-
{$IF CompilerVersion >= 24.0}
123-
{$DEFINE DELPHIXE3_UP}
124-
{$DEFINE SUPPORT_TSTREAM_READ_BYTEARRAY_OVERLOAD}
125-
{$DEFINE SUPPORT_TSTREAM_WRITE_BYTEARRAY_OVERLOAD}
126-
{$LEGACYIFEND ON}
127-
{$ZEROBASEDSTRINGS OFF}
128-
{$IFEND}
129-
130-
// XE and Above
131-
{$IF CompilerVersion >= 22.0}
132-
{$DEFINE DELPHIXE_UP}
133-
{$IFEND}
134-
135-
// XE4 and Above
136-
{$IF CompilerVersion >= 25.0}
137-
{$DEFINE DELPHIXE4_UP}
138-
{$DEFINE SHIFT_OVERFLOW_BUG_FIXED}
139-
{$IFEND}
140-
141-
// 10.1 Berlin and Above
142-
{$IF CompilerVersion >= 31.0}
143-
{$DEFINE DELPHI10.1_BERLIN_UP}
144-
{$DEFINE HAS_VOLATILE}
145-
{$IFEND}
146-
147-
// 10.2 Tokyo and Above
148-
{$IF CompilerVersion >= 32.0}
149-
{$DEFINE DELPHI10.2_TOKYO_UP}
150-
{$IFEND}
151-
152-
// 10.2 Tokyo and Above
153-
{$IFNDEF DELPHI10.2_TOKYO_UP}
154-
{$MESSAGE ERROR 'This Library requires Delphi Tokyo or higher.'}
155-
{$ENDIF}
156-
157-
{$IFDEF CPU386}
158-
{$DEFINE CRYPTOLIB_X86}
159-
{$ENDIF}
160-
161-
{$IFDEF CPUX64}
162-
{$DEFINE CRYPTOLIB_X86_64}
163-
{$ENDIF}
164-
165-
{$IFDEF CPUARM32}
166-
{$DEFINE CRYPTOLIB_ARM}
167-
{$ENDIF}
168-
169-
{$IFDEF CPUARM64}
170-
{$DEFINE CRYPTOLIB_AARCH64}
171-
{$ENDIF}
172-
173-
{$IFDEF IOS}
174-
{$IFNDEF CPUARM}
175-
{$DEFINE CRYPTOLIB_IOSSIM}
176-
{$ENDIF}
177-
{$ENDIF}
178-
179-
{$IFDEF IOS}
180-
{$DEFINE CRYPTOLIB_IOS}
181-
{$ENDIF}
182-
183-
{$IFDEF MSWINDOWS}
184-
{$DEFINE CRYPTOLIB_MSWINDOWS}
185-
{$ENDIF}
186-
187-
{$IFDEF MACOS}
188-
{$IFNDEF IOS}
189-
{$DEFINE CRYPTOLIB_MACOS}
190-
{$ENDIF}
191-
{$ENDIF}
192-
193-
{$IFDEF ANDROID}
194-
{$DEFINE CRYPTOLIB_ANDROID}
195-
{$ENDIF}
196-
197-
{$IF DEFINED(CRYPTOLIB_IOS) OR DEFINED(CRYPTOLIB_MACOS)}
198-
{$DEFINE CRYPTOLIB_APPLE}
199-
{$IFEND}
200-
201-
{$IF DEFINED(LINUX) OR DEFINED(CRYPTOLIB_ANDROID)}
202-
{$DEFINE CRYPTOLIB_LINUX}
203-
{$IFEND}
204-
205-
{$IFDEF CRYPTOLIB_LINUX}
206-
{$DEFINE CRYPTOLIB_HAS_GETRANDOM}
207-
{$ENDIF}
208-
209-
{$IF DEFINED(CRYPTOLIB_APPLE) OR DEFINED(CRYPTOLIB_LINUX)}
210-
{$DEFINE CRYPTOLIB_UNIX}
211-
{$IFEND}
212-
213-
{$DEFINE USE_UNROLLED_VARIANT}
214-
215-
// This option is needed to enable code browsing (aka Ctrl+Click)
216-
// It does not affect the binary size or generated code
217-
{$DEFINITIONINFO ON}
218-
219-
// Disable Overflow and RangeChecks.
220-
{$OVERFLOWCHECKS OFF}
221-
{$RANGECHECKS OFF}
222-
223-
// Enable Pointer Math
224-
{$POINTERMATH ON}
225-
226-
// Disable String Checks
227-
{$STRINGCHECKS OFF}
228-
229-
// Disable Duplicate Constructor Warnings
230-
{$WARN DUPLICATE_CTOR_DTOR OFF}
231-
232-
// Disable Deprecated Warnings
233-
{$WARN SYMBOL_DEPRECATED OFF}
234-
235-
{$ENDIF DELPHI}
236-
237-
(* &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& *)
23834

35+
(* &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& *)
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
{ *********************************************************************************** }
2+
{ * CryptoLib Library * }
3+
{ * Copyright (c) 2018 - 20XX Ugochukwu Mmaduekwe * }
4+
{ * Github Repository <https://github.com/Xor-el> * }
5+
6+
{ * Distributed under the MIT software license, see the accompanying file LICENSE * }
7+
{ * or visit http://www.opensource.org/licenses/mit-license.php. * }
8+
9+
{ * Acknowledgements: * }
10+
{ * * }
11+
{ * Thanks to Sphere 10 Software (http://www.sphere10.com/) for sponsoring * }
12+
{ * development of this library * }
13+
14+
{ * ******************************************************************************* * }
15+
16+
(* &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& *)
17+
18+
{$IFDEF DELPHI}
19+
{$DEFINITIONINFO ON} // IDE navigation; no binary impact
20+
{$STRINGCHECKS OFF}
21+
{$WARN DUPLICATE_CTOR_DTOR OFF}
22+
23+
{$IF CompilerVersion < 32.0}
24+
{$MESSAGE ERROR 'This Library requires Delphi Tokyo or higher.'}
25+
{$IFEND}
26+
27+
// XE and Above
28+
{$IF CompilerVersion >= 22.0}
29+
{$DEFINE DELPHIXE_UP}
30+
{$IFEND}
31+
32+
// XE3 and Above
33+
{$IF CompilerVersion >= 24.0}
34+
{$DEFINE SUPPORT_TSTREAM_READ_BYTEARRAY_OVERLOAD}
35+
{$DEFINE SUPPORT_TSTREAM_WRITE_BYTEARRAY_OVERLOAD}
36+
{$IFEND}
37+
38+
// XE4 and Above
39+
{$IF CompilerVersion >= 25.0}
40+
{$DEFINE SHIFT_OVERFLOW_BUG_FIXED}
41+
{$IFEND}
42+
43+
// 10.1 Berlin and Above
44+
{$IF CompilerVersion >= 31.0}
45+
{$DEFINE HAS_VOLATILE}
46+
{$IFEND}
47+
48+
{$IFDEF CPU386}
49+
{$DEFINE CRYPTOLIB_X86}
50+
{$ENDIF}
51+
52+
{$IFDEF CPUX64}
53+
{$DEFINE CRYPTOLIB_X86_64}
54+
{$ENDIF}
55+
56+
{$IFDEF CPUARM32}
57+
{$DEFINE CRYPTOLIB_ARM}
58+
{$ENDIF}
59+
60+
{$IFDEF CPUARM64}
61+
{$DEFINE CRYPTOLIB_AARCH64}
62+
{$ENDIF}
63+
64+
{$IFDEF IOS}
65+
{$IFNDEF CPUARM}
66+
{$DEFINE CRYPTOLIB_IOSSIM}
67+
{$ENDIF}
68+
{$ENDIF}
69+
70+
{$IFDEF IOS}
71+
{$DEFINE CRYPTOLIB_IOS}
72+
{$ENDIF}
73+
74+
{$IFDEF MSWINDOWS}
75+
{$DEFINE CRYPTOLIB_MSWINDOWS}
76+
{$ENDIF}
77+
78+
{$IFDEF MACOS}
79+
{$IFNDEF IOS}
80+
{$DEFINE CRYPTOLIB_MACOS}
81+
{$ENDIF}
82+
{$ENDIF}
83+
84+
{$IFDEF ANDROID}
85+
{$DEFINE CRYPTOLIB_ANDROID}
86+
{$ENDIF}
87+
88+
{$IF DEFINED(CRYPTOLIB_IOS) OR DEFINED(CRYPTOLIB_MACOS)}
89+
{$DEFINE CRYPTOLIB_APPLE}
90+
{$IFEND}
91+
92+
{$IF DEFINED(LINUX) OR DEFINED(CRYPTOLIB_ANDROID)}
93+
{$DEFINE CRYPTOLIB_LINUX}
94+
{$IFEND}
95+
96+
{$IFDEF CRYPTOLIB_LINUX}
97+
{$DEFINE CRYPTOLIB_HAS_GETRANDOM}
98+
{$ENDIF}
99+
100+
{$IF DEFINED(CRYPTOLIB_APPLE) OR DEFINED(CRYPTOLIB_LINUX)}
101+
{$DEFINE CRYPTOLIB_UNIX}
102+
{$IFEND}
103+
104+
{$ENDIF}
105+

0 commit comments

Comments
 (0)