1280436Sandrew/* $FreeBSD$ */
2280436Sandrew/* opensslconf.h */
3280436Sandrew/* WARNING: Generated automatically from opensslconf.h.in by Configure. */
4280436Sandrew
5280436Sandrew#ifdef  __cplusplus
6280436Sandrewextern "C" {
7280436Sandrew#endif
8280436Sandrew/* OpenSSL was configured with the following options: */
9280436Sandrew#ifndef OPENSSL_DOING_MAKEDEPEND
10280436Sandrew
11280436Sandrew
12280436Sandrew#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128
13280436Sandrew# define OPENSSL_NO_EC_NISTP_64_GCC_128
14280436Sandrew#endif
15280436Sandrew#ifndef OPENSSL_NO_GMP
16280436Sandrew# define OPENSSL_NO_GMP
17280436Sandrew#endif
18280436Sandrew#ifndef OPENSSL_NO_JPAKE
19280436Sandrew# define OPENSSL_NO_JPAKE
20280436Sandrew#endif
21280436Sandrew#ifndef OPENSSL_NO_KRB5
22280436Sandrew# define OPENSSL_NO_KRB5
23280436Sandrew#endif
24290207Sjkim#ifndef OPENSSL_NO_LIBUNBOUND
25290207Sjkim# define OPENSSL_NO_LIBUNBOUND
26290207Sjkim#endif
27280436Sandrew#ifndef OPENSSL_NO_MD2
28280436Sandrew# define OPENSSL_NO_MD2
29280436Sandrew#endif
30280436Sandrew#ifndef OPENSSL_NO_SCTP
31280436Sandrew# define OPENSSL_NO_SCTP
32280436Sandrew#endif
33290207Sjkim#ifndef OPENSSL_NO_SSL_TRACE
34290207Sjkim# define OPENSSL_NO_SSL_TRACE
35290207Sjkim#endif
36280436Sandrew#ifndef OPENSSL_NO_SSL2
37280436Sandrew# define OPENSSL_NO_SSL2
38280436Sandrew#endif
39280436Sandrew#ifndef OPENSSL_NO_STORE
40280436Sandrew# define OPENSSL_NO_STORE
41280436Sandrew#endif
42280436Sandrew#ifndef OPENSSL_NO_UNIT_TEST
43280436Sandrew# define OPENSSL_NO_UNIT_TEST
44280436Sandrew#endif
45296279Sjkim#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS
46296279Sjkim# define OPENSSL_NO_WEAK_SSL_CIPHERS
47296279Sjkim#endif
48280436Sandrew
49280436Sandrew#endif /* OPENSSL_DOING_MAKEDEPEND */
50280436Sandrew
51280436Sandrew#ifndef OPENSSL_THREADS
52280436Sandrew# define OPENSSL_THREADS
53280436Sandrew#endif
54304320Sjkim%%NO_ASM%%#ifndef OPENSSL_NO_ASM
55304320Sjkim%%NO_ASM%%# define OPENSSL_NO_ASM
56304320Sjkim%%NO_ASM%%#endif
57280436Sandrew#ifndef OPENSSL_NO_STATIC_ENGINE
58280436Sandrew# define OPENSSL_NO_STATIC_ENGINE
59280436Sandrew#endif
60280436Sandrew
61280436Sandrew/* The OPENSSL_NO_* macros are also defined as NO_* if the application
62280436Sandrew   asks for it.  This is a transient feature that is provided for those
63280436Sandrew   who haven't had the time to do the appropriate changes in their
64280436Sandrew   applications.  */
65280436Sandrew#ifdef OPENSSL_ALGORITHM_DEFINES
66280436Sandrew# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128)
67280436Sandrew#  define NO_EC_NISTP_64_GCC_128
68280436Sandrew# endif
69280436Sandrew# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP)
70280436Sandrew#  define NO_GMP
71280436Sandrew# endif
72280436Sandrew# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE)
73280436Sandrew#  define NO_JPAKE
74280436Sandrew# endif
75280436Sandrew# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5)
76280436Sandrew#  define NO_KRB5
77280436Sandrew# endif
78290207Sjkim# if defined(OPENSSL_NO_LIBUNBOUND) && !defined(NO_LIBUNBOUND)
79290207Sjkim#  define NO_LIBUNBOUND
80290207Sjkim# endif
81280436Sandrew# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2)
82280436Sandrew#  define NO_MD2
83280436Sandrew# endif
84280436Sandrew# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP)
85280436Sandrew#  define NO_SCTP
86280436Sandrew# endif
87290207Sjkim# if defined(OPENSSL_NO_SSL_TRACE) && !defined(NO_SSL_TRACE)
88290207Sjkim#  define NO_SSL_TRACE
89290207Sjkim# endif
90280436Sandrew# if defined(OPENSSL_NO_SSL2) && !defined(NO_SSL2)
91280436Sandrew#  define NO_SSL2
92280436Sandrew# endif
93280436Sandrew# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE)
94280436Sandrew#  define NO_STORE
95280436Sandrew# endif
96280436Sandrew# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST)
97280436Sandrew#  define NO_UNIT_TEST
98280436Sandrew# endif
99296279Sjkim# if defined(OPENSSL_NO_WEAK_SSL_CIPHERS) && !defined(NO_WEAK_SSL_CIPHERS)
100296279Sjkim#  define NO_WEAK_SSL_CIPHERS
101296279Sjkim# endif
102280436Sandrew#endif
103280436Sandrew
104304320Sjkim%%ASM%%#define OPENSSL_CPUID_OBJ
105304320Sjkim%%ASM%%
106280436Sandrew/* crypto/opensslconf.h.in */
107280436Sandrew
108280436Sandrew/* Generate 80386 code? */
109280436Sandrew#undef I386_ONLY
110280436Sandrew
111280436Sandrew#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */
112280436Sandrew#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR)
113280436Sandrew#define ENGINESDIR "/usr/lib/engines"
114280436Sandrew#define OPENSSLDIR "/etc/ssl"
115280436Sandrew#endif
116280436Sandrew#endif
117280436Sandrew
118280436Sandrew#undef OPENSSL_UNISTD
119280436Sandrew#define OPENSSL_UNISTD <unistd.h>
120280436Sandrew
121280436Sandrew#undef OPENSSL_EXPORT_VAR_AS_FUNCTION
122280436Sandrew
123280436Sandrew#if defined(HEADER_IDEA_H) && !defined(IDEA_INT)
124280436Sandrew#define IDEA_INT unsigned int
125280436Sandrew#endif
126280436Sandrew
127280436Sandrew#if defined(HEADER_MD2_H) && !defined(MD2_INT)
128280436Sandrew#define MD2_INT unsigned int
129280436Sandrew#endif
130280436Sandrew
131280436Sandrew#if defined(HEADER_RC2_H) && !defined(RC2_INT)
132280436Sandrew/* I need to put in a mod for the alpha - eay */
133280436Sandrew#define RC2_INT unsigned int
134280436Sandrew#endif
135280436Sandrew
136280436Sandrew#if defined(HEADER_RC4_H)
137280436Sandrew#if !defined(RC4_INT)
138280436Sandrew/* using int types make the structure larger but make the code faster
139280436Sandrew * on most boxes I have tested - up to %20 faster. */
140280436Sandrew/*
141280436Sandrew * I don't know what does "most" mean, but declaring "int" is a must on:
142280436Sandrew * - Intel P6 because partial register stalls are very expensive;
143280436Sandrew * - elder Alpha because it lacks byte load/store instructions;
144280436Sandrew */
145280436Sandrew#define RC4_INT unsigned int
146280436Sandrew#endif
147280436Sandrew#if !defined(RC4_CHUNK)
148280436Sandrew/*
149280436Sandrew * This enables code handling data aligned at natural CPU word
150280436Sandrew * boundary. See crypto/rc4/rc4_enc.c for further details.
151280436Sandrew */
152280436Sandrew#undef RC4_CHUNK
153280436Sandrew#endif
154280436Sandrew#endif
155280436Sandrew
156280436Sandrew#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG)
157280436Sandrew/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a
158280436Sandrew * %20 speed up (longs are 8 bytes, int's are 4). */
159280436Sandrew#ifndef DES_LONG
160280436Sandrew#define DES_LONG unsigned int
161280436Sandrew#endif
162280436Sandrew#endif
163280436Sandrew
164280436Sandrew#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H)
165280436Sandrew#define CONFIG_HEADER_BN_H
166280436Sandrew#undef BN_LLONG
167280436Sandrew
168280436Sandrew/* Should we define BN_DIV2W here? */
169280436Sandrew
170280436Sandrew/* Only one for the following should be defined */
171280436Sandrew#define SIXTY_FOUR_BIT_LONG
172280436Sandrew#undef SIXTY_FOUR_BIT
173280436Sandrew#undef THIRTY_TWO_BIT
174280436Sandrew#endif
175280436Sandrew
176280436Sandrew#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H)
177280436Sandrew#define CONFIG_HEADER_RC4_LOCL_H
178280436Sandrew/* if this is defined data[i] is used instead of *data, this is a %20
179280436Sandrew * speedup on x86 */
180280436Sandrew#define RC4_INDEX
181280436Sandrew#endif
182280436Sandrew
183280436Sandrew#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H)
184280436Sandrew#define CONFIG_HEADER_BF_LOCL_H
185280436Sandrew#undef BF_PTR
186280436Sandrew#endif /* HEADER_BF_LOCL_H */
187280436Sandrew
188280436Sandrew#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H)
189280436Sandrew#define CONFIG_HEADER_DES_LOCL_H
190280436Sandrew#ifndef DES_DEFAULT_OPTIONS
191280436Sandrew/* the following is tweaked from a config script, that is why it is a
192280436Sandrew * protected undef/define */
193280436Sandrew#ifndef DES_PTR
194280436Sandrew#define DES_PTR
195280436Sandrew#endif
196280436Sandrew
197280436Sandrew/* This helps C compiler generate the correct code for multiple functional
198280436Sandrew * units.  It reduces register dependancies at the expense of 2 more
199280436Sandrew * registers */
200280436Sandrew#ifndef DES_RISC1
201280436Sandrew#define DES_RISC1
202280436Sandrew#endif
203280436Sandrew
204280436Sandrew#ifndef DES_RISC2
205280436Sandrew#undef DES_RISC2
206280436Sandrew#endif
207280436Sandrew
208280436Sandrew#if defined(DES_RISC1) && defined(DES_RISC2)
209290207Sjkim#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!!
210280436Sandrew#endif
211280436Sandrew
212280436Sandrew/* Unroll the inner loop, this sometimes helps, sometimes hinders.
213280436Sandrew * Very mucy CPU dependant */
214280436Sandrew#ifndef DES_UNROLL
215280436Sandrew#define DES_UNROLL
216280436Sandrew#endif
217280436Sandrew
218280436Sandrew/* These default values were supplied by
219280436Sandrew * Peter Gutman <pgut001@cs.auckland.ac.nz>
220280436Sandrew * They are only used if nothing else has been defined */
221280436Sandrew#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL)
222280436Sandrew/* Special defines which change the way the code is built depending on the
223280436Sandrew   CPU and OS.  For SGI machines you can use _MIPS_SZLONG (32 or 64) to find
224280436Sandrew   even newer MIPS CPU's, but at the moment one size fits all for
225280436Sandrew   optimization options.  Older Sparc's work better with only UNROLL, but
226280436Sandrew   there's no way to tell at compile time what it is you're running on */
227280436Sandrew 
228296279Sjkim#if defined( __sun ) || defined ( sun )		/* Newer Sparc's */
229280436Sandrew#  define DES_PTR
230280436Sandrew#  define DES_RISC1
231280436Sandrew#  define DES_UNROLL
232280436Sandrew#elif defined( __ultrix )	/* Older MIPS */
233280436Sandrew#  define DES_PTR
234280436Sandrew#  define DES_RISC2
235280436Sandrew#  define DES_UNROLL
236280436Sandrew#elif defined( __osf1__ )	/* Alpha */
237280436Sandrew#  define DES_PTR
238280436Sandrew#  define DES_RISC2
239280436Sandrew#elif defined ( _AIX )		/* RS6000 */
240280436Sandrew  /* Unknown */
241280436Sandrew#elif defined( __hpux )		/* HP-PA */
242280436Sandrew  /* Unknown */
243280436Sandrew#elif defined( __aux )		/* 68K */
244280436Sandrew  /* Unknown */
245280436Sandrew#elif defined( __dgux )		/* 88K (but P6 in latest boxes) */
246280436Sandrew#  define DES_UNROLL
247280436Sandrew#elif defined( __sgi )		/* Newer MIPS */
248280436Sandrew#  define DES_PTR
249280436Sandrew#  define DES_RISC2
250280436Sandrew#  define DES_UNROLL
251280436Sandrew#elif defined(i386) || defined(__i386__)	/* x86 boxes, should be gcc */
252280436Sandrew#  define DES_PTR
253280436Sandrew#  define DES_RISC1
254280436Sandrew#  define DES_UNROLL
255280436Sandrew#endif /* Systems-specific speed defines */
256280436Sandrew#endif
257280436Sandrew
258280436Sandrew#endif /* DES_DEFAULT_OPTIONS */
259280436Sandrew#endif /* HEADER_DES_LOCL_H */
260280436Sandrew#ifdef  __cplusplus
261280436Sandrew}
262280436Sandrew#endif
263