opensslconf-arm.h revision 162915
1202375Srdivacky/* $FreeBSD: head/secure/lib/libcrypto/opensslconf-arm.h 162915 2006-10-01 07:56:51Z simon $ */ 2202375Srdivacky/* opensslconf.h */ 3202375Srdivacky/* WARNING: Generated automatically from opensslconf.h.in by Configure. */ 4202375Srdivacky 5202375Srdivacky/* OpenSSL was configured with the following options: */ 6202375Srdivacky#ifndef OPENSSL_DOING_MAKEDEPEND 7202375Srdivacky 8202375Srdivacky/* Disabled by default in OpenSSL 0.9.8. */ 9202375Srdivacky#ifndef OPENSSL_NO_CAMELLIA 10202375Srdivacky# define OPENSSL_NO_CAMELLIA 11202375Srdivacky#endif 12202375Srdivacky/* libgmp is not in the FreeBSD base system. */ 13202375Srdivacky#ifndef OPENSSL_NO_GMP 14202375Srdivacky# define OPENSSL_NO_GMP 15226633Sdim#endif 16249423Sdim/* The Kerberos 5 support is MIT-specific. */ 17249423Sdim#ifndef OPENSSL_NO_KRB5 18234353Sdim# define OPENSSL_NO_KRB5 19202375Srdivacky#endif 20202375Srdivacky 21202375Srdivacky#endif /* OPENSSL_DOING_MAKEDEPEND */ 22202375Srdivacky#ifndef OPENSSL_THREADS 23202375Srdivacky# define OPENSSL_THREADS 24202375Srdivacky#endif 25202375Srdivacky#ifndef OPENSSL_NO_STATIC_ENGINE 26202375Srdivacky# define OPENSSL_NO_STATIC_ENGINE 27210299Sed#endif 28202375Srdivacky 29202375Srdivacky/* The OPENSSL_NO_* macros are also defined as NO_* if the application 30202375Srdivacky asks for it. This is a transient feature that is provided for those 31210299Sed who haven't had the time to do the appropriate changes in their 32202375Srdivacky applications. */ 33249423Sdim#ifdef OPENSSL_ALGORITHM_DEFINES 34202375Srdivacky# if defined(OPENSSL_NO_GMP) && !defined(NO_GMP) 35224145Sdim# define NO_GMP 36224145Sdim# endif 37239462Sdim# if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5) 38224145Sdim# define NO_KRB5 39224145Sdim# endif 40224145Sdim# endif 41224145Sdim#ifdef OPENSSL_OTHER_DEFINES 42224145Sdim# ifndef NO_ASM 43202375Srdivacky# define NO_ASM 44202375Srdivacky# endif 45202375Srdivacky#endif 46210299Sed 47202375Srdivacky/* crypto/opensslconf.h.in */ 48202375Srdivacky 49202375Srdivacky/* Generate 80386 code? */ 50249423Sdim#undef I386_ONLY 51202375Srdivacky 52202375Srdivacky#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ 53202375Srdivacky#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) 54202375Srdivacky#define ENGINESDIR "/usr/lib/engines" 55202375Srdivacky#define OPENSSLDIR "/etc/ssl" 56202375Srdivacky#endif 57249423Sdim#endif 58202375Srdivacky 59249423Sdim#undef OPENSSL_UNISTD 60202375Srdivacky#define OPENSSL_UNISTD <unistd.h> 61202375Srdivacky 62249423Sdim#undef OPENSSL_EXPORT_VAR_AS_FUNCTION 63202375Srdivacky 64202375Srdivacky#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) 65202375Srdivacky#define IDEA_INT unsigned int 66202375Srdivacky#endif 67202375Srdivacky 68202375Srdivacky#if defined(HEADER_MD2_H) && !defined(MD2_INT) 69202375Srdivacky#define MD2_INT unsigned int 70202375Srdivacky#endif 71202375Srdivacky 72202375Srdivacky#if defined(HEADER_RC2_H) && !defined(RC2_INT) 73202375Srdivacky/* I need to put in a mod for the alpha - eay */ 74202375Srdivacky#define RC2_INT unsigned int 75202375Srdivacky#endif 76202375Srdivacky 77202375Srdivacky#if defined(HEADER_RC4_H) 78202375Srdivacky#if !defined(RC4_INT) 79202375Srdivacky/* using int types make the structure larger but make the code faster 80202375Srdivacky * on most boxes I have tested - up to %20 faster. */ 81243830Sdim/* 82202375Srdivacky * I don't know what does "most" mean, but declaring "int" is a must on: 83202375Srdivacky * - Intel P6 because partial register stalls are very expensive; 84226633Sdim * - elder Alpha because it lacks byte load/store instructions; 85249423Sdim */ 86202375Srdivacky#define RC4_INT unsigned int 87202375Srdivacky#endif 88202375Srdivacky#if !defined(RC4_CHUNK) 89202375Srdivacky/* 90226633Sdim * This enables code handling data aligned at natural CPU word 91226633Sdim * boundary. See crypto/rc4/rc4_enc.c for further details. 92202375Srdivacky */ 93202375Srdivacky#undef RC4_CHUNK 94202375Srdivacky#endif 95202375Srdivacky#endif 96202375Srdivacky 97202375Srdivacky#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) 98202375Srdivacky/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a 99202375Srdivacky * %20 speed up (longs are 8 bytes, int's are 4). */ 100221345Sdim#ifndef DES_LONG 101221345Sdim#define DES_LONG unsigned long 102202375Srdivacky#endif 103202375Srdivacky#endif 104202375Srdivacky 105202375Srdivacky#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) 106202375Srdivacky#define CONFIG_HEADER_BN_H 107249423Sdim#define BN_LLONG 108249423Sdim 109249423Sdim/* Should we define BN_DIV2W here? */ 110249423Sdim 111249423Sdim/* Only one for the following should be defined */ 112249423Sdim/* The prime number generation stuff may not work when 113202375Srdivacky * EIGHT_BIT but I don't care since I've only used this mode 114202375Srdivacky * for debuging the bignum libraries */ 115202375Srdivacky#undef SIXTY_FOUR_BIT_LONG 116210299Sed#undef SIXTY_FOUR_BIT 117202375Srdivacky#define THIRTY_TWO_BIT 118202375Srdivacky#undef SIXTEEN_BIT 119249423Sdim#undef EIGHT_BIT 120202375Srdivacky#endif 121202375Srdivacky 122202375Srdivacky#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) 123202375Srdivacky#define CONFIG_HEADER_RC4_LOCL_H 124202375Srdivacky/* if this is defined data[i] is used instead of *data, this is a %20 125202375Srdivacky * speedup on x86 */ 126202375Srdivacky#define RC4_INDEX 127202375Srdivacky#endif 128202375Srdivacky 129202375Srdivacky#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) 130210299Sed#define CONFIG_HEADER_BF_LOCL_H 131202375Srdivacky#undef BF_PTR 132226633Sdim#endif /* HEADER_BF_LOCL_H */ 133202375Srdivacky 134249423Sdim#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) 135210299Sed#define CONFIG_HEADER_DES_LOCL_H 136210299Sed#ifndef DES_DEFAULT_OPTIONS 137202375Srdivacky/* the following is tweaked from a config script, that is why it is a 138226633Sdim * protected undef/define */ 139202375Srdivacky#ifndef DES_PTR 140249423Sdim#define DES_PTR 141202375Srdivacky#endif 142202375Srdivacky 143202375Srdivacky/* This helps C compiler generate the correct code for multiple functional 144249423Sdim * units. It reduces register dependancies at the expense of 2 more 145202375Srdivacky * registers */ 146202375Srdivacky#ifndef DES_RISC1 147202375Srdivacky#define DES_RISC1 148221345Sdim#endif 149202375Srdivacky 150202375Srdivacky#ifndef DES_RISC2 151202375Srdivacky#undef DES_RISC2 152223017Sdim#endif 153202375Srdivacky 154202375Srdivacky#if defined(DES_RISC1) && defined(DES_RISC2) 155202375SrdivackyYOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! 156202375Srdivacky#endif 157249423Sdim 158202375Srdivacky/* Unroll the inner loop, this sometimes helps, sometimes hinders. 159202375Srdivacky * Very mucy CPU dependant */ 160249423Sdim#ifndef DES_UNROLL 161202375Srdivacky#define DES_UNROLL 162202375Srdivacky#endif 163202375Srdivacky 164202375Srdivacky/* These default values were supplied by 165202375Srdivacky * Peter Gutman <pgut001@cs.auckland.ac.nz> 166234353Sdim * They are only used if nothing else has been defined */ 167202375Srdivacky#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) 168202375Srdivacky/* Special defines which change the way the code is built depending on the 169202375Srdivacky CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find 170202375Srdivacky even newer MIPS CPU's, but at the moment one size fits all for 171202375Srdivacky optimization options. Older Sparc's work better with only UNROLL, but 172202375Srdivacky there's no way to tell at compile time what it is you're running on */ 173202375Srdivacky 174202375Srdivacky#if defined( sun ) /* Newer Sparc's */ 175202375Srdivacky# define DES_PTR 176202375Srdivacky# define DES_RISC1 177202375Srdivacky# define DES_UNROLL 178202375Srdivacky#elif defined( __ultrix ) /* Older MIPS */ 179202375Srdivacky# define DES_PTR 180202375Srdivacky# define DES_RISC2 181202375Srdivacky# define DES_UNROLL 182202375Srdivacky#elif defined( __osf1__ ) /* Alpha */ 183202375Srdivacky# define DES_PTR 184202375Srdivacky# define DES_RISC2 185202375Srdivacky#elif defined ( _AIX ) /* RS6000 */ 186202375Srdivacky /* Unknown */ 187202375Srdivacky#elif defined( __hpux ) /* HP-PA */ 188202375Srdivacky /* Unknown */ 189202375Srdivacky#elif defined( __aux ) /* 68K */ 190249423Sdim /* Unknown */ 191202375Srdivacky#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ 192202375Srdivacky# define DES_UNROLL 193202375Srdivacky#elif defined( __sgi ) /* Newer MIPS */ 194202375Srdivacky# define DES_PTR 195202375Srdivacky# define DES_RISC2 196202375Srdivacky# define DES_UNROLL 197202375Srdivacky#elif defined( i386 ) /* x86 boxes, should be gcc */ 198202375Srdivacky# define DES_PTR 199249423Sdim# define DES_RISC1 200202375Srdivacky# define DES_UNROLL 201202375Srdivacky#endif /* Systems-specific speed defines */ 202202375Srdivacky#endif 203202375Srdivacky 204202375Srdivacky#endif /* DES_DEFAULT_OPTIONS */ 205202375Srdivacky#endif /* HEADER_DES_LOCL_H */ 206202375Srdivacky