Deleted Added
full compact
Configure (59191) Configure (68651)
1:
2eval 'exec perl -S $0 ${1+"$@"}'
3 if $running_under_some_shell;
4##
5## Configure -- OpenSSL source tree configuration script
6##
7
8require 5.000;
9use strict;
10
11# see INSTALL for instructions.
12
1:
2eval 'exec perl -S $0 ${1+"$@"}'
3 if $running_under_some_shell;
4##
5## Configure -- OpenSSL source tree configuration script
6##
7
8require 5.000;
9use strict;
10
11# see INSTALL for instructions.
12
13my $usage="Usage: Configure [no- ...] [-Dxxx] [-lxxx] [-Lxxx] [-fxxx] [-Kxxx] [rsaref] [no-threads] [no-asm] [386] [--prefix=DIR] [--openssldir=OPENSSLDIR] os/compiler[:flags]\n";
13my $usage="Usage: Configure [no-<cipher> ...] [-Dxxx] [-lxxx] [-Lxxx] [-fxxx] [-Kxxx] [rsaref] [no-threads] [no-asm] [no-dso] [386] [--prefix=DIR] [--openssldir=OPENSSLDIR] os/compiler[:flags]\n";
14
15# Options:
16#
17# --openssldir install OpenSSL in OPENSSLDIR (Default: DIR/ssl if the
18# --prefix option is given; /usr/local/ssl otherwise)
19# --prefix prefix for the OpenSSL include, lib and bin directories
20# (Default: the OPENSSLDIR directory)
21#
22# --install_prefix Additional prefix for package builders (empty by
23# default). This needn't be set in advance, you can
24# just as well use "make INSTALL_PREFIX=/whatever install".
25#
26# rsaref use RSAref
27# [no-]threads [don't] try to create a library that is suitable for
28# multithreaded applications (default is "threads" if we
29# know how to do it)
14
15# Options:
16#
17# --openssldir install OpenSSL in OPENSSLDIR (Default: DIR/ssl if the
18# --prefix option is given; /usr/local/ssl otherwise)
19# --prefix prefix for the OpenSSL include, lib and bin directories
20# (Default: the OPENSSLDIR directory)
21#
22# --install_prefix Additional prefix for package builders (empty by
23# default). This needn't be set in advance, you can
24# just as well use "make INSTALL_PREFIX=/whatever install".
25#
26# rsaref use RSAref
27# [no-]threads [don't] try to create a library that is suitable for
28# multithreaded applications (default is "threads" if we
29# know how to do it)
30# [no-]shared [don't] try to create shared libraries when supported.
30# no-asm do not use assembler
31# no-asm do not use assembler
32# no-dso do not compile in any native shared-library methods. This
33# will ensure that all methods just return NULL.
31# 386 generate 80386 code
32# no-<cipher> build without specified algorithm (rsa, idea, rc5, ...)
33# -<xxx> +<xxx> compiler options are passed through
34# 386 generate 80386 code
35# no-<cipher> build without specified algorithm (rsa, idea, rc5, ...)
36# -<xxx> +<xxx> compiler options are passed through
34#
37#
38# DEBUG_SAFESTACK use type-safe stacks to enforce type-safety on stack items
39# provided to stack calls. Generates unique stack functions for
40# each possible stack type.
35# DES_PTR use pointer lookup vs arrays in the DES in crypto/des/des_locl.h
36# DES_RISC1 use different DES_ENCRYPT macro that helps reduce register
37# dependancies but needs to more registers, good for RISC CPU's
38# DES_RISC2 A different RISC variant.
39# DES_UNROLL unroll the inner DES loop, sometimes helps, somtimes hinders.
40# DES_INT use 'int' instead of 'long' for DES_LONG in crypto/des/des.h
41# This is used on the DEC Alpha where long is 8 bytes
42# and int is 4

--- 38 unchanged lines hidden (view full) ---

81my $x86_sol_asm="asm/bn86-sol.o asm/co86-sol.o:asm/dx86-sol.o asm/yx86-sol.o:asm/bx86-sol.o:asm/mx86-sol.o:asm/sx86-sol.o:asm/cx86-sol.o:asm/rx86-sol.o:asm/rm86-sol.o:asm/r586-sol.o";
82my $x86_elf_asm="asm/bn86-elf.o asm/co86-elf.o:asm/dx86-elf.o asm/yx86-elf.o:asm/bx86-elf.o:asm/mx86-elf.o:asm/sx86-elf.o:asm/cx86-elf.o:asm/rx86-elf.o:asm/rm86-elf.o:asm/r586-elf.o";
83my $x86_out_asm="asm/bn86-out.o asm/co86-out.o:asm/dx86-out.o asm/yx86-out.o:asm/bx86-out.o:asm/mx86-out.o:asm/sx86-out.o:asm/cx86-out.o:asm/rx86-out.o:asm/rm86-out.o:asm/r586-out.o";
84my $x86_bsdi_asm="asm/bn86bsdi.o asm/co86bsdi.o:asm/dx86bsdi.o asm/yx86bsdi.o:asm/bx86bsdi.o:asm/mx86bsdi.o:asm/sx86bsdi.o:asm/cx86bsdi.o:asm/rx86bsdi.o:asm/rm86bsdi.o:asm/r586bsdi.o";
85
86# -DB_ENDIAN slows things down on a sparc for md5, but helps sha1.
87# So the md5_locl.h file has an undef B_ENDIAN if sun is defined
88
41# DES_PTR use pointer lookup vs arrays in the DES in crypto/des/des_locl.h
42# DES_RISC1 use different DES_ENCRYPT macro that helps reduce register
43# dependancies but needs to more registers, good for RISC CPU's
44# DES_RISC2 A different RISC variant.
45# DES_UNROLL unroll the inner DES loop, sometimes helps, somtimes hinders.
46# DES_INT use 'int' instead of 'long' for DES_LONG in crypto/des/des.h
47# This is used on the DEC Alpha where long is 8 bytes
48# and int is 4

--- 38 unchanged lines hidden (view full) ---

87my $x86_sol_asm="asm/bn86-sol.o asm/co86-sol.o:asm/dx86-sol.o asm/yx86-sol.o:asm/bx86-sol.o:asm/mx86-sol.o:asm/sx86-sol.o:asm/cx86-sol.o:asm/rx86-sol.o:asm/rm86-sol.o:asm/r586-sol.o";
88my $x86_elf_asm="asm/bn86-elf.o asm/co86-elf.o:asm/dx86-elf.o asm/yx86-elf.o:asm/bx86-elf.o:asm/mx86-elf.o:asm/sx86-elf.o:asm/cx86-elf.o:asm/rx86-elf.o:asm/rm86-elf.o:asm/r586-elf.o";
89my $x86_out_asm="asm/bn86-out.o asm/co86-out.o:asm/dx86-out.o asm/yx86-out.o:asm/bx86-out.o:asm/mx86-out.o:asm/sx86-out.o:asm/cx86-out.o:asm/rx86-out.o:asm/rm86-out.o:asm/r586-out.o";
90my $x86_bsdi_asm="asm/bn86bsdi.o asm/co86bsdi.o:asm/dx86bsdi.o asm/yx86bsdi.o:asm/bx86bsdi.o:asm/mx86bsdi.o:asm/sx86bsdi.o:asm/cx86bsdi.o:asm/rx86bsdi.o:asm/rm86bsdi.o:asm/r586bsdi.o";
91
92# -DB_ENDIAN slows things down on a sparc for md5, but helps sha1.
93# So the md5_locl.h file has an undef B_ENDIAN if sun is defined
94
89#config-string $cc : $cflags : $unistd : $thread_cflag : $lflags : $bn_ops : $bn_obj : $des_obj : $bf_obj : $md5_obj : $sha1_obj : $cast_obj : $rc4_obj : $rmd160_obj : $rc5_obj
95#config-string $cc : $cflags : $unistd : $thread_cflag : $lflags : $bn_ops : $bn_obj : $des_obj : $bf_obj : $md5_obj : $sha1_obj : $cast_obj : $rc4_obj : $rmd160_obj : $rc5_obj : $dso_scheme : $shared_target : $shared_cflag
90
91my %table=(
96
97my %table=(
98# File 'TABLE' (created by 'make TABLE') contains the data from this list,
99# formatted for better readability.
100
101
92#"b", "${tcc}:${tflags}::${tlib}:${bits1}:${tbn_mul}::",
93#"bl-4c-2c", "${tcc}:${tflags}::${tlib}:${bits1}BN_LLONG RC4_CHAR MD2_CHAR:${tbn_mul}::",
94#"bl-4c-ri", "${tcc}:${tflags}::${tlib}:${bits1}BN_LLONG RC4_CHAR RC4_INDEX:${tbn_mul}::",
95#"b2-is-ri-dp", "${tcc}:${tflags}::${tlib}:${bits2}IDEA_SHORT RC4_INDEX DES_PTR:${tbn_mul}::",
96
97# Our development configs
98"purify", "purify gcc:-g -DPURIFY -Wall::(unknown):-lsocket -lnsl::::",
102#"b", "${tcc}:${tflags}::${tlib}:${bits1}:${tbn_mul}::",
103#"bl-4c-2c", "${tcc}:${tflags}::${tlib}:${bits1}BN_LLONG RC4_CHAR MD2_CHAR:${tbn_mul}::",
104#"bl-4c-ri", "${tcc}:${tflags}::${tlib}:${bits1}BN_LLONG RC4_CHAR RC4_INDEX:${tbn_mul}::",
105#"b2-is-ri-dp", "${tcc}:${tflags}::${tlib}:${bits2}IDEA_SHORT RC4_INDEX DES_PTR:${tbn_mul}::",
106
107# Our development configs
108"purify", "purify gcc:-g -DPURIFY -Wall::(unknown):-lsocket -lnsl::::",
99"debug", "gcc:-DBN_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -ggdb -g2 -Wformat -Wshadow -Wmissing-prototypes -Wmissing-declarations -Werror::(unknown):-lefence::::",
100"debug-ben", "gcc:-DBN_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DPEDANTIC -O2 -pedantic -Wall -Wshadow -Werror -pipe::(unknown):::::",
101"debug-ben-debug", "gcc:-DBN_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -g3 -O2 -pedantic -Wall -Wshadow -Werror -pipe::(unknown):::::",
102"debug-ben-strict", "gcc:-DBN_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DCONST_STRICT -O2 -Wall -Wshadow -Werror -Wpointer-arith -Wcast-qual -Wwrite-strings -pipe::(unknown):::::",
109"debug", "gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -ggdb -g2 -Wformat -Wshadow -Wmissing-prototypes -Wmissing-declarations -Werror::(unknown):-lefence::::",
110"debug-ben", "gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DPEDANTIC -DDEBUG_SAFESTACK -O2 -pedantic -Wall -Wshadow -Werror -pipe::(unknown):::::",
111"debug-ben-debug", "gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DPEDANTIC -DDEBUG_SAFESTACK -g3 -O2 -pedantic -Wall -Wshadow -Werror -pipe::(unknown):::::",
112"debug-ben-strict", "gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DCONST_STRICT -O2 -Wall -Wshadow -Werror -Wpointer-arith -Wcast-qual -Wwrite-strings -pipe::(unknown):::::",
103"debug-rse","cc:-DTERMIOS -DL_ENDIAN -pipe -O -g -ggdb3 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
113"debug-rse","cc:-DTERMIOS -DL_ENDIAN -pipe -O -g -ggdb3 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
104"debug-bodo", "gcc:-DBIO_PAIR_DEBUG -DL_ENDIAN -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -g -m486 -pedantic -Wshadow -Wall::-D_REENTRANT::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
105"debug-ulf", "gcc:-DL_ENDIAN -DREF_CHECK -DBN_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -g -O2 -m486 -Wall -Werror -Wshadow -pipe::-D_REENTRANT::${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
106"debug-steve", "gcc:-DL_ENDIAN -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -DPEDANTIC -g -O2 -m486 -pedantic -Wall -Werror -Wshadow -pipe::-D_REENTRANT::${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
107"debug-levitte-linux-elf","gcc:-DUSE_ALLOCATING_PRINT -DRL_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DNO_ASM -DL_ENDIAN -DTERMIO -D_POSIX_SOURCE -ggdb -g3 -m486 -pedantic -ansi -Wall -Wshadow -Wid-clash-31 -pipe::-D_REENTRANT:::",
114"debug-bodo", "gcc:-DL_ENDIAN -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -DBIO_PAIR_DEBUG -g -m486 -pedantic -Wshadow -Wall::-D_REENTRANT::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
115"debug-ulf", "gcc:-DL_ENDIAN -DREF_CHECK -DCONF_DEBUG -DBN_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -g -O2 -m486 -Wall -Werror -Wshadow -pipe::-D_REENTRANT::${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
116"debug-steve", "gcc:-DL_ENDIAN -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DDEBUG_SAFESTACK -DCRYPTO_MDEBUG_ALL -DPEDANTIC -g -O2 -m486 -pedantic -Wall -Werror -Wshadow -pipe::-D_REENTRANT::${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
117"debug-levitte-linux-elf","gcc:-DUSE_ALLOCATING_PRINT -DRL_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DNO_ASM -DL_ENDIAN -DTERMIO -D_POSIX_SOURCE -ggdb -g3 -m486 -pedantic -ansi -Wall -Wshadow -Wid-clash-31 -pipe::-D_REENTRANT:-ldl:::::::::::dlfcn",
108"dist", "cc:-O::(unknown):::::",
109
110# Basic configs that should work on any (32 and less bit) box
111"gcc", "gcc:-O3::(unknown)::BN_LLONG:::",
112"cc", "cc:-O::(unknown):::::",
113
114#### Solaris x86 setups
115# -DNO_INLINE_ASM switches off inline assembler. We have to do it
116# here because whenever GNU C instantiates an assembler template it
117# surrounds it with #APP #NO_APP comment pair which (at least Solaris
118# 7_x86) /usr/ccs/bin/as fails to assemble with "Illegal mnemonic"
119# error message.
118"dist", "cc:-O::(unknown):::::",
119
120# Basic configs that should work on any (32 and less bit) box
121"gcc", "gcc:-O3::(unknown)::BN_LLONG:::",
122"cc", "cc:-O::(unknown):::::",
123
124#### Solaris x86 setups
125# -DNO_INLINE_ASM switches off inline assembler. We have to do it
126# here because whenever GNU C instantiates an assembler template it
127# surrounds it with #APP #NO_APP comment pair which (at least Solaris
128# 7_x86) /usr/ccs/bin/as fails to assemble with "Illegal mnemonic"
129# error message.
120"solaris-x86-gcc","gcc:-O3 -fomit-frame-pointer -m486 -Wall -DL_ENDIAN -DNO_INLINE_ASM::-D_REENTRANT:-lsocket -lnsl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_sol_asm}",
130"solaris-x86-gcc","gcc:-O3 -fomit-frame-pointer -m486 -Wall -DL_ENDIAN -DNO_INLINE_ASM::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_sol_asm}:dlfcn:solaris-shared:-fPIC",
121
122#### SPARC Solaris with GNU C setups
131
132#### SPARC Solaris with GNU C setups
123"solaris-sparcv7-gcc","gcc:-O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:::",
124"solaris-sparcv8-gcc","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o::",
125"solaris-sparcv9-gcc","gcc:-mcpu=ultrasparc -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o:",
133"solaris-sparcv7-gcc","gcc:-O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::::::::::dlfcn:solaris-shared:-fPIC",
134"solaris-sparcv8-gcc","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-fPIC",
135"solaris-sparcv9-gcc","gcc:-mcpu=ultrasparc -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:solaris-shared:-fPIC",
126# gcc pre-2.8 doesn't understand -mcpu=ultrasparc, so fall down to -mv8
127# but keep the assembler modules.
136# gcc pre-2.8 doesn't understand -mcpu=ultrasparc, so fall down to -mv8
137# but keep the assembler modules.
128"solaris-sparcv9-gcc27","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus-gcc27.o:::asm/md5-sparcv8plus-gcc27.o:",
138"solaris-sparcv9-gcc27","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus-gcc27.o:::asm/md5-sparcv8plus-gcc27.o::::::dlfcn:solaris-shared:-fPIC",
129####
139####
130"debug-solaris-sparcv8-gcc","gcc:-DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mv8 -Wall -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o::",
131"debug-solaris-sparcv9-gcc","gcc:-DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mcpu=ultrasparc -Wall -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o::",
140"debug-solaris-sparcv8-gcc","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mv8 -Wall -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-fPIC",
141"debug-solaris-sparcv9-gcc","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mcpu=ultrasparc -Wall -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o:::::::::dlfcn:solaris-shared:-fPIC",
132
133#### SPARC Solaris with Sun C setups
134# DO NOT use /xO[34] on sparc with SC3.0. It is broken, and will not pass the tests
142
143#### SPARC Solaris with Sun C setups
144# DO NOT use /xO[34] on sparc with SC3.0. It is broken, and will not pass the tests
135"solaris-sparc-sc3","cc:-fast -O -Xa -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_UNROLL BF_PTR:::",
145"solaris-sparc-sc3","cc:-fast -O -Xa -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_UNROLL BF_PTR::::::::::dlfcn:solaris-shared:-KPIC",
136# SC4.0 doesn't pass 'make test', upgrade to SC5.0 or SC4.2.
137# SC4.2 is ok, better than gcc even on bn as long as you tell it -xarch=v8
138# SC5.0 note: Compiler common patch 107357-01 or later is required!
146# SC4.0 doesn't pass 'make test', upgrade to SC5.0 or SC4.2.
147# SC4.2 is ok, better than gcc even on bn as long as you tell it -xarch=v8
148# SC5.0 note: Compiler common patch 107357-01 or later is required!
139"solaris-sparcv7-cc","cc:-xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:::",
140"solaris-sparcv8-cc","cc:-xarch=v8 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8.o::",
141"solaris-sparcv9-cc","cc:-xtarget=ultra -xarch=v8plus -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o:",
142"solaris64-sparcv9-cc","cc:-xtarget=ultra -xarch=v9 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::asm/md5-sparcv9.o:",
149"solaris-sparcv7-cc","cc:-xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::::::::dlfcn:solaris-shared:-KPIC",
150"solaris-sparcv8-cc","cc:-xarch=v8 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-KPIC",
151"solaris-sparcv9-cc","cc:-xtarget=ultra -xarch=v8plus -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:solaris-shared:-KPIC",
152"solaris64-sparcv9-cc","cc:-xtarget=ultra -xarch=v9 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::asm/md5-sparcv9.o::::::dlfcn:solaris-shared:-KPIC",
143####
153####
144"debug-solaris-sparcv8-cc","cc:-DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xarch=v8 -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8.o::",
145"debug-solaris-sparcv9-cc","cc:-DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xtarget=ultra -xarch=v8plus -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o:",
154"debug-solaris-sparcv8-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xarch=v8 -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-KPIC",
155"debug-solaris-sparcv9-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xtarget=ultra -xarch=v8plus -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:solaris-shared:-KPIC",
146
147#### SPARC Linux setups
148"linux-sparcv7","gcc:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::",
149# Ray Miller <ray.miller@computing-services.oxford.ac.uk> has patiently
150# assisted with debugging of following two configs.
151"linux-sparcv8","gcc:-mv8 -DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall -DBN_DIV2W::-D_REENTRANT::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o::::",
152# it's a real mess with -mcpu=ultrasparc option under Linux, but
153# -Wa,-Av8plus should do the trick no matter what.

--- 9 unchanged lines hidden (view full) ---

163#### IRIX 5.x configs
164# -mips2 flag is added by ./config when appropriate.
165"irix-gcc","gcc:-O3 -DTERMIOS -DB_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX RC4_CHAR RC4_CHUNK DES_UNROLL DES_RISC2 DES_PTR BF_PTR:::",
166"irix-cc", "cc:-O2 -use_readonly_const -DTERMIOS -DB_ENDIAN::(unknown)::BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC2 DES_UNROLL BF_PTR:::",
167#### IRIX 6.x configs
168# Only N32 and N64 ABIs are supported. If you need O32 ABI build, invoke
169# './Configure irix-[g]cc' manually.
170# -mips4 flag is added by ./config when appropriate.
156
157#### SPARC Linux setups
158"linux-sparcv7","gcc:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::",
159# Ray Miller <ray.miller@computing-services.oxford.ac.uk> has patiently
160# assisted with debugging of following two configs.
161"linux-sparcv8","gcc:-mv8 -DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall -DBN_DIV2W::-D_REENTRANT::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o::::",
162# it's a real mess with -mcpu=ultrasparc option under Linux, but
163# -Wa,-Av8plus should do the trick no matter what.

--- 9 unchanged lines hidden (view full) ---

173#### IRIX 5.x configs
174# -mips2 flag is added by ./config when appropriate.
175"irix-gcc","gcc:-O3 -DTERMIOS -DB_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX RC4_CHAR RC4_CHUNK DES_UNROLL DES_RISC2 DES_PTR BF_PTR:::",
176"irix-cc", "cc:-O2 -use_readonly_const -DTERMIOS -DB_ENDIAN::(unknown)::BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC2 DES_UNROLL BF_PTR:::",
177#### IRIX 6.x configs
178# Only N32 and N64 ABIs are supported. If you need O32 ABI build, invoke
179# './Configure irix-[g]cc' manually.
180# -mips4 flag is added by ./config when appropriate.
171"irix-mips3-gcc","gcc:-mabi=n32 -mmips-as -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W::(unknown)::MD2_CHAR RC4_INDEX RC4_CHAR RC4_CHUNK_LL DES_UNROLL DES_RISC2 DES_PTR BF_PTR SIXTY_FOUR_BIT:asm/mips3.o::",
172"irix-mips3-cc", "cc:-n32 -O2 -use_readonly_const -DTERMIOS -DB_ENDIAN -DBN_DIV3W::(unknown)::DES_PTR RC4_CHAR RC4_CHUNK_LL DES_RISC2 DES_UNROLL BF_PTR SIXTY_FOUR_BIT:asm/mips3.o::",
181"irix-mips3-gcc","gcc:-mabi=n32 -mmips-as -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE::MD2_CHAR RC4_INDEX RC4_CHAR RC4_CHUNK_LL DES_UNROLL DES_RISC2 DES_PTR BF_PTR SIXTY_FOUR_BIT:asm/mips3.o::",
182"irix-mips3-cc", "cc:-n32 -O2 -use_readonly_const -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE::DES_PTR RC4_CHAR RC4_CHUNK_LL DES_RISC2 DES_UNROLL BF_PTR SIXTY_FOUR_BIT:asm/mips3.o::",
173# N64 ABI builds.
183# N64 ABI builds.
174"irix64-mips4-gcc","gcc:-mabi=64 -mips4 -mmips-as -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W::(unknown)::RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG:asm/mips3.o::",
175"irix64-mips4-cc", "cc:-64 -mips4 -O2 -use_readonly_const -DTERMIOS -DB_ENDIAN -DBN_DIV3W::(unknown)::RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG:asm/mips3.o::",
184"irix64-mips4-gcc","gcc:-mabi=64 -mips4 -mmips-as -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE::RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG:asm/mips3.o::",
185"irix64-mips4-cc", "cc:-64 -mips4 -O2 -use_readonly_const -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE::RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG:asm/mips3.o::",
176
177#### Unified HP-UX ANSI C configs.
178# Special notes:
179# - Originally we were optimizing at +O4 level. It should be noted
180# that the only difference between +O3 and +O4 is global inter-
181# procedural analysis. As it has to be performed during the link
182# stage the compiler leaves behind certain pseudo-code in lib*.a
183# which might be release or even patch level specific. Generating

--- 13 unchanged lines hidden (view full) ---

197# pass -D_REENTRANT on HP-UX 10 and later.
198# - -DMD32_XARRAY triggers workaround for compiler bug we ran into in
199# 32-bit message digests. (For the moment of this writing) HP C
200# doesn't seem to "digest" too many local variables (they make "him"
201# chew forever:-). For more details look-up MD32_XARRAY comment in
202# crypto/sha/sha_lcl.h.
203# <appro@fy.chalmers.se>
204#
186
187#### Unified HP-UX ANSI C configs.
188# Special notes:
189# - Originally we were optimizing at +O4 level. It should be noted
190# that the only difference between +O3 and +O4 is global inter-
191# procedural analysis. As it has to be performed during the link
192# stage the compiler leaves behind certain pseudo-code in lib*.a
193# which might be release or even patch level specific. Generating

--- 13 unchanged lines hidden (view full) ---

207# pass -D_REENTRANT on HP-UX 10 and later.
208# - -DMD32_XARRAY triggers workaround for compiler bug we ran into in
209# 32-bit message digests. (For the moment of this writing) HP C
210# doesn't seem to "digest" too many local variables (they make "him"
211# chew forever:-). For more details look-up MD32_XARRAY comment in
212# crypto/sha/sha_lcl.h.
213# <appro@fy.chalmers.se>
214#
205"hpux-parisc-cc","cc:-Ae +O3 +ESlit -z -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY::::BN_LLONG DES_PTR DES_UNROLL DES_RISC1:::",
215#!#"hpux-parisc-cc","cc:-Ae +O3 +ESlit -z -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY:::-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
206# Since there is mention of this in shlib/hpux10-cc.sh
216# Since there is mention of this in shlib/hpux10-cc.sh
207"hpux-parisc-cc-o4","cc:-Ae +O4 +ESlit -z -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY::::BN_LLONG DES_PTR DES_UNROLL DES_RISC1:::",
208"hpux-parisc-gcc","gcc:-O3 -DB_ENDIAN -DBN_DIV2W::::BN_LLONG DES_PTR DES_UNROLL DES_RISC1:::",
209"hpux64-parisc-cc","cc:-Ae +DD64 +O3 +ESlit -z -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT::SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:::",
217"hpux-parisc-cc-o4","cc:-Ae +O4 +ESlit -z -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY:::-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
218"hpux-parisc-gcc","gcc:-O3 -DB_ENDIAN -DBN_DIV2W:::-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
219"hpux64-parisc-cc","cc:-Ae +DD64 +O3 +ESlit -z -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::::::::::dlfcn",
210
220
221# More attempts at unified 10.X and 11.X targets for HP C compiler.
222#
223# Chris Ruemmler <ruemmler@cup.hp.com>
224# Kevin Steves <ks@hp.se>
225"hpux-parisc-cc","cc:+O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY::-D_REENTRANT:-ldld:MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::::::::::dl",
226"hpux-parisc2-cc","cc:+DA2.0 +DS2.0 +O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldld:SIXTY_FOUR_BIT MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:asm/pa-risc2.o:::::::::dl",
227"hpux64-parisc2-cc","cc:+DD64 +O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:asm/pa-risc2W.o:::::::::dlfcn",
228"hpux-parisc1_1-cc","cc:+DA1.1 +DS1.1 +O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldld:MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::::::::::dl",
229
211# HPUX 9.X config.
212# Don't use the bundled cc. It is broken. Use HP ANSI C if possible, or
213# egcs. gcc 2.8.1 is also broken.
214
230# HPUX 9.X config.
231# Don't use the bundled cc. It is broken. Use HP ANSI C if possible, or
232# egcs. gcc 2.8.1 is also broken.
233
215"hpux-cc", "cc:-DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY -Ae +ESlit +O3 -z::(unknown)::BN_LLONG DES_PTR DES_UNROLL DES_RISC1:::",
234"hpux-cc", "cc:-DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY -Ae +ESlit +O3 -z::(unknown):-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
216# If hpux-cc fails (e.g. during "make test"), try the next one; otherwise,
217# please report your OS and compiler version to the openssl-bugs@openssl.org
218# mailing list.
235# If hpux-cc fails (e.g. during "make test"), try the next one; otherwise,
236# please report your OS and compiler version to the openssl-bugs@openssl.org
237# mailing list.
219"hpux-brokencc", "cc:-DB_ENDIAN -DBN_DIV2W -Ae +ESlit +O2 -z::(unknown)::DES_PTR DES_UNROLL DES_RISC1:::",
238"hpux-brokencc", "cc:-DB_ENDIAN -DBN_DIV2W -Ae +ESlit +O2 -z::(unknown):-ldld:DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
220
239
221"hpux-gcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::(unknown)::BN_LLONG DES_PTR DES_UNROLL DES_RISC1:::",
240"hpux-gcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::(unknown):-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
222# If hpux-gcc fails, try this one:
241# If hpux-gcc fails, try this one:
223"hpux-brokengcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::(unknown)::DES_PTR DES_UNROLL DES_RISC1:::",
242"hpux-brokengcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::(unknown):-ldld:DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
224
225# HPUX 10.X config. Supports threads.
243
244# HPUX 10.X config. Supports threads.
226"hpux10-cc", "cc:-DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY -Ae +ESlit +O3 -z::-D_REENTRANT::BN_LLONG DES_PTR DES_UNROLL DES_RISC1:::",
245"hpux10-cc", "cc:-DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY -Ae +ESlit +O3 -z::-D_REENTRANT:-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
227# If hpux10-cc fails, try this one (if still fails, try deleting BN_LLONG):
246# If hpux10-cc fails, try this one (if still fails, try deleting BN_LLONG):
228"hpux10-brokencc", "cc:-DB_ENDIAN -DBN_DIV2W -Ae +ESlit +O2 -z::-D_REENTRANT::BN_LLONG DES_PTR DES_UNROLL DES_RISC1:::",
247"hpux10-brokencc", "cc:-DB_ENDIAN -DBN_DIV2W -Ae +ESlit +O2 -z::-D_REENTRANT:-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
229
248
230"hpux10-gcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::-D_REENTRANT::BN_LLONG DES_PTR DES_UNROLL DES_RISC1:::",
249"hpux10-gcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::-D_REENTRANT:-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
231# If hpux10-gcc fails, try this one:
250# If hpux10-gcc fails, try this one:
232"hpux10-brokengcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::-D_REENTRANT::DES_PTR DES_UNROLL DES_RISC1:::",
251"hpux10-brokengcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::-D_REENTRANT:-ldld:DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
233
234# HPUX 11.X from www.globus.org.
235# Only works on PA-RISC 2.0 cpus, and not optimized. Why?
236#"hpux11-32bit-cc","cc:+DA2.0 -DB_ENDIAN -D_HPUX_SOURCE -Aa -Ae +ESlit::-D_REENTRANT::DES_PTR DES_UNROLL DES_RISC1:::",
237#"hpux11-64bit-cc","cc:+DA2.0W -g -D_HPUX_SOURCE -Aa -Ae +ESlit::-D_REENTRANT::SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT :::",
238# Use unified settings above instead.
239
252
253# HPUX 11.X from www.globus.org.
254# Only works on PA-RISC 2.0 cpus, and not optimized. Why?
255#"hpux11-32bit-cc","cc:+DA2.0 -DB_ENDIAN -D_HPUX_SOURCE -Aa -Ae +ESlit::-D_REENTRANT::DES_PTR DES_UNROLL DES_RISC1:::",
256#"hpux11-64bit-cc","cc:+DA2.0W -g -D_HPUX_SOURCE -Aa -Ae +ESlit::-D_REENTRANT::SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT :::",
257# Use unified settings above instead.
258
259#### HP MPE/iX http://jazz.external.hp.com/src/openssl/
260"MPE/iX-gcc", "gcc:-D_ENDIAN -DBN_DIV2W -O3 -DMPE -D_POSIX_SOURCE -D_SOCKET_SOURCE -I/SYSLOG/PUB::(unknown):-L/SYSLOG/PUB -lsyslog -lsocket -lcurses:BN_LLONG DES_PTR DES_UNROLL DES_RISC1:::",
261
240# Dec Alpha, OSF/1 - the alpha164-cc is the flags for a 21164A with
241# the new compiler
242# For gcc, the following gave a %50 speedup on a 164 over the 'DES_INT' version
262# Dec Alpha, OSF/1 - the alpha164-cc is the flags for a 21164A with
263# the new compiler
264# For gcc, the following gave a %50 speedup on a 164 over the 'DES_INT' version
243"alpha-gcc","gcc:-O3::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_UNROLL DES_RISC1:asm/alpha.o::",
244"alpha-cc", "cc:-std1 -tune host -O4 -readonly_strings::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK:asm/alpha.o::",
245"alpha164-cc", "cc:-std1 -tune host -fast -readonly_strings::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK:asm/alpha.o::",
246"FreeBSD-alpha","gcc:-DTERMIOS -O3 -fomit-frame-pointer::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC2:::",
265"alpha-gcc","gcc:-O3::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_UNROLL DES_RISC1:asm/alpha.o:::::::::dlfcn:true64-shared",
266"alpha-cc", "cc:-std1 -tune host -O4 -readonly_strings::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK:asm/alpha.o:::::::::dlfcn:true64-shared",
267"alpha164-cc", "cc:-std1 -tune host -fast -readonly_strings::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK:asm/alpha.o:::::::::dlfcn:true64-shared",
268"FreeBSD-alpha","gcc:-DTERMIOS -O -fomit-frame-pointer::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC2:::",
247
248#### Alpha Linux with GNU C and Compaq C setups
249# Special notes:
250# - linux-alpha+bwx-gcc is ment to be used from ./config only. If you
251# ought to run './Configure linux-alpha+bwx-gcc' manually, do
252# complement the command line with -mcpu=ev56, -mcpu=ev6 or whatever
253# which is appropriate.
254# - If you use ccc keep in mind that -fast implies -arch host and the
255# compiler is free to issue instructions which gonna make elder CPU
256# choke. If you wish to build "blended" toolkit, add -arch generic
257# *after* -fast and invoke './Configure linux-alpha-ccc' manually.
258#
259# <appro@fy.chalmers.se>
260#
269
270#### Alpha Linux with GNU C and Compaq C setups
271# Special notes:
272# - linux-alpha+bwx-gcc is ment to be used from ./config only. If you
273# ought to run './Configure linux-alpha+bwx-gcc' manually, do
274# complement the command line with -mcpu=ev56, -mcpu=ev6 or whatever
275# which is appropriate.
276# - If you use ccc keep in mind that -fast implies -arch host and the
277# compiler is free to issue instructions which gonna make elder CPU
278# choke. If you wish to build "blended" toolkit, add -arch generic
279# *after* -fast and invoke './Configure linux-alpha-ccc' manually.
280#
281# <appro@fy.chalmers.se>
282#
261"linux-alpha-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:asm/alpha.o::",
262"linux-alpha+bwx-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:asm/alpha.o::",
263"linux-alpha-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:asm/alpha.o::",
264"linux-alpha+bwx-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:asm/alpha.o::",
283"linux-alpha-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::-D_REENTRANT::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:asm/alpha.o::",
284"linux-alpha+bwx-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::-D_REENTRANT::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:asm/alpha.o::",
285"linux-alpha-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:asm/alpha.o::",
286"linux-alpha+bwx-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:asm/alpha.o::",
265
266# assembler versions -- currently defunct:
267##"OpenBSD-alpha","gcc:-DTERMIOS -O3 -fomit-frame-pointer::(unknown):SIXTY_FOUR_BIT_LONG DES_INT DES_PTR DES_RISC2:asm/alpha.o::",
268
269# The intel boxes :-), It would be worth seeing if bsdi-gcc can use the
270# bn86-elf.o file file since it is hand tweaked assembler.
287
288# assembler versions -- currently defunct:
289##"OpenBSD-alpha","gcc:-DTERMIOS -O3 -fomit-frame-pointer::(unknown):SIXTY_FOUR_BIT_LONG DES_INT DES_PTR DES_RISC2:asm/alpha.o::",
290
291# The intel boxes :-), It would be worth seeing if bsdi-gcc can use the
292# bn86-elf.o file file since it is hand tweaked assembler.
271"linux-elf", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -m486 -Wall::-D_REENTRANT::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
272"debug-linux-elf","gcc:-DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall::-D_REENTRANT:-lefence:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
293"linux-elf", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -m486 -Wall::-D_REENTRANT:-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC",
294"debug-linux-elf","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall::-D_REENTRANT:-lefence -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn",
295"debug-linux-elf-noefence","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall::-D_REENTRANT:-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn",
273"linux-aout", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}",
274"linux-mips", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::(unknown)::BN_LLONG:::",
275"linux-ppc", "gcc:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::",
296"linux-aout", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}",
297"linux-mips", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::(unknown)::BN_LLONG:::",
298"linux-ppc", "gcc:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::",
299"linux-m68k", "gcc:-DB_ENDIAN -DTERMIO -O2 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::",
276"linux-ia64", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::(unknown)::SIXTY_FOUR_BIT_LONG::",
277"NetBSD-sparc", "gcc:-DTERMIOS -O3 -fomit-frame-pointer -mv8 -Wall -DB_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL:::",
278"NetBSD-m68", "gcc:-DTERMIOS -O3 -fomit-frame-pointer -Wall -DB_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL:::",
279"NetBSD-x86", "gcc:-DTERMIOS -O3 -fomit-frame-pointer -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:",
280"FreeBSD-elf", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
281"FreeBSD", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}",
282"bsdi-gcc", "gcc:-O3 -ffast-math -DL_ENDIAN -DPERL5 -m486::(unknown)::RSA_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_bsdi_asm}",
283"bsdi-elf-gcc", "gcc:-DPERL5 -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
284"nextstep", "cc:-O -Wall:<libc.h>:(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::",
285"nextstep3.3", "cc:-O3 -Wall:<libc.h>:(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::",
286# NCR MP-RAS UNIX ver 02.03.01
287"ncr-scde","cc:-O6 -Xa -Hoff=BEHAVED -686 -Hwide -Hiw::(unknown):-lsocket -lnsl:${x86_gcc_des} ${x86_gcc_opts}:::",
288
300"linux-ia64", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::(unknown)::SIXTY_FOUR_BIT_LONG::",
301"NetBSD-sparc", "gcc:-DTERMIOS -O3 -fomit-frame-pointer -mv8 -Wall -DB_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL:::",
302"NetBSD-m68", "gcc:-DTERMIOS -O3 -fomit-frame-pointer -Wall -DB_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL:::",
303"NetBSD-x86", "gcc:-DTERMIOS -O3 -fomit-frame-pointer -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:",
304"FreeBSD-elf", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
305"FreeBSD", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}",
306"bsdi-gcc", "gcc:-O3 -ffast-math -DL_ENDIAN -DPERL5 -m486::(unknown)::RSA_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_bsdi_asm}",
307"bsdi-elf-gcc", "gcc:-DPERL5 -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
308"nextstep", "cc:-O -Wall:<libc.h>:(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::",
309"nextstep3.3", "cc:-O3 -Wall:<libc.h>:(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::",
310# NCR MP-RAS UNIX ver 02.03.01
311"ncr-scde","cc:-O6 -Xa -Hoff=BEHAVED -686 -Hwide -Hiw::(unknown):-lsocket -lnsl:${x86_gcc_des} ${x86_gcc_opts}:::",
312
313# QNX 4
314"qnx4", "cc:-DL_ENDIAN -DTERMIO::(unknown)::${x86_gcc_des} ${x86_gcc_opts}:",
315
316# Linux on ARM
317"linux-elf-arm","gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::::::::::dlfcn:linux-shared:-fPIC",
318
289# UnixWare 2.0
290"unixware-2.0","cc:-O -DFILIO_H::(unknown):-lsocket -lnsl:${x86_gcc_des} ${x86_gcc_opts}:::",
291"unixware-2.0-pentium","cc:-O -DFILIO_H -Kpentium -Kthread::(unknown):-lsocket -lnsl:MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
292
293# UnixWare 7
294"unixware-7","cc:-O -DFILIO_H -Kalloca::-Kthread:-lsocket -lnsl:MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
295
296# IBM's AIX.
319# UnixWare 2.0
320"unixware-2.0","cc:-O -DFILIO_H::(unknown):-lsocket -lnsl:${x86_gcc_des} ${x86_gcc_opts}:::",
321"unixware-2.0-pentium","cc:-O -DFILIO_H -Kpentium -Kthread::(unknown):-lsocket -lnsl:MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
322
323# UnixWare 7
324"unixware-7","cc:-O -DFILIO_H -Kalloca::-Kthread:-lsocket -lnsl:MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
325
326# IBM's AIX.
297"aix-cc", "cc:-O -DAIX -DB_ENDIAN::(unknown)::BN_LLONG RC4_CHAR:::",
327"aix-cc", "cc:-O -DAIX -DB_ENDIAN -qmaxmem=16384::(unknown)::BN_LLONG RC4_CHAR:::",
298"aix-gcc", "gcc:-O3 -DAIX -DB_ENDIAN::(unknown)::BN_LLONG RC4_CHAR:::",
299
300#
301# Cray T90 (SDSC)
302# It's Big-endian, but the algorithms work properly when B_ENDIAN is NOT
303# defined. The T90 ints and longs are 8 bytes long, and apparently the
304# B_ENDIAN code assumes 4 byte ints. Fortunately, the non-B_ENDIAN and
305# non L_ENDIAN code aligns the bytes in each word correctly.

--- 30 unchanged lines hidden (view full) ---

336"SINIX","cc:-O -DSNI::(unknown):-lsocket -lnsl -lc -L/usr/ucblib -lucb:RC4_INDEX RC4_CHAR:::",
337"SINIX-N","/usr/ucb/cc:-O2 -misaligned::(unknown):-lucb:RC4_INDEX RC4_CHAR:::",
338
339# SIEMENS BS2000/OSD: an EBCDIC-based mainframe
340"BS2000-OSD","c89:-O -XLLML -XLLMK -XL -DB_ENDIAN -DTERMIOS -DCHARSET_EBCDIC::(unknown):-lsocket -lnsl:THIRTY_TWO_BIT DES_PTR DES_UNROLL MD2_CHAR RC4_INDEX RC4_CHAR BF_PTR:::",
341
342# Windows NT, Microsoft Visual C++ 4.0
343
328"aix-gcc", "gcc:-O3 -DAIX -DB_ENDIAN::(unknown)::BN_LLONG RC4_CHAR:::",
329
330#
331# Cray T90 (SDSC)
332# It's Big-endian, but the algorithms work properly when B_ENDIAN is NOT
333# defined. The T90 ints and longs are 8 bytes long, and apparently the
334# B_ENDIAN code assumes 4 byte ints. Fortunately, the non-B_ENDIAN and
335# non L_ENDIAN code aligns the bytes in each word correctly.

--- 30 unchanged lines hidden (view full) ---

366"SINIX","cc:-O -DSNI::(unknown):-lsocket -lnsl -lc -L/usr/ucblib -lucb:RC4_INDEX RC4_CHAR:::",
367"SINIX-N","/usr/ucb/cc:-O2 -misaligned::(unknown):-lucb:RC4_INDEX RC4_CHAR:::",
368
369# SIEMENS BS2000/OSD: an EBCDIC-based mainframe
370"BS2000-OSD","c89:-O -XLLML -XLLMK -XL -DB_ENDIAN -DTERMIOS -DCHARSET_EBCDIC::(unknown):-lsocket -lnsl:THIRTY_TWO_BIT DES_PTR DES_UNROLL MD2_CHAR RC4_INDEX RC4_CHAR BF_PTR:::",
371
372# Windows NT, Microsoft Visual C++ 4.0
373
344"VC-NT","cl:::::BN_LLONG RC4_INDEX ${x86_gcc_opts}:::",
345"VC-WIN32","cl:::::BN_LLONG RC4_INDEX ${x86_gcc_opts}:::",
374"VC-NT","cl:::::BN_LLONG RC4_INDEX ${x86_gcc_opts}::::::::::win32",
375"VC-WIN32","cl:::::BN_LLONG RC4_INDEX ${x86_gcc_opts}::::::::::win32",
346"VC-WIN16","cl:::(unknown)::MD2_CHAR DES_UNROLL DES_PTR RC4_INDEX THIRTY_TWO_BIT:::",
347"VC-W31-16","cl:::(unknown)::BN_LLONG MD2_CHAR DES_UNROLL DES_PTR RC4_INDEX SIXTEEN_BIT:::",
348"VC-W31-32","cl:::::BN_LLONG MD2_CHAR DES_UNROLL DES_PTR RC4_INDEX THIRTY_TWO_BIT:::",
349"VC-MSDOS","cl:::(unknown)::BN_LLONG MD2_CHAR DES_UNROLL DES_PTR RC4_INDEX SIXTEEN_BIT:::",
350
351# Borland C++ 4.5
376"VC-WIN16","cl:::(unknown)::MD2_CHAR DES_UNROLL DES_PTR RC4_INDEX THIRTY_TWO_BIT:::",
377"VC-W31-16","cl:::(unknown)::BN_LLONG MD2_CHAR DES_UNROLL DES_PTR RC4_INDEX SIXTEEN_BIT:::",
378"VC-W31-32","cl:::::BN_LLONG MD2_CHAR DES_UNROLL DES_PTR RC4_INDEX THIRTY_TWO_BIT:::",
379"VC-MSDOS","cl:::(unknown)::BN_LLONG MD2_CHAR DES_UNROLL DES_PTR RC4_INDEX SIXTEEN_BIT:::",
380
381# Borland C++ 4.5
352"BC-32","bcc32:::::BN_LLONG DES_PTR RC4_INDEX:::",
382"BC-32","bcc32:::::BN_LLONG DES_PTR RC4_INDEX::::::::::win32",
353"BC-16","bcc:::(unknown)::BN_LLONG DES_PTR RC4_INDEX SIXTEEN_BIT:::",
354
383"BC-16","bcc:::(unknown)::BN_LLONG DES_PTR RC4_INDEX SIXTEEN_BIT:::",
384
355# CygWin32
385# Mingw32
356# (Note: the real CFLAGS for Windows builds are defined by util/mk1mf.pl
357# and its library files in util/pl/*)
386# (Note: the real CFLAGS for Windows builds are defined by util/mk1mf.pl
387# and its library files in util/pl/*)
358"CygWin32", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:",
359"Mingw32", "gcc:-DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:",
388"Mingw32", "gcc:-DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::win32",
360
389
390# CygWin32
391"CygWin32", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::win32",
392
361# Ultrix from Bernhard Simon <simon@zid.tuwien.ac.at>
362"ultrix-cc","cc:-std1 -O -Olimit 1000 -DL_ENDIAN::(unknown)::::::",
363"ultrix-gcc","gcc:-O3 -DL_ENDIAN::(unknown)::::::",
364# K&R C is no longer supported; you need gcc on old Ultrix installations
365##"ultrix","cc:-O2 -DNOPROTO -DNOCONST -DL_ENDIAN::(unknown)::::::",
366
367# Some OpenBSD from Bob Beck <beck@obtuse.com>
368"OpenBSD-alpha","gcc:-DTERMIOS -O3 -fomit-frame-pointer::(unknown)::SIXTY_FOUR_BIT_LONG DES_INT DES_PTR DES_RISC2:::",
393# Ultrix from Bernhard Simon <simon@zid.tuwien.ac.at>
394"ultrix-cc","cc:-std1 -O -Olimit 1000 -DL_ENDIAN::(unknown)::::::",
395"ultrix-gcc","gcc:-O3 -DL_ENDIAN::(unknown)::::::",
396# K&R C is no longer supported; you need gcc on old Ultrix installations
397##"ultrix","cc:-O2 -DNOPROTO -DNOCONST -DL_ENDIAN::(unknown)::::::",
398
399# Some OpenBSD from Bob Beck <beck@obtuse.com>
400"OpenBSD-alpha","gcc:-DTERMIOS -O3 -fomit-frame-pointer::(unknown)::SIXTY_FOUR_BIT_LONG DES_INT DES_PTR DES_RISC2:::",
369"OpenBSD-x86", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -m486::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}",
401"OpenBSD-x86", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -m486::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}:dlfcn",
370"OpenBSD", "gcc:-DTERMIOS -O3 -fomit-frame-pointer::(unknown)::BN_LLONG RC2_CHAR RC4_INDEX DES_UNROLL:::",
371"OpenBSD-mips","gcc:-O2 -DL_ENDIAN::(unknown):BN_LLONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC2 DES_PTR BF_PTR::::",
372
373##### MacOS X (a.k.a. Rhapsody) setup
374"rhapsody-ppc-cc","cc:-O3 -DB_ENDIAN::(unknown)::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:::",
375
402"OpenBSD", "gcc:-DTERMIOS -O3 -fomit-frame-pointer::(unknown)::BN_LLONG RC2_CHAR RC4_INDEX DES_UNROLL:::",
403"OpenBSD-mips","gcc:-O2 -DL_ENDIAN::(unknown):BN_LLONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC2 DES_PTR BF_PTR::::",
404
405##### MacOS X (a.k.a. Rhapsody) setup
406"rhapsody-ppc-cc","cc:-O3 -DB_ENDIAN::(unknown)::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:::",
407
408##### Sony NEWS-OS 4.x
409"newsos4-gcc","gcc:-O -DB_ENDIAN -DNEWS4::(unknown):-lmld -liberty:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::",
410
376);
377
378my @WinTargets=qw(VC-NT VC-WIN32 VC-WIN16 VC-W31-16 VC-W31-32 VC-MSDOS BC-32
411);
412
413my @WinTargets=qw(VC-NT VC-WIN32 VC-WIN16 VC-W31-16 VC-W31-32 VC-MSDOS BC-32
379 BC-16 CygWin32 Mingw32);
414 BC-16 Mingw32);
380
381my $prefix="";
382my $openssldir="";
383my $install_prefix="";
384my $no_threads=0;
415
416my $prefix="";
417my $openssldir="";
418my $install_prefix="";
419my $no_threads=0;
420my $no_shared=1;
385my $threads=0;
386my $no_asm=0;
421my $threads=0;
422my $no_asm=0;
423my $no_dso=0;
387my @skip=();
388my $Makefile="Makefile.ssl";
389my $des_locl="crypto/des/des_locl.h";
390my $des ="crypto/des/des.h";
391my $bn ="crypto/bn/bn.h";
392my $md2 ="crypto/md2/md2.h";
393my $rc4 ="crypto/rc4/rc4.h";
394my $rc4_locl="crypto/rc4/rc4_locl.h";

--- 14 unchanged lines hidden (view full) ---

409my $perl;
410
411$ranlib=&which("ranlib") or $ranlib="true";
412$perl=$ENV{'PERL'} or $perl=&which("perl5") or $perl=&which("perl")
413 or $perl="perl";
414
415&usage if ($#ARGV < 0);
416
424my @skip=();
425my $Makefile="Makefile.ssl";
426my $des_locl="crypto/des/des_locl.h";
427my $des ="crypto/des/des.h";
428my $bn ="crypto/bn/bn.h";
429my $md2 ="crypto/md2/md2.h";
430my $rc4 ="crypto/rc4/rc4.h";
431my $rc4_locl="crypto/rc4/rc4_locl.h";

--- 14 unchanged lines hidden (view full) ---

446my $perl;
447
448$ranlib=&which("ranlib") or $ranlib="true";
449$perl=$ENV{'PERL'} or $perl=&which("perl5") or $perl=&which("perl")
450 or $perl="perl";
451
452&usage if ($#ARGV < 0);
453
417my $flags="";
418my $depflags="";
419my $openssl_algorithm_defines="";
420my $openssl_thread_defines="";
421my $openssl_other_defines="";
422my $libs="";
423my $target="";
424my $options="";
425foreach (@ARGV)
454my $flags;
455my $depflags;
456my $openssl_algorithm_defines;
457my $openssl_thread_defines;
458my $openssl_other_defines;
459my $libs;
460my $target;
461my $options;
462my $symlink;
463
464my @argvcopy=@ARGV;
465my $argvstring="";
466my $argv_unprocessed=1;
467
468while($argv_unprocessed)
426 {
469 {
427 s /^-no-/no-/; # some people just can't read the instructions
428 if (/^no-asm$/)
429 {
430 $no_asm=1;
431 $flags .= "-DNO_ASM ";
432 $openssl_other_defines .= "#define NO_ASM\n";
433 }
434 elsif (/^no-threads$/)
435 { $no_threads=1; }
436 elsif (/^threads$/)
437 { $threads=1; }
438 elsif (/^no-(.+)$/)
470 $flags="";
471 $depflags="";
472 $openssl_algorithm_defines="";
473 $openssl_thread_defines="";
474 $openssl_other_defines="";
475 $libs="";
476 $target="";
477 $options="";
478 $symlink=1;
479
480 $argv_unprocessed=0;
481 $argvstring=join(' ',@argvcopy);
482
483PROCESS_ARGS:
484 foreach (@argvcopy)
439 {
485 {
440 my $algo=$1;
441 push @skip,$algo;
442 $algo =~ tr/[a-z]/[A-Z]/;
443 $flags .= "-DNO_$algo ";
444 $depflags .= "-DNO_$algo ";
445 $openssl_algorithm_defines .= "#define NO_$algo\n";
446 if ($algo eq "DES")
447 {
448 push @skip, "mdc2";
449 $options .= " no-mdc2";
450 $flags .= "-DNO_MDC2 ";
451 $depflags .= "-DNO_MDC2 ";
452 $openssl_algorithm_defines .= "#define NO_MDC2\n";
486 s /^-no-/no-/; # some people just can't read the instructions
487 if (/^no-asm$/)
488 {
489 $no_asm=1;
490 $flags .= "-DNO_ASM ";
491 $openssl_other_defines .= "#define NO_ASM\n";
453 }
492 }
454 }
455 elsif (/^386$/)
456 { $processor=386; }
457 elsif (/^rsaref$/)
458 {
459 $libs.= "-lRSAglue -lrsaref ";
460 $flags.= "-DRSAref ";
461 $openssl_other_defines .= "#define RSAref\n";
462 }
463 elsif (/^[-+]/)
464 {
465 if (/^-[lL](.*)$/)
493 elsif (/^no-dso$/)
494 { $no_dso=1; }
495 elsif (/^no-threads$/)
496 { $no_threads=1; }
497 elsif (/^threads$/)
498 { $threads=1; }
499 elsif (/^no-shared$/)
500 { $no_shared=1; }
501 elsif (/^shared$/)
502 { $no_shared=0; }
503 elsif (/^no-symlinks$/)
504 { $symlink=0; }
505 elsif (/^no-(.+)$/)
466 {
506 {
467 $libs.=$_." ";
507 my $algo=$1;
508 push @skip,$algo;
509 $algo =~ tr/[a-z]/[A-Z]/;
510 $flags .= "-DNO_$algo ";
511 $depflags .= "-DNO_$algo ";
512 $openssl_algorithm_defines .= "#define NO_$algo\n";
513 if ($algo eq "DES")
514 {
515 push @skip, "mdc2";
516 $options .= " no-mdc2";
517 $flags .= "-DNO_MDC2 ";
518 $depflags .= "-DNO_MDC2 ";
519 $openssl_algorithm_defines .= "#define NO_MDC2\n";
520 }
468 }
521 }
469 elsif (/^-[^-]/ or /^\+/)
522 elsif (/^reconfigure/ || /^reconf/)
470 {
523 {
471 $flags.=$_." ";
524 if (open(IN,"<$Makefile"))
525 {
526 while (<IN>)
527 {
528 chop;
529 if (/^CONFIGURE_ARGS=(.*)/)
530 {
531 $argvstring=$1;
532 @argvcopy=split(' ',$argvstring);
533 die "Incorrect data to reconfigure, please do a normal configuration\n"
534 if (grep(/^reconf/,@argvcopy));
535 print "Reconfiguring with: $argvstring\n";
536 $argv_unprocessed=1;
537 close(IN);
538 last PROCESS_ARGS;
539 }
540 }
541 close(IN);
542 }
543 die "Insufficient data to reconfigure, please do a normal configuration\n";
472 }
544 }
473 elsif (/^--prefix=(.*)$/)
545 elsif (/^386$/)
546 { $processor=386; }
547 elsif (/^rsaref$/)
474 {
548 {
475 $prefix=$1;
549 $libs.= "-lRSAglue -lrsaref ";
550 $flags.= "-DRSAref ";
551 $openssl_other_defines .= "#define RSAref\n";
476 }
552 }
477 elsif (/^--openssldir=(.*)$/)
553 elsif (/^[-+]/)
478 {
554 {
479 $openssldir=$1;
555 if (/^-[lL](.*)$/)
556 {
557 $libs.=$_." ";
558 }
559 elsif (/^-[^-]/ or /^\+/)
560 {
561 $flags.=$_." ";
562 }
563 elsif (/^--prefix=(.*)$/)
564 {
565 $prefix=$1;
566 }
567 elsif (/^--openssldir=(.*)$/)
568 {
569 $openssldir=$1;
570 }
571 elsif (/^--install.prefix=(.*)$/)
572 {
573 $install_prefix=$1;
574 }
575 else
576 {
577 print STDERR $usage;
578 exit(1);
579 }
480 }
580 }
481 elsif (/^--install.prefix=(.*)$/)
581 elsif ($_ =~ /^([^:]+):(.+)$/)
482 {
582 {
483 $install_prefix=$1;
583 eval "\$table{\$1} = \"$2\""; # allow $xxx constructs in the string
584 $target=$1;
484 }
485 else
486 {
585 }
586 else
587 {
487 print STDERR $usage;
488 exit(1);
588 die "target already defined - $target\n" if ($target ne "");
589 $target=$_;
489 }
590 }
591 unless ($_ eq $target) {
592 if ($options eq "") {
593 $options = $_;
594 } else {
595 $options .= " ".$_;
596 }
490 }
597 }
491 elsif ($_ =~ /^([^:]+):(.+)$/)
492 {
493 eval "\$table{\$1} = \"$2\""; # allow $xxx constructs in the string
494 $target=$1;
495 }
496 else
497 {
498 die "target already defined - $target\n" if ($target ne "");
499 $target=$_;
500 }
501 unless ($_ eq $target) {
502 if ($options eq "") {
503 $options = $_;
504 } else {
505 $options .= " ".$_;
506 }
507 }
508}
509
510if ($target eq "TABLE") {
511 foreach $target (sort keys %table) {
512 print_table_entry($target);
513 }
514 exit 0;
515}
516
517if ($target eq "LIST") {
518 foreach (sort keys %table) {
519 print;
520 print "\n";
521 }
522 exit 0;
523}
524
598 }
599}
600
601if ($target eq "TABLE") {
602 foreach $target (sort keys %table) {
603 print_table_entry($target);
604 }
605 exit 0;
606}
607
608if ($target eq "LIST") {
609 foreach (sort keys %table) {
610 print;
611 print "\n";
612 }
613 exit 0;
614}
615
616print "Configuring for $target\n";
617
525&usage if (!defined($table{$target}));
526
527my $IsWindows=scalar grep /^$target$/,@WinTargets;
528
529$openssldir="/usr/local/ssl" if ($openssldir eq "" and $prefix eq "");
530$prefix=$openssldir if $prefix eq "";
531
532chop $openssldir if $openssldir =~ /\/$/;
533chop $prefix if $prefix =~ /\/$/;
534
535$openssldir=$prefix . "/ssl" if $openssldir eq "";
536$openssldir=$prefix . "/" . $openssldir if $openssldir !~ /^\//;
537
538
539print "IsWindows=$IsWindows\n";
540
541(my $cc,my $cflags,my $unistd,my $thread_cflag,my $lflags,my $bn_ops,my $bn_obj,my $des_obj,my $bf_obj,
618&usage if (!defined($table{$target}));
619
620my $IsWindows=scalar grep /^$target$/,@WinTargets;
621
622$openssldir="/usr/local/ssl" if ($openssldir eq "" and $prefix eq "");
623$prefix=$openssldir if $prefix eq "";
624
625chop $openssldir if $openssldir =~ /\/$/;
626chop $prefix if $prefix =~ /\/$/;
627
628$openssldir=$prefix . "/ssl" if $openssldir eq "";
629$openssldir=$prefix . "/" . $openssldir if $openssldir !~ /^\//;
630
631
632print "IsWindows=$IsWindows\n";
633
634(my $cc,my $cflags,my $unistd,my $thread_cflag,my $lflags,my $bn_ops,my $bn_obj,my $des_obj,my $bf_obj,
542 $md5_obj,$sha1_obj,my $cast_obj,my $rc4_obj,$rmd160_obj,my $rc5_obj)=
543 split(/\s*:\s*/,$table{$target} . ":" x 20 , -1);
635 $md5_obj,$sha1_obj,my $cast_obj,my $rc4_obj,$rmd160_obj,my $rc5_obj,my $dso_scheme,my $shared_target,my $shared_cflag)=
636 split(/\s*:\s*/,$table{$target} . ":" x 22 , -1);
544$cflags="$flags$cflags" if ($flags ne "");
545
637$cflags="$flags$cflags" if ($flags ne "");
638
639# The DSO code currently always implements all functions so that no
640# applications will have to worry about that from a compilation point
641# of view. However, the "method"s may return zero unless that platform
642# has support compiled in for them. Currently each method is enabled
643# by a define "DSO_<name>" ... we translate the "dso_scheme" config
644# string entry into using the following logic;
645my $dso_cflags;
646if (!$no_dso && $dso_scheme ne "")
647 {
648 $dso_scheme =~ tr/[a-z]/[A-Z]/;
649 if ($dso_scheme eq "DLFCN")
650 {
651 $dso_cflags = "-DDSO_DLFCN -DHAVE_DLFCN_H";
652 $openssl_other_defines .= "#define DSO_DLFCN\n";
653 $openssl_other_defines .= "#define HAVE_DLFCN_H\n";
654 }
655 elsif ($dso_scheme eq "DLFCN_NO_H")
656 {
657 $dso_cflags = "-DDSO_DLFCN";
658 $openssl_other_defines .= "#define DSO_DLFCN\n";
659 }
660 else
661 {
662 $dso_cflags = "-DDSO_$dso_scheme";
663 $openssl_other_defines .= "#define DSO_$dso_scheme\n";
664 }
665 $cflags = "$dso_cflags $cflags";
666 }
667
546my $thread_cflags;
547my $thread_defines;
548if ($thread_cflag ne "(unknown)" && !$no_threads)
549 {
550 # If we know how to do it, support threads by default.
551 $threads = 1;
552 }
553if ($thread_cflag eq "(unknown)")

--- 26 unchanged lines hidden (view full) ---

580 }
581
582if ($threads)
583 {
584 $cflags=$thread_cflags;
585 $openssl_thread_defines .= $thread_defines;
586 }
587
668my $thread_cflags;
669my $thread_defines;
670if ($thread_cflag ne "(unknown)" && !$no_threads)
671 {
672 # If we know how to do it, support threads by default.
673 $threads = 1;
674 }
675if ($thread_cflag eq "(unknown)")

--- 26 unchanged lines hidden (view full) ---

702 }
703
704if ($threads)
705 {
706 $cflags=$thread_cflags;
707 $openssl_thread_defines .= $thread_defines;
708 }
709
710# You will find shlib_mark1 and shlib_mark2 explained in Makefile.org
711my $shared_mark1 = "";
712my $shared_mark2 = "";
713if ($shared_cflag ne "")
714 {
715 $cflags = "$shared_cflag $cflags";
716 if (!$no_shared)
717 {
718 $shared_mark1 = ".shlib-clean.";
719 $shared_mark2 = ".shlib.";
720 }
721 }
722
588#my ($bn1)=split(/\s+/,$bn_obj);
589#$bn1 = "" unless defined $bn1;
590#$bn1=$bn_asm unless ($bn1 =~ /\.o$/);
591#$bn_obj="$bn1";
592
593$bn_obj = $bn_asm unless $bn_obj ne "";
594
595$des_obj=$des_enc unless ($des_obj =~ /\.o$/);

--- 15 unchanged lines hidden (view full) ---

611 {
612# $rmd160_obj=$rmd160_enc;
613 $cflags.=" -DRMD160_ASM";
614 }
615
616my $version = "unknown";
617my $major = "unknown";
618my $minor = "unknown";
723#my ($bn1)=split(/\s+/,$bn_obj);
724#$bn1 = "" unless defined $bn1;
725#$bn1=$bn_asm unless ($bn1 =~ /\.o$/);
726#$bn_obj="$bn1";
727
728$bn_obj = $bn_asm unless $bn_obj ne "";
729
730$des_obj=$des_enc unless ($des_obj =~ /\.o$/);

--- 15 unchanged lines hidden (view full) ---

746 {
747# $rmd160_obj=$rmd160_enc;
748 $cflags.=" -DRMD160_ASM";
749 }
750
751my $version = "unknown";
752my $major = "unknown";
753my $minor = "unknown";
754my $shlib_version_number = "unknown";
755my $shlib_version_history = "unknown";
756my $shlib_major = "unknown";
757my $shlib_minor = "unknown";
619
620open(IN,'<crypto/opensslv.h') || die "unable to read opensslv.h:$!\n";
621while (<IN>)
622 {
623 $version=$1 if /OPENSSL.VERSION.TEXT.*OpenSSL (\S+) /;
758
759open(IN,'<crypto/opensslv.h') || die "unable to read opensslv.h:$!\n";
760while (<IN>)
761 {
762 $version=$1 if /OPENSSL.VERSION.TEXT.*OpenSSL (\S+) /;
763 $shlib_version_number=$1 if /SHLIB_VERSION_NUMBER *"([^"]+)"/;
764 $shlib_version_history=$1 if /SHLIB_VERSION_HISTORY *"([^"]*)"/;
624 }
625close(IN);
765 }
766close(IN);
767if ($shlib_version_history ne "") { $shlib_version_history .= ":"; }
626
627if ($version =~ /(^[0-9]*)\.([0-9\.]*)/)
628 {
629 $major=$1;
630 $minor=$2;
631 }
632
768
769if ($version =~ /(^[0-9]*)\.([0-9\.]*)/)
770 {
771 $major=$1;
772 $minor=$2;
773 }
774
775if ($shlib_version_number =~ /(^[0-9]*)\.([0-9\.]*)/)
776 {
777 $shlib_major=$1;
778 $shlib_minor=$2;
779 }
780
633open(IN,'<Makefile.org') || die "unable to read Makefile.org:$!\n";
634open(OUT,">$Makefile") || die "unable to create $Makefile:$!\n";
635print OUT "### Generated automatically from Makefile.org by Configure.\n\n";
636my $sdirs=0;
637while (<IN>)
638 {
639 chop;
640 $sdirs = 1 if /^SDIRS=/;
641 if ($sdirs) {
642 my $dir;
643 foreach $dir (@skip) {
644 s/$dir//;
645 }
646 }
647 $sdirs = 0 unless /\\$/;
648 s/^VERSION=.*/VERSION=$version/;
649 s/^MAJOR=.*/MAJOR=$major/;
650 s/^MINOR=.*/MINOR=$minor/;
781open(IN,'<Makefile.org') || die "unable to read Makefile.org:$!\n";
782open(OUT,">$Makefile") || die "unable to create $Makefile:$!\n";
783print OUT "### Generated automatically from Makefile.org by Configure.\n\n";
784my $sdirs=0;
785while (<IN>)
786 {
787 chop;
788 $sdirs = 1 if /^SDIRS=/;
789 if ($sdirs) {
790 my $dir;
791 foreach $dir (@skip) {
792 s/$dir//;
793 }
794 }
795 $sdirs = 0 unless /\\$/;
796 s/^VERSION=.*/VERSION=$version/;
797 s/^MAJOR=.*/MAJOR=$major/;
798 s/^MINOR=.*/MINOR=$minor/;
799 s/^SHLIB_VERSION_NUMBER=.*/SHLIB_VERSION_NUMBER=$shlib_version_number/;
800 s/^SHLIB_VERSION_HISTORY=.*/SHLIB_VERSION_HISTORY=$shlib_version_history/;
801 s/^SHLIB_MAJOR=.*/SHLIB_MAJOR=$shlib_major/;
802 s/^SHLIB_MINOR=.*/SHLIB_MINOR=$shlib_minor/;
651 s/^INSTALLTOP=.*$/INSTALLTOP=$prefix/;
652 s/^OPENSSLDIR=.*$/OPENSSLDIR=$openssldir/;
653 s/^INSTALL_PREFIX=.*$/INSTALL_PREFIX=$install_prefix/;
654 s/^PLATFORM=.*$/PLATFORM=$target/;
655 s/^OPTIONS=.*$/OPTIONS=$options/;
803 s/^INSTALLTOP=.*$/INSTALLTOP=$prefix/;
804 s/^OPENSSLDIR=.*$/OPENSSLDIR=$openssldir/;
805 s/^INSTALL_PREFIX=.*$/INSTALL_PREFIX=$install_prefix/;
806 s/^PLATFORM=.*$/PLATFORM=$target/;
807 s/^OPTIONS=.*$/OPTIONS=$options/;
808 s/^CONFIGURE_ARGS=.*$/CONFIGURE_ARGS=$argvstring/;
656 s/^CC=.*$/CC= $cc/;
657 s/^CFLAG=.*$/CFLAG= $cflags/;
658 s/^DEPFLAG=.*$/DEPFLAG= $depflags/;
659 s/^EX_LIBS=.*$/EX_LIBS= $lflags/;
660 s/^BN_ASM=.*$/BN_ASM= $bn_obj/;
661 s/^DES_ENC=.*$/DES_ENC= $des_obj/;
662 s/^BF_ENC=.*$/BF_ENC= $bf_obj/;
663 s/^CAST_ENC=.*$/CAST_ENC= $cast_obj/;
664 s/^RC4_ENC=.*$/RC4_ENC= $rc4_obj/;
665 s/^RC5_ENC=.*$/RC5_ENC= $rc5_obj/;
666 s/^MD5_ASM_OBJ=.*$/MD5_ASM_OBJ= $md5_obj/;
667 s/^SHA1_ASM_OBJ=.*$/SHA1_ASM_OBJ= $sha1_obj/;
668 s/^RMD160_ASM_OBJ=.*$/RMD160_ASM_OBJ= $rmd160_obj/;
669 s/^PROCESSOR=.*/PROCESSOR= $processor/;
670 s/^RANLIB=.*/RANLIB= $ranlib/;
671 s/^PERL=.*/PERL= $perl/;
809 s/^CC=.*$/CC= $cc/;
810 s/^CFLAG=.*$/CFLAG= $cflags/;
811 s/^DEPFLAG=.*$/DEPFLAG= $depflags/;
812 s/^EX_LIBS=.*$/EX_LIBS= $lflags/;
813 s/^BN_ASM=.*$/BN_ASM= $bn_obj/;
814 s/^DES_ENC=.*$/DES_ENC= $des_obj/;
815 s/^BF_ENC=.*$/BF_ENC= $bf_obj/;
816 s/^CAST_ENC=.*$/CAST_ENC= $cast_obj/;
817 s/^RC4_ENC=.*$/RC4_ENC= $rc4_obj/;
818 s/^RC5_ENC=.*$/RC5_ENC= $rc5_obj/;
819 s/^MD5_ASM_OBJ=.*$/MD5_ASM_OBJ= $md5_obj/;
820 s/^SHA1_ASM_OBJ=.*$/SHA1_ASM_OBJ= $sha1_obj/;
821 s/^RMD160_ASM_OBJ=.*$/RMD160_ASM_OBJ= $rmd160_obj/;
822 s/^PROCESSOR=.*/PROCESSOR= $processor/;
823 s/^RANLIB=.*/RANLIB= $ranlib/;
824 s/^PERL=.*/PERL= $perl/;
825 s/^SHLIB_TARGET=.*/SHLIB_TARGET=$shared_target/;
826 s/^SHLIB_MARK1=.*/SHLIB_MARK1=$shared_mark1/;
827 s/^SHLIB_MARK2=.*/SHLIB_MARK2=$shared_mark2/;
828 s/^LIBS=.*/LIBS=libcrypto\.so\* libssl\.so\*/ if (!$no_shared);
672 print OUT $_."\n";
673 }
674close(IN);
675close(OUT);
676
677print "CC =$cc\n";
678print "CFLAG =$cflags\n";
679print "EX_LIBS =$lflags\n";

--- 166 unchanged lines hidden (view full) ---

846 * for Unix builds, crypto/Makefile.ssl generates functional definitions;
847 * Windows builds (and other mk1mf builds) compile cversion.c with
848 * -DMK1MF_BUILD and use definitions added to this file by util/mk1mf.pl. */
849 #error "Windows builds (PLATFORM=$target) use mk1mf.pl-created Makefiles"
850#endif
851EOF
852 close(OUT);
853} else {
829 print OUT $_."\n";
830 }
831close(IN);
832close(OUT);
833
834print "CC =$cc\n";
835print "CFLAG =$cflags\n";
836print "EX_LIBS =$lflags\n";

--- 166 unchanged lines hidden (view full) ---

1003 * for Unix builds, crypto/Makefile.ssl generates functional definitions;
1004 * Windows builds (and other mk1mf builds) compile cversion.c with
1005 * -DMK1MF_BUILD and use definitions added to this file by util/mk1mf.pl. */
1006 #error "Windows builds (PLATFORM=$target) use mk1mf.pl-created Makefiles"
1007#endif
1008EOF
1009 close(OUT);
1010} else {
854 (system "make -f Makefile.ssl PERL=\'$perl\' links") == 0 or exit $?;
1011 (system "make -f Makefile.ssl PERL=\'$perl\' links") == 0 or exit $?
1012 if $symlink;
855 ### (system 'make depend') == 0 or exit $? if $depflags ne "";
856 # Run "make depend" manually if you want to be able to delete
857 # the source code files of ciphers you left out.
1013 ### (system 'make depend') == 0 or exit $? if $depflags ne "";
1014 # Run "make depend" manually if you want to be able to delete
1015 # the source code files of ciphers you left out.
858 &dofile("tools/c_rehash",$openssldir,'^DIR=', 'DIR=%s',);
859 if ( $perl =~ m@^/@) {
1016 if ( $perl =~ m@^/@) {
1017 &dofile("tools/c_rehash",$perl,'^#!/', '#!%s','^my \$dir;$', 'my $dir = "' . $openssldir . '";');
860 &dofile("apps/der_chop",$perl,'^#!/', '#!%s');
861 &dofile("apps/CA.pl",$perl,'^#!/', '#!%s');
862 } else {
863 # No path for Perl known ...
1018 &dofile("apps/der_chop",$perl,'^#!/', '#!%s');
1019 &dofile("apps/CA.pl",$perl,'^#!/', '#!%s');
1020 } else {
1021 # No path for Perl known ...
1022 &dofile("tools/c_rehash",'/usr/local/bin/perl','^#!/', '#!%s','^my \$dir;$', 'my $dir = "' . $openssldir . '";');
864 &dofile("apps/der_chop",'/usr/local/bin/perl','^#!/', '#!%s');
865 &dofile("apps/CA.pl",'/usr/local/bin/perl','^#!/', '#!%s');
866 }
867}
868
869print <<EOF;
870
871Configured for $target.

--- 75 unchanged lines hidden (view full) ---

947 }
948
949sub print_table_entry
950 {
951 my $target = shift;
952
953 (my $cc,my $cflags,my $unistd,my $thread_cflag,my $lflags,my $bn_ops,
954 my $bn_obj,my $des_obj,my $bf_obj,
1023 &dofile("apps/der_chop",'/usr/local/bin/perl','^#!/', '#!%s');
1024 &dofile("apps/CA.pl",'/usr/local/bin/perl','^#!/', '#!%s');
1025 }
1026}
1027
1028print <<EOF;
1029
1030Configured for $target.

--- 75 unchanged lines hidden (view full) ---

1106 }
1107
1108sub print_table_entry
1109 {
1110 my $target = shift;
1111
1112 (my $cc,my $cflags,my $unistd,my $thread_cflag,my $lflags,my $bn_ops,
1113 my $bn_obj,my $des_obj,my $bf_obj,
955 $md5_obj,$sha1_obj,my $cast_obj,my $rc4_obj,$rmd160_obj,my $rc5_obj)=
956 split(/\s*:\s*/,$table{$target} . ":" x 20 , -1);
1114 my $md5_obj,my $sha1_obj,my $cast_obj,my $rc4_obj,my $rmd160_obj,
1115 my $rc5_obj,my $dso_scheme,my $shared_target,my $shared_cflag)=
1116 split(/\s*:\s*/,$table{$target} . ":" x 22 , -1);
957
958 print <<EOF
959
960*** $target
961\$cc = $cc
962\$cflags = $cflags
963\$unistd = $unistd
964\$thread_cflag = $thread_cflag
965\$lflags = $lflags
966\$bn_ops = $bn_ops
967\$bn_obj = $bn_obj
968\$des_obj = $des_obj
969\$bf_obj = $bf_obj
970\$md5_obj = $md5_obj
971\$sha1_obj = $sha1_obj
972\$cast_obj = $cast_obj
973\$rc4_obj = $rc4_obj
974\$rmd160_obj = $rmd160_obj
975\$rc5_obj = $rc5_obj
1117
1118 print <<EOF
1119
1120*** $target
1121\$cc = $cc
1122\$cflags = $cflags
1123\$unistd = $unistd
1124\$thread_cflag = $thread_cflag
1125\$lflags = $lflags
1126\$bn_ops = $bn_ops
1127\$bn_obj = $bn_obj
1128\$des_obj = $des_obj
1129\$bf_obj = $bf_obj
1130\$md5_obj = $md5_obj
1131\$sha1_obj = $sha1_obj
1132\$cast_obj = $cast_obj
1133\$rc4_obj = $rc4_obj
1134\$rmd160_obj = $rmd160_obj
1135\$rc5_obj = $rc5_obj
1136\$dso_scheme = $dso_scheme
1137\$shared_target= $shared_target
1138\$shared_cflag = $shared_cflag
976EOF
977 }
1139EOF
1140 }