159191Skris/* crypto/opensslconf.h.in */ 255714Skris 355714Skris/* Generate 80386 code? */ 455714Skris#undef I386_ONLY 555714Skris 655714Skris#if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */ 755714Skris#if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) 8160814Ssimon#define ENGINESDIR "/usr/local/lib/engines" 955714Skris#define OPENSSLDIR "/usr/local/ssl" 1055714Skris#endif 1155714Skris#endif 1255714Skris 13109998Smarkm#undef OPENSSL_UNISTD 1455714Skris#define OPENSSL_UNISTD <unistd.h> 1555714Skris 16109998Smarkm#undef OPENSSL_EXPORT_VAR_AS_FUNCTION 17109998Smarkm 1855714Skris#if defined(HEADER_IDEA_H) && !defined(IDEA_INT) 1955714Skris#define IDEA_INT unsigned int 2055714Skris#endif 2155714Skris 2255714Skris#if defined(HEADER_MD2_H) && !defined(MD2_INT) 2355714Skris#define MD2_INT unsigned int 2455714Skris#endif 2555714Skris 2655714Skris#if defined(HEADER_RC2_H) && !defined(RC2_INT) 2755714Skris/* I need to put in a mod for the alpha - eay */ 2855714Skris#define RC2_INT unsigned int 2955714Skris#endif 3055714Skris 3159191Skris#if defined(HEADER_RC4_H) 3259191Skris#if !defined(RC4_INT) 3355714Skris/* using int types make the structure larger but make the code faster 3455714Skris * on most boxes I have tested - up to %20 faster. */ 3559191Skris/* 3659191Skris * I don't know what does "most" mean, but declaring "int" is a must on: 3759191Skris * - Intel P6 because partial register stalls are very expensive; 3859191Skris * - elder Alpha because it lacks byte load/store instructions; 3959191Skris */ 4055714Skris#define RC4_INT unsigned int 4155714Skris#endif 4259191Skris#if !defined(RC4_CHUNK) 4359191Skris/* 4459191Skris * This enables code handling data aligned at natural CPU word 4559191Skris * boundary. See crypto/rc4/rc4_enc.c for further details. 4659191Skris */ 4759191Skris#undef RC4_CHUNK 4859191Skris#endif 4959191Skris#endif 5055714Skris 51109998Smarkm#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) 5255714Skris/* If this is set to 'unsigned int' on a DEC Alpha, this gives about a 5355714Skris * %20 speed up (longs are 8 bytes, int's are 4). */ 5455714Skris#ifndef DES_LONG 5555714Skris#define DES_LONG unsigned long 5655714Skris#endif 5755714Skris#endif 5855714Skris 5955714Skris#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) 6055714Skris#define CONFIG_HEADER_BN_H 6155714Skris#undef BN_LLONG 6255714Skris 6355714Skris/* Should we define BN_DIV2W here? */ 6455714Skris 6555714Skris/* Only one for the following should be defined */ 6655714Skris#undef SIXTY_FOUR_BIT_LONG 6755714Skris#undef SIXTY_FOUR_BIT 6855714Skris#define THIRTY_TWO_BIT 6955714Skris#endif 7055714Skris 7155714Skris#if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) 7255714Skris#define CONFIG_HEADER_RC4_LOCL_H 7355714Skris/* if this is defined data[i] is used instead of *data, this is a %20 7455714Skris * speedup on x86 */ 7555714Skris#undef RC4_INDEX 7655714Skris#endif 7755714Skris 7855714Skris#if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) 7955714Skris#define CONFIG_HEADER_BF_LOCL_H 8055714Skris#undef BF_PTR 8155714Skris#endif /* HEADER_BF_LOCL_H */ 8255714Skris 8355714Skris#if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) 8455714Skris#define CONFIG_HEADER_DES_LOCL_H 8555714Skris#ifndef DES_DEFAULT_OPTIONS 8655714Skris/* the following is tweaked from a config script, that is why it is a 8755714Skris * protected undef/define */ 8855714Skris#ifndef DES_PTR 8955714Skris#undef DES_PTR 9055714Skris#endif 9155714Skris 9255714Skris/* This helps C compiler generate the correct code for multiple functional 9355714Skris * units. It reduces register dependancies at the expense of 2 more 9455714Skris * registers */ 9555714Skris#ifndef DES_RISC1 9655714Skris#undef DES_RISC1 9755714Skris#endif 9855714Skris 9955714Skris#ifndef DES_RISC2 10055714Skris#undef DES_RISC2 10155714Skris#endif 10255714Skris 10355714Skris#if defined(DES_RISC1) && defined(DES_RISC2) 104285330Sjkim#error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! 10555714Skris#endif 10655714Skris 10755714Skris/* Unroll the inner loop, this sometimes helps, sometimes hinders. 10855714Skris * Very mucy CPU dependant */ 10955714Skris#ifndef DES_UNROLL 11055714Skris#undef DES_UNROLL 11155714Skris#endif 11255714Skris 11355714Skris/* These default values were supplied by 11455714Skris * Peter Gutman <pgut001@cs.auckland.ac.nz> 11555714Skris * They are only used if nothing else has been defined */ 11655714Skris#if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) 11755714Skris/* Special defines which change the way the code is built depending on the 11855714Skris CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find 11955714Skris even newer MIPS CPU's, but at the moment one size fits all for 12055714Skris optimization options. Older Sparc's work better with only UNROLL, but 12155714Skris there's no way to tell at compile time what it is you're running on */ 12255714Skris 123291721Sjkim#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */ 12455714Skris# define DES_PTR 12555714Skris# define DES_RISC1 12655714Skris# define DES_UNROLL 12755714Skris#elif defined( __ultrix ) /* Older MIPS */ 12855714Skris# define DES_PTR 12955714Skris# define DES_RISC2 13055714Skris# define DES_UNROLL 13155714Skris#elif defined( __osf1__ ) /* Alpha */ 13255714Skris# define DES_PTR 13355714Skris# define DES_RISC2 13455714Skris#elif defined ( _AIX ) /* RS6000 */ 13555714Skris /* Unknown */ 13655714Skris#elif defined( __hpux ) /* HP-PA */ 13755714Skris /* Unknown */ 13855714Skris#elif defined( __aux ) /* 68K */ 13955714Skris /* Unknown */ 14055714Skris#elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ 14155714Skris# define DES_UNROLL 14255714Skris#elif defined( __sgi ) /* Newer MIPS */ 14355714Skris# define DES_PTR 14455714Skris# define DES_RISC2 14555714Skris# define DES_UNROLL 146109998Smarkm#elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ 14755714Skris# define DES_PTR 14855714Skris# define DES_RISC1 14955714Skris# define DES_UNROLL 15055714Skris#endif /* Systems-specific speed defines */ 15155714Skris#endif 15255714Skris 15355714Skris#endif /* DES_DEFAULT_OPTIONS */ 15455714Skris#endif /* HEADER_DES_LOCL_H */ 155