1129209Scognet/* $FreeBSD: releng/10.2/secure/lib/libcrypto/opensslconf-arm.h 280304 2015-03-20 21:54:45Z jkim $ */
2129209Scognet/* opensslconf.h */
3129209Scognet/* WARNING: Generated automatically from opensslconf.h.in by Configure. */
4129209Scognet
5280304Sjkim#ifdef  __cplusplus
6280304Sjkimextern "C" {
7280304Sjkim#endif
8129209Scognet/* OpenSSL was configured with the following options: */
9160819Ssimon#ifndef OPENSSL_DOING_MAKEDEPEND
10160819Ssimon
11238405Sjkim
12238405Sjkim#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128
13238405Sjkim# define OPENSSL_NO_EC_NISTP_64_GCC_128
14162915Ssimon#endif
15160819Ssimon#ifndef OPENSSL_NO_GMP
16160819Ssimon# define OPENSSL_NO_GMP
17160819Ssimon#endif
18194207Ssimon#ifndef OPENSSL_NO_JPAKE
19194207Ssimon# define OPENSSL_NO_JPAKE
20194207Ssimon#endif
21160819Ssimon#ifndef OPENSSL_NO_KRB5
22160819Ssimon# define OPENSSL_NO_KRB5
23160819Ssimon#endif
24238405Sjkim#ifndef OPENSSL_NO_MD2
25238405Sjkim# define OPENSSL_NO_MD2
26238405Sjkim#endif
27238405Sjkim#ifndef OPENSSL_NO_SCTP
28238405Sjkim# define OPENSSL_NO_SCTP
29238405Sjkim#endif
30238405Sjkim#ifndef OPENSSL_NO_STORE
31238405Sjkim# define OPENSSL_NO_STORE
32238405Sjkim#endif
33280304Sjkim#ifndef OPENSSL_NO_UNIT_TEST
34280304Sjkim# define OPENSSL_NO_UNIT_TEST
35280304Sjkim#endif
36160819Ssimon
37160819Ssimon#endif /* OPENSSL_DOING_MAKEDEPEND */
38238405Sjkim
39160819Ssimon#ifndef OPENSSL_THREADS
40160819Ssimon# define OPENSSL_THREADS
41160819Ssimon#endif
42238405Sjkim#ifndef OPENSSL_NO_ASM
43238405Sjkim# define OPENSSL_NO_ASM
44238405Sjkim#endif
45160819Ssimon#ifndef OPENSSL_NO_STATIC_ENGINE
46160819Ssimon# define OPENSSL_NO_STATIC_ENGINE
47160819Ssimon#endif
48160819Ssimon
49160819Ssimon/* The OPENSSL_NO_* macros are also defined as NO_* if the application
50160819Ssimon   asks for it.  This is a transient feature that is provided for those
51160819Ssimon   who haven't had the time to do the appropriate changes in their
52160819Ssimon   applications.  */
53129209Scognet#ifdef OPENSSL_ALGORITHM_DEFINES
54238405Sjkim# if defined(OPENSSL_NO_EC_NISTP_64_GCC_128) && !defined(NO_EC_NISTP_64_GCC_128)
55238405Sjkim#  define NO_EC_NISTP_64_GCC_128
56238405Sjkim# endif
57160819Ssimon# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP)
58160819Ssimon#  define NO_GMP
59129209Scognet# endif
60238405Sjkim# if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE)
61238405Sjkim#  define NO_JPAKE
62238405Sjkim# endif
63160819Ssimon# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5)
64160819Ssimon#  define NO_KRB5
65160819Ssimon# endif
66238405Sjkim# if defined(OPENSSL_NO_MD2) && !defined(NO_MD2)
67238405Sjkim#  define NO_MD2
68160819Ssimon# endif
69238405Sjkim# if defined(OPENSSL_NO_SCTP) && !defined(NO_SCTP)
70238405Sjkim#  define NO_SCTP
71129209Scognet# endif
72238405Sjkim# if defined(OPENSSL_NO_STORE) && !defined(NO_STORE)
73238405Sjkim#  define NO_STORE
74238405Sjkim# endif
75280304Sjkim# if defined(OPENSSL_NO_UNIT_TEST) && !defined(NO_UNIT_TEST)
76280304Sjkim#  define NO_UNIT_TEST
77280304Sjkim# endif
78129209Scognet#endif
79129209Scognet
80129209Scognet/* crypto/opensslconf.h.in */
81129209Scognet
82129209Scognet/* Generate 80386 code? */
83129209Scognet#undef I386_ONLY
84129209Scognet
85129209Scognet#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */
86129209Scognet#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR)
87160819Ssimon#define ENGINESDIR "/usr/lib/engines"
88129209Scognet#define OPENSSLDIR "/etc/ssl"
89129209Scognet#endif
90129209Scognet#endif
91129209Scognet
92160819Ssimon#undef OPENSSL_UNISTD
93129209Scognet#define OPENSSL_UNISTD <unistd.h>
94129209Scognet
95160819Ssimon#undef OPENSSL_EXPORT_VAR_AS_FUNCTION
96160819Ssimon
97129209Scognet#if defined(HEADER_IDEA_H) && !defined(IDEA_INT)
98129209Scognet#define IDEA_INT unsigned int
99129209Scognet#endif
100129209Scognet
101129209Scognet#if defined(HEADER_MD2_H) && !defined(MD2_INT)
102129209Scognet#define MD2_INT unsigned int
103129209Scognet#endif
104129209Scognet
105129209Scognet#if defined(HEADER_RC2_H) && !defined(RC2_INT)
106129209Scognet/* I need to put in a mod for the alpha - eay */
107129209Scognet#define RC2_INT unsigned int
108129209Scognet#endif
109129209Scognet
110129209Scognet#if defined(HEADER_RC4_H)
111129209Scognet#if !defined(RC4_INT)
112129209Scognet/* using int types make the structure larger but make the code faster
113129209Scognet * on most boxes I have tested - up to %20 faster. */
114129209Scognet/*
115129209Scognet * I don't know what does "most" mean, but declaring "int" is a must on:
116129209Scognet * - Intel P6 because partial register stalls are very expensive;
117129209Scognet * - elder Alpha because it lacks byte load/store instructions;
118129209Scognet */
119129209Scognet#define RC4_INT unsigned int
120129209Scognet#endif
121129209Scognet#if !defined(RC4_CHUNK)
122129209Scognet/*
123129209Scognet * This enables code handling data aligned at natural CPU word
124129209Scognet * boundary. See crypto/rc4/rc4_enc.c for further details.
125129209Scognet */
126129209Scognet#undef RC4_CHUNK
127129209Scognet#endif
128129209Scognet#endif
129129209Scognet
130160819Ssimon#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG)
131129209Scognet/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a
132129209Scognet * %20 speed up (longs are 8 bytes, int's are 4). */
133129209Scognet#ifndef DES_LONG
134129209Scognet#define DES_LONG unsigned long
135129209Scognet#endif
136129209Scognet#endif
137129209Scognet
138129209Scognet#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H)
139129209Scognet#define CONFIG_HEADER_BN_H
140129209Scognet#define BN_LLONG
141129209Scognet
142129209Scognet/* Should we define BN_DIV2W here? */
143129209Scognet
144129209Scognet/* Only one for the following should be defined */
145129209Scognet#undef SIXTY_FOUR_BIT_LONG
146129209Scognet#undef SIXTY_FOUR_BIT
147129209Scognet#define THIRTY_TWO_BIT
148129209Scognet#endif
149129209Scognet
150129209Scognet#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H)
151129209Scognet#define CONFIG_HEADER_RC4_LOCL_H
152129209Scognet/* if this is defined data[i] is used instead of *data, this is a %20
153129209Scognet * speedup on x86 */
154129209Scognet#define RC4_INDEX
155129209Scognet#endif
156129209Scognet
157129209Scognet#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H)
158129209Scognet#define CONFIG_HEADER_BF_LOCL_H
159129209Scognet#undef BF_PTR
160129209Scognet#endif /* HEADER_BF_LOCL_H */
161129209Scognet
162129209Scognet#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H)
163129209Scognet#define CONFIG_HEADER_DES_LOCL_H
164129209Scognet#ifndef DES_DEFAULT_OPTIONS
165129209Scognet/* the following is tweaked from a config script, that is why it is a
166129209Scognet * protected undef/define */
167129209Scognet#ifndef DES_PTR
168129209Scognet#define DES_PTR
169129209Scognet#endif
170129209Scognet
171129209Scognet/* This helps C compiler generate the correct code for multiple functional
172129209Scognet * units.  It reduces register dependancies at the expense of 2 more
173129209Scognet * registers */
174129209Scognet#ifndef DES_RISC1
175129209Scognet#define DES_RISC1
176129209Scognet#endif
177129209Scognet
178129209Scognet#ifndef DES_RISC2
179129209Scognet#undef DES_RISC2
180129209Scognet#endif
181129209Scognet
182129209Scognet#if defined(DES_RISC1) && defined(DES_RISC2)
183129209ScognetYOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!!
184129209Scognet#endif
185129209Scognet
186129209Scognet/* Unroll the inner loop, this sometimes helps, sometimes hinders.
187129209Scognet * Very mucy CPU dependant */
188129209Scognet#ifndef DES_UNROLL
189129209Scognet#define DES_UNROLL
190129209Scognet#endif
191129209Scognet
192129209Scognet/* These default values were supplied by
193129209Scognet * Peter Gutman <pgut001@cs.auckland.ac.nz>
194129209Scognet * They are only used if nothing else has been defined */
195129209Scognet#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL)
196129209Scognet/* Special defines which change the way the code is built depending on the
197129209Scognet   CPU and OS.  For SGI machines you can use _MIPS_SZLONG (32 or 64) to find
198129209Scognet   even newer MIPS CPU's, but at the moment one size fits all for
199129209Scognet   optimization options.  Older Sparc's work better with only UNROLL, but
200129209Scognet   there's no way to tell at compile time what it is you're running on */
201129209Scognet
202129209Scognet#if defined( sun )		/* Newer Sparc's */
203129209Scognet#  define DES_PTR
204129209Scognet#  define DES_RISC1
205129209Scognet#  define DES_UNROLL
206129209Scognet#elif defined( __ultrix )	/* Older MIPS */
207129209Scognet#  define DES_PTR
208129209Scognet#  define DES_RISC2
209129209Scognet#  define DES_UNROLL
210129209Scognet#elif defined( __osf1__ )	/* Alpha */
211129209Scognet#  define DES_PTR
212129209Scognet#  define DES_RISC2
213129209Scognet#elif defined ( _AIX )		/* RS6000 */
214129209Scognet  /* Unknown */
215129209Scognet#elif defined( __hpux )		/* HP-PA */
216129209Scognet  /* Unknown */
217129209Scognet#elif defined( __aux )		/* 68K */
218129209Scognet  /* Unknown */
219129209Scognet#elif defined( __dgux )		/* 88K (but P6 in latest boxes) */
220129209Scognet#  define DES_UNROLL
221129209Scognet#elif defined( __sgi )		/* Newer MIPS */
222129209Scognet#  define DES_PTR
223129209Scognet#  define DES_RISC2
224129209Scognet#  define DES_UNROLL
225238405Sjkim#elif defined(i386) || defined(__i386__)	/* x86 boxes, should be gcc */
226129209Scognet#  define DES_PTR
227129209Scognet#  define DES_RISC1
228129209Scognet#  define DES_UNROLL
229129209Scognet#endif /* Systems-specific speed defines */
230129209Scognet#endif
231129209Scognet
232129209Scognet#endif /* DES_DEFAULT_OPTIONS */
233129209Scognet#endif /* HEADER_DES_LOCL_H */
234280304Sjkim#ifdef  __cplusplus
235280304Sjkim}
236280304Sjkim#endif
237