| |
1 Index: Configure |
| |
2 --- Configure.orig 2007-09-16 14:24:17 +0200 |
| |
3 +++ Configure 2007-10-17 12:14:14 +0200 |
| |
4 @@ -6,7 +6,6 @@ |
| |
5 ## |
| |
6 |
| |
7 require 5.000; |
| |
8 -use strict; |
| |
9 |
| |
10 # see INSTALL for instructions. |
| |
11 |
| |
12 @@ -34,6 +33,7 @@ |
| |
13 # (Default: KRB5_DIR/include) |
| |
14 # --with-krb5-flavor Declare what flavor of Kerberos 5 is used. Currently |
| |
15 # supported values are "MIT" and "Heimdal". A value is required. |
| |
16 +# --with-cc compiler to use for $CC (useful if cc is a disguised gcc) |
| |
17 # |
| |
18 # --test-sanity Make a number of sanity checks on the data in this file. |
| |
19 # This is a debugging tool for OpenSSL developers. |
| |
20 @@ -113,6 +113,7 @@ |
| |
21 #$bits2="THIRTY_TWO_BIT "; |
| |
22 my $bits1="THIRTY_TWO_BIT "; |
| |
23 my $bits2="SIXTY_FOUR_BIT "; |
| |
24 +my $ccarg; |
| |
25 |
| |
26 my $x86_elf_asm="x86cpuid-elf.o:bn86-elf.o co86-elf.o:dx86-elf.o yx86-elf.o:ax86-elf.o:bx86-elf.o:mx86-elf.o:sx86-elf.o s512sse2-elf.o:cx86-elf.o:rx86-elf.o:rm86-elf.o:r586-elf.o"; |
| |
27 my $x86_coff_asm="x86cpuid-cof.o:bn86-cof.o co86-cof.o:dx86-cof.o yx86-cof.o:ax86-cof.o:bx86-cof.o:mx86-cof.o:sx86-cof.o s512sse2-cof.o:cx86-cof.o:rx86-cof.o:rm86-cof.o:r586-cof.o"; |
| |
28 @@ -402,8 +403,8 @@ |
| |
29 |
| |
30 #### IBM's AIX. |
| |
31 "aix3-cc", "cc:-O -DB_ENDIAN -qmaxmem=16384::(unknown):AIX::BN_LLONG RC4_CHAR:::", |
| |
32 -"aix-gcc", "gcc:-O -DB_ENDIAN::-D_THREAD_SAFE:AIX::BN_LLONG RC4_CHAR::aix_ppc32.o::::::::::dlfcn:aix-shared:::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X 32", |
| |
33 -"aix64-gcc","gcc:-maix64 -O -DB_ENDIAN::-D_THREAD_SAFE:AIX::SIXTY_FOUR_BIT_LONG RC4_CHAR::aix_ppc64.o::::::::::dlfcn:aix-shared::-maix64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X64", |
| |
34 +"aix-gcc", "gcc:-O -DB_ENDIAN::-D_THREAD_SAFE:AIX::BN_LLONG RC4_CHAR::aix_ppc32.o::::::::::dlfcn:aix-shared:::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::", |
| |
35 +"aix64-gcc","gcc:-maix64 -O -DB_ENDIAN::-D_THREAD_SAFE:AIX::SIXTY_FOUR_BIT_LONG RC4_CHAR::aix_ppc64.o::::::::::dlfcn:aix-shared::-maix64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::", |
| |
36 # Below targets assume AIX 5. Idea is to effectively disregard $OBJECT_MODE |
| |
37 # at build time. $OBJECT_MODE is respected at ./config stage! |
| |
38 "aix-cc", "cc:-q32 -O -DB_ENDIAN -qmaxmem=16384 -qro -qroconst::-qthreaded:AIX::BN_LLONG RC4_CHAR::aix_ppc32.o::::::::::dlfcn:aix-shared::-q32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X 32", |
| |
39 @@ -697,6 +698,10 @@ |
| |
40 { |
| |
41 exit(&test_sanity()); |
| |
42 } |
| |
43 + elsif (/^--with-cc=(.*)$/) |
| |
44 + { |
| |
45 + $ccarg=$1 |
| |
46 + } |
| |
47 elsif (/^reconfigure/ || /^reconf/) |
| |
48 { |
| |
49 if (open(IN,"<$Makefile")) |
| |
50 @@ -949,7 +954,7 @@ |
| |
51 print "IsMK1MF=$IsMK1MF\n"; |
| |
52 |
| |
53 my @fields = split(/\s*:\s*/,$table{$target} . ":" x 30 , -1); |
| |
54 -my $cc = $fields[$idx_cc]; |
| |
55 +my $cc = $ccarg ? $ccarg : $fields[$idx_cc]; |
| |
56 my $cflags = $fields[$idx_cflags]; |
| |
57 my $unistd = $fields[$idx_unistd]; |
| |
58 my $thread_cflag = $fields[$idx_thread_cflag]; |
| |
59 Index: config |
| |
60 --- config.orig 2007-08-01 13:21:35 +0200 |
| |
61 +++ config 2007-10-17 12:13:48 +0200 |
| |
62 @@ -401,9 +401,9 @@ |
| |
63 |
| |
64 # figure out if gcc is available and if so we use it otherwise |
| |
65 # we fallback to whatever cc does on the system |
| |
66 -GCCVER=`(gcc -dumpversion) 2>/dev/null` |
| |
67 +GCCVER=`(gcc -dumpversion 2>/dev/null && exit; cc --version 2>/dev/null | grep GCC >/dev/null && cc -dumpversion )` |
| |
68 if [ "$GCCVER" != "" ]; then |
| |
69 - CC=gcc |
| |
70 + CC=cc; gcc -dumpversion >/dev/null 2>&1 && CC=gcc |
| |
71 # then strip off whatever prefix egcs prepends the number with... |
| |
72 # Hopefully, this will work for any future prefixes as well. |
| |
73 GCCVER=`echo $GCCVER | LC_ALL=C sed 's/^[a-zA-Z]*\-//'` |
| |
74 @@ -412,8 +412,10 @@ |
| |
75 # major and minor version numbers. |
| |
76 # peak single digit before and after first dot, e.g. 2.95.1 gives 29 |
| |
77 GCCVER=`echo $GCCVER | sed 's/\([0-9]\)\.\([0-9]\).*/\1\2/'` |
| |
78 + SUFFIX=gcc |
| |
79 else |
| |
80 CC=cc |
| |
81 + SUFFIX=cc |
| |
82 fi |
| |
83 GCCVER=${GCCVER:-0} |
| |
84 if [ "$SYSTEM" = "HP-UX" ];then |
| |
85 @@ -422,7 +424,7 @@ |
| |
86 if [ $GCCVER -ge 30 ]; then |
| |
87 # PA64 support only came in with gcc 3.0.x. |
| |
88 # We check if the preprocessor symbol __LP64__ is defined... |
| |
89 - if echo "__LP64__" | gcc -v -E -x c - 2>/dev/null | grep "^__LP64__" 2>&1 > /dev/null; then |
| |
90 + if echo "__LP64__" | $CC -v -E -x c - 2>/dev/null | grep "^__LP64__" 2>&1 > /dev/null; then |
| |
91 : # __LP64__ has slipped through, it therefore is not defined |
| |
92 else |
| |
93 GCC_BITS="64" |
| |
94 @@ -433,13 +435,14 @@ |
| |
95 if [ $GCCVER -ge 30 ]; then |
| |
96 # 64-bit ABI isn't officially supported in gcc 3.0, but it appears |
| |
97 # to be working, at the very least 'make test' passes... |
| |
98 - if gcc -v -E -x c /dev/null 2>&1 | grep __arch64__ > /dev/null; then |
| |
99 + if $CC -v -E -x c /dev/null 2>&1 | grep __arch64__ > /dev/null; then |
| |
100 GCC_ARCH="-m64" |
| |
101 else |
| |
102 GCC_ARCH="-m32" |
| |
103 fi |
| |
104 fi |
| |
105 # check for WorkShop C, expected output is "cc: blah-blah C x.x" |
| |
106 + if [ $GCCVER -eq 0 ]; then |
| |
107 CCVER=`(cc -V 2>&1) 2>/dev/null | \ |
| |
108 egrep -e '^cc: .* C [0-9]\.[0-9]' | \ |
| |
109 sed 's/.* C \([0-9]\)\.\([0-9]\).*/\1\2/'` |
| |
110 @@ -452,6 +455,7 @@ |
| |
111 sleep 5 |
| |
112 fi |
| |
113 fi |
| |
114 + fi |
| |
115 fi |
| |
116 |
| |
117 if [ "${SYSTEM}-${MACHINE}" = "Linux-alpha" ]; then |
| |
118 @@ -469,6 +473,7 @@ |
| |
119 |
| |
120 if [ "${SYSTEM}" = "AIX" ]; then # favor vendor cc over gcc |
| |
121 (cc) 2>&1 | grep -iv "not found" > /dev/null && CC=cc |
| |
122 + (gcc) 2>&1 | grep -iv "not found" > /dev/null && CC=gcc |
| |
123 fi |
| |
124 |
| |
125 CCVER=${CCVER:-0} |
| |
126 @@ -488,7 +493,7 @@ |
| |
127 if [ $CPU -ge 4000 ]; then |
| |
128 options="$options -mips2" |
| |
129 fi |
| |
130 - OUT="irix-$CC" |
| |
131 + OUT="irix-$SUFFIX" |
| |
132 ;; |
| |
133 mips3-sgi-irix) |
| |
134 #CPU=`(hinv -t cpu) 2>/dev/null | head -1 | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'` |
| |
135 @@ -498,11 +503,11 @@ |
| |
136 #else |
| |
137 # options="$options -mips3" |
| |
138 #fi |
| |
139 - OUT="irix-mips3-$CC" |
| |
140 + OUT="irix-mips3-$SUFFIX" |
| |
141 ;; |
| |
142 mips4-sgi-irix64) |
| |
143 echo "WARNING! If you wish to build 64-bit library, then you have to" |
| |
144 - echo " invoke './Configure irix64-mips4-$CC' *manually*." |
| |
145 + echo " invoke './Configure irix64-mips4-$SUFFIX' *manually*." |
| |
146 if [ "$TEST" = "false" -a -t 1 ]; then |
| |
147 echo " You have about 5 seconds to press Ctrl-C to abort." |
| |
148 (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1 |
| |
149 @@ -514,7 +519,7 @@ |
| |
150 #else |
| |
151 # options="$options -mips3" |
| |
152 #fi |
| |
153 - OUT="irix-mips3-$CC" |
| |
154 + OUT="irix-mips3-$SUFFIX" |
| |
155 ;; |
| |
156 ppc-apple-rhapsody) OUT="rhapsody-ppc-cc" ;; |
| |
157 ppc-apple-darwin*) OUT="darwin-ppc-cc" ;; |
| |
158 @@ -522,10 +527,10 @@ |
| |
159 alpha-*-linux2) |
| |
160 ISA=`awk '/cpu model/{print$4;exit(0);}' /proc/cpuinfo` |
| |
161 case ${ISA:-generic} in |
| |
162 - *[678]) OUT="linux-alpha+bwx-$CC" ;; |
| |
163 - *) OUT="linux-alpha-$CC" ;; |
| |
164 + *[678]) OUT="linux-alpha+bwx-$SUFFIX" ;; |
| |
165 + *) OUT="linux-alpha-$SUFFIX" ;; |
| |
166 esac |
| |
167 - if [ "$CC" = "gcc" ]; then |
| |
168 + if [ $GCCVER -gt 0 ]; then |
| |
169 case ${ISA:-generic} in |
| |
170 EV5|EV45) options="$options -mcpu=ev5";; |
| |
171 EV56|PCA56) options="$options -mcpu=ev56";; |
| |
172 @@ -592,7 +597,7 @@ |
| |
173 s390x-*-linux2) OUT="linux-generic64"; options="$options -DB_ENDIAN" ;; |
| |
174 x86_64-*-linux?) OUT="linux-x86_64" ;; |
| |
175 *86-*-linux2) OUT="linux-elf" |
| |
176 - if [ "$GCCVER" -gt 28 ]; then |
| |
177 + if [ $GCCVER -gt 28 ]; then |
| |
178 if grep '^model.*Pentium' /proc/cpuinfo >/dev/null ; then |
| |
179 options="$options -march=pentium" |
| |
180 fi |
| |
181 @@ -606,17 +611,17 @@ |
| |
182 *-*-linux1) OUT="linux-aout" ;; |
| |
183 *-*-linux2) OUT="linux-generic32" ;; |
| |
184 sun4[uv]*-*-solaris2) |
| |
185 - OUT="solaris-sparcv9-$CC" |
| |
186 + OUT="solaris-sparcv9-$SUFFIX" |
| |
187 ISA64=`(isalist) 2>/dev/null | grep sparcv9` |
| |
188 if [ "$ISA64" != "" ]; then |
| |
189 - if [ "$CC" = "cc" -a $CCVER -ge 50 ]; then |
| |
190 + if [ $GCCVER -eq 0 -a $CCVER -ge 50 ]; then |
| |
191 echo "WARNING! If you wish to build 64-bit library, then you have to" |
| |
192 echo " invoke './Configure solaris64-sparcv9-cc' *manually*." |
| |
193 if [ "$TEST" = "false" -a -t 1 ]; then |
| |
194 echo " You have about 5 seconds to press Ctrl-C to abort." |
| |
195 (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1 |
| |
196 fi |
| |
197 - elif [ "$CC" = "gcc" -a "$GCC_ARCH" = "-m64" ]; then |
| |
198 + elif [ $GCCVER -gt 0 -a "$GCC_ARCH" = "-m64" ]; then |
| |
199 # $GCC_ARCH denotes default ABI chosen by compiler driver |
| |
200 # (first one found on the $PATH). I assume that user |
| |
201 # expects certain consistency with the rest of his builds |
| |
202 @@ -639,21 +644,21 @@ |
| |
203 fi |
| |
204 fi |
| |
205 ;; |
| |
206 - sun4m-*-solaris2) OUT="solaris-sparcv8-$CC" ;; |
| |
207 - sun4d-*-solaris2) OUT="solaris-sparcv8-$CC" ;; |
| |
208 - sun4*-*-solaris2) OUT="solaris-sparcv7-$CC" ;; |
| |
209 + sun4m-*-solaris2) OUT="solaris-sparcv8-$SUFFIX" ;; |
| |
210 + sun4d-*-solaris2) OUT="solaris-sparcv8-$SUFFIX" ;; |
| |
211 + sun4*-*-solaris2) OUT="solaris-sparcv7-$SUFFIX" ;; |
| |
212 *86*-*-solaris2) |
| |
213 ISA64=`(isalist) 2>/dev/null | grep amd64` |
| |
214 - if [ "$ISA64" != "" ]; then |
| |
215 - OUT="solaris64-x86_64-$CC" |
| |
216 + if [ "$ISA64" != "" -a $GCCVER -gt 0 -a "$GCC_ARCH" = "-m64" ]; then |
| |
217 + OUT="solaris64-x86_64-$SUFFIX" |
| |
218 else |
| |
219 - OUT="solaris-x86-$CC" |
| |
220 + OUT="solaris-x86-$SUFFIX" |
| |
221 if [ `uname -r | sed -e 's/5\.//'` -lt 10 ]; then |
| |
222 options="$options no-sse2" |
| |
223 fi |
| |
224 fi |
| |
225 ;; |
| |
226 - *-*-sunos4) OUT="sunos-$CC" ;; |
| |
227 + *-*-sunos4) OUT="sunos-$SUFFIX" ;; |
| |
228 |
| |
229 *86*-*-bsdi4) OUT="BSD-x86-elf"; options="$options no-sse2 -ldl" ;; |
| |
230 alpha*-*-*bsd*) OUT="BSD-generic64"; options="$options -DL_ENDIAN" ;; |
| |
231 @@ -677,7 +682,7 @@ |
| |
232 *-*-osf) OUT="osf1-alpha-cc" ;; |
| |
233 *-*-tru64) OUT="tru64-alpha-cc" ;; |
| |
234 *-*-[Uu]nix[Ww]are7) |
| |
235 - if [ "$CC" = "gcc" ]; then |
| |
236 + if [ $GCCVER -gt 0 ]; then |
| |
237 OUT="unixware-7-gcc" ; options="$options no-sse2" |
| |
238 else |
| |
239 OUT="unixware-7" ; options="$options no-sse2 -D__i386__" |
| |
240 @@ -688,12 +693,12 @@ |
| |
241 *-*-vos) |
| |
242 options="$options no-threads no-shared no-asm no-dso" |
| |
243 EXE=".pm" |
| |
244 - OUT="vos-$CC" ;; |
| |
245 + OUT="vos-$SUFFIX" ;; |
| |
246 BS2000-siemens-sysv4) OUT="BS2000-OSD" ;; |
| |
247 RM*-siemens-sysv4) OUT="ReliantUNIX" ;; |
| |
248 *-siemens-sysv4) OUT="SINIX" ;; |
| |
249 *-hpux1*) |
| |
250 - if [ $CC = "gcc" -a $GCC_BITS = "64" ]; then |
| |
251 + if [ $GCCVER -gt 0 -a $GCC_BITS = "64" ]; then |
| |
252 OUT="hpux64-parisc2-gcc" |
| |
253 fi |
| |
254 KERNEL_BITS=`(getconf KERNEL_BITS) 2>/dev/null` |
| |
255 @@ -711,8 +716,8 @@ |
| |
256 fi |
| |
257 OUT="hpux64-ia64-cc" |
| |
258 elif [ $CPU_VERSION -ge 532 ]; then # PA-RISC 2.x CPU |
| |
259 - OUT=${OUT:-"hpux-parisc2-${CC}"} |
| |
260 - if [ $KERNEL_BITS -eq 64 -a "$CC" = "cc" ]; then |
| |
261 + OUT=${OUT:-"hpux-parisc2-${SUFFIX}"} |
| |
262 + if [ $KERNEL_BITS -eq 64 -a $GCCVER -eq 0 ]; then |
| |
263 echo "WARNING! If you wish to build 64-bit library then you have to" |
| |
264 echo " invoke './Configure hpux64-parisc2-cc' *manually*." |
| |
265 if [ "$TEST" = "false" -a -t 1 ]; then |
| |
266 @@ -721,19 +726,19 @@ |
| |
267 fi |
| |
268 fi |
| |
269 elif [ $CPU_VERSION -ge 528 ]; then # PA-RISC 1.1+ CPU |
| |
270 - OUT="hpux-parisc-${CC}" |
| |
271 + OUT="hpux-parisc-${SUFFIX}" |
| |
272 elif [ $CPU_VERSION -ge 523 ]; then # PA-RISC 1.0 CPU |
| |
273 - OUT="hpux-parisc-${CC}" |
| |
274 + OUT="hpux-parisc-${SUFFIX}" |
| |
275 else # Motorola(?) CPU |
| |
276 - OUT="hpux-$CC" |
| |
277 + OUT="hpux-$SUFFIX" |
| |
278 fi |
| |
279 options="$options -D_REENTRANT" ;; |
| |
280 - *-hpux) OUT="hpux-parisc-$CC" ;; |
| |
281 + *-hpux) OUT="hpux-parisc-$SUFFIX" ;; |
| |
282 *-aix) |
| |
283 KERNEL_BITS=`(getconf KERNEL_BITMODE) 2>/dev/null` |
| |
284 KERNEL_BITS=${KERNEL_BITS:-32} |
| |
285 OBJECT_MODE=${OBJECT_MODE:-32} |
| |
286 - if [ "$CC" = "gcc" ]; then |
| |
287 + if [ $GCCVER -gt 0 ]; then |
| |
288 OUT="aix-gcc" |
| |
289 elif [ $OBJECT_MODE -eq 64 ]; then |
| |
290 echo 'Your $OBJECT_MODE was found to be set to 64' |
| |
291 @@ -828,7 +833,7 @@ |
| |
292 #fi |
| |
293 |
| |
294 if [ -z "$OUT" ]; then |
| |
295 - OUT="$CC" |
| |
296 + OUT="$SUFFIX" |
| |
297 fi |
| |
298 |
| |
299 if [ ".$PERL" = . ] ; then |
| |
300 @@ -860,9 +865,9 @@ |
| |
301 # compiler for the platform ... in which case we add it on |
| |
302 # the end ... otherwise we leave it off |
| |
303 |
| |
304 -$PERL ./Configure LIST | grep "$OUT-$CC" > /dev/null |
| |
305 +$PERL ./Configure LIST | grep "$OUT-$SUFFIX" > /dev/null |
| |
306 if [ $? = "0" ]; then |
| |
307 - OUT="$OUT-$CC" |
| |
308 + OUT="$OUT-$SUFFIX" |
| |
309 fi |
| |
310 |
| |
311 OUT="$PREFIX$OUT" |
| |
312 @@ -872,9 +877,9 @@ |
| |
313 echo Configuring for $OUT |
| |
314 |
| |
315 if [ "$TEST" = "true" ]; then |
| |
316 - echo $PERL ./Configure $OUT $options |
| |
317 + echo $PERL ./Configure $OUT --with-cc=$CC $options |
| |
318 else |
| |
319 - $PERL ./Configure $OUT $options |
| |
320 + $PERL ./Configure $OUT --with-cc=$CC $options |
| |
321 fi |
| |
322 else |
| |
323 echo "This system ($OUT) is not supported. See file INSTALL for details." |
| |
324 Index: crypto/objects/obj_dat.pl |
| |
325 --- crypto/objects/obj_dat.pl.orig 2005-08-29 01:20:47 +0200 |
| |
326 +++ crypto/objects/obj_dat.pl 2007-10-17 12:13:48 +0200 |
| |
327 @@ -1,9 +1,5 @@ |
| |
328 #!/usr/local/bin/perl |
| |
329 |
| |
330 -# fixes bug in floating point emulation on sparc64 when |
| |
331 -# this script produces off-by-one output on sparc64 |
| |
332 -use integer; |
| |
333 - |
| |
334 sub obj_cmp |
| |
335 { |
| |
336 local(@a,@b,$_,$r); |
| |
337 Index: util/mklink.pl |
| |
338 --- util/mklink.pl.orig 2006-02-09 13:28:30 +0100 |
| |
339 +++ util/mklink.pl 2007-10-17 12:13:48 +0200 |
| |
340 @@ -15,13 +15,12 @@ |
| |
341 # Apart from this, this script should be able to handle even the most |
| |
342 # pathological cases. |
| |
343 |
| |
344 -use Cwd; |
| |
345 - |
| |
346 my $from = shift; |
| |
347 my @files = @ARGV; |
| |
348 |
| |
349 my @from_path = split(/[\\\/]/, $from); |
| |
350 -my $pwd = getcwd(); |
| |
351 +my $pwd = `pwd`; |
| |
352 +$pwd =~ s/\n$//s; |
| |
353 chomp($pwd); |
| |
354 my @pwd_path = split(/[\\\/]/, $pwd); |
| |
355 |