ssl/libcrypto/src/crypto/opensslconf.h.in
changeset 0 e4d67989cc36
equal deleted inserted replaced
-1:000000000000 0:e4d67989cc36
       
     1 /* crypto/opensslconf.h.in */
       
     2 
       
     3 /* Generate 80386 code? */
       
     4 #undef I386_ONLY
       
     5 
       
     6 #if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */
       
     7 #if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR)
       
     8 #define ENGINESDIR "/usr/local/lib/engines"
       
     9 #define OPENSSLDIR "/usr/local/ssl"
       
    10 #endif
       
    11 #endif
       
    12 
       
    13 #undef OPENSSL_UNISTD
       
    14 #define OPENSSL_UNISTD <unistd.h>
       
    15 
       
    16 #undef OPENSSL_EXPORT_VAR_AS_FUNCTION
       
    17 
       
    18 #if defined(HEADER_IDEA_H) && !defined(IDEA_INT)
       
    19 #define IDEA_INT unsigned int
       
    20 #endif
       
    21 
       
    22 #if defined(HEADER_MD2_H) && !defined(MD2_INT)
       
    23 #define MD2_INT unsigned int
       
    24 #endif
       
    25 
       
    26 #if defined(HEADER_RC2_H) && !defined(RC2_INT)
       
    27 /* I need to put in a mod for the alpha - eay */
       
    28 #define RC2_INT unsigned int
       
    29 #endif
       
    30 
       
    31 #if defined(HEADER_RC4_H)
       
    32 #if !defined(RC4_INT)
       
    33 /* using int types make the structure larger but make the code faster
       
    34  * on most boxes I have tested - up to %20 faster. */
       
    35 /*
       
    36  * I don't know what does "most" mean, but declaring "int" is a must on:
       
    37  * - Intel P6 because partial register stalls are very expensive;
       
    38  * - elder Alpha because it lacks byte load/store instructions;
       
    39  */
       
    40 #define RC4_INT unsigned int
       
    41 #endif
       
    42 #if !defined(RC4_CHUNK)
       
    43 /*
       
    44  * This enables code handling data aligned at natural CPU word
       
    45  * boundary. See crypto/rc4/rc4_enc.c for further details.
       
    46  */
       
    47 #undef RC4_CHUNK
       
    48 #endif
       
    49 #endif
       
    50 
       
    51 #if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG)
       
    52 /* If this is set to 'unsigned int' on a DEC Alpha, this gives about a
       
    53  * %20 speed up (longs are 8 bytes, int's are 4). */
       
    54 #ifndef DES_LONG
       
    55 #define DES_LONG unsigned long
       
    56 #endif
       
    57 #endif
       
    58 
       
    59 #if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H)
       
    60 #define CONFIG_HEADER_BN_H
       
    61 #undef BN_LLONG
       
    62 
       
    63 /* Should we define BN_DIV2W here? */
       
    64 
       
    65 /* Only one for the following should be defined */
       
    66 /* The prime number generation stuff may not work when
       
    67  * EIGHT_BIT but I don't care since I've only used this mode
       
    68  * for debuging the bignum libraries */
       
    69 #undef SIXTY_FOUR_BIT_LONG
       
    70 #undef SIXTY_FOUR_BIT
       
    71 #define THIRTY_TWO_BIT
       
    72 #undef SIXTEEN_BIT
       
    73 #undef EIGHT_BIT
       
    74 #endif
       
    75 
       
    76 #if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H)
       
    77 #define CONFIG_HEADER_RC4_LOCL_H
       
    78 /* if this is defined data[i] is used instead of *data, this is a %20
       
    79  * speedup on x86 */
       
    80 #undef RC4_INDEX
       
    81 #endif
       
    82 
       
    83 #if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H)
       
    84 #define CONFIG_HEADER_BF_LOCL_H
       
    85 #undef BF_PTR
       
    86 #endif /* HEADER_BF_LOCL_H */
       
    87 
       
    88 #if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H)
       
    89 #define CONFIG_HEADER_DES_LOCL_H
       
    90 #ifndef DES_DEFAULT_OPTIONS
       
    91 /* the following is tweaked from a config script, that is why it is a
       
    92  * protected undef/define */
       
    93 #ifndef DES_PTR
       
    94 #undef DES_PTR
       
    95 #endif
       
    96 
       
    97 /* This helps C compiler generate the correct code for multiple functional
       
    98  * units.  It reduces register dependancies at the expense of 2 more
       
    99  * registers */
       
   100 #ifndef DES_RISC1
       
   101 #undef DES_RISC1
       
   102 #endif
       
   103 
       
   104 #ifndef DES_RISC2
       
   105 #undef DES_RISC2
       
   106 #endif
       
   107 
       
   108 #if defined(DES_RISC1) && defined(DES_RISC2)
       
   109 YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!!
       
   110 #endif
       
   111 
       
   112 /* Unroll the inner loop, this sometimes helps, sometimes hinders.
       
   113  * Very mucy CPU dependant */
       
   114 #ifndef DES_UNROLL
       
   115 #undef DES_UNROLL
       
   116 #endif
       
   117 
       
   118 /* These default values were supplied by
       
   119  * Peter Gutman <pgut001@cs.auckland.ac.nz>
       
   120  * They are only used if nothing else has been defined */
       
   121 #if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL)
       
   122 /* Special defines which change the way the code is built depending on the
       
   123    CPU and OS.  For SGI machines you can use _MIPS_SZLONG (32 or 64) to find
       
   124    even newer MIPS CPU's, but at the moment one size fits all for
       
   125    optimization options.  Older Sparc's work better with only UNROLL, but
       
   126    there's no way to tell at compile time what it is you're running on */
       
   127  
       
   128 #if defined( sun )		/* Newer Sparc's */
       
   129 #  define DES_PTR
       
   130 #  define DES_RISC1
       
   131 #  define DES_UNROLL
       
   132 #elif defined( __ultrix )	/* Older MIPS */
       
   133 #  define DES_PTR
       
   134 #  define DES_RISC2
       
   135 #  define DES_UNROLL
       
   136 #elif defined( __osf1__ )	/* Alpha */
       
   137 #  define DES_PTR
       
   138 #  define DES_RISC2
       
   139 #elif defined ( _AIX )		/* RS6000 */
       
   140   /* Unknown */
       
   141 #elif defined( __hpux )		/* HP-PA */
       
   142   /* Unknown */
       
   143 #elif defined( __aux )		/* 68K */
       
   144   /* Unknown */
       
   145 #elif defined( __dgux )		/* 88K (but P6 in latest boxes) */
       
   146 #  define DES_UNROLL
       
   147 #elif defined( __sgi )		/* Newer MIPS */
       
   148 #  define DES_PTR
       
   149 #  define DES_RISC2
       
   150 #  define DES_UNROLL
       
   151 #elif defined(i386) || defined(__i386__)	/* x86 boxes, should be gcc */
       
   152 #  define DES_PTR
       
   153 #  define DES_RISC1
       
   154 #  define DES_UNROLL
       
   155 #endif /* Systems-specific speed defines */
       
   156 #endif
       
   157 
       
   158 #endif /* DES_DEFAULT_OPTIONS */
       
   159 #endif /* HEADER_DES_LOCL_H */