diff -r 333964c621f1 -r cb59d6afeb61 openpkg/openssl.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/openpkg/openssl.patch Tue Jan 06 23:40:39 2009 +0100 @@ -0,0 +1,355 @@ +Index: Configure +--- Configure.orig 2007-09-16 14:24:17 +0200 ++++ Configure 2007-10-17 12:14:14 +0200 +@@ -6,7 +6,6 @@ + ## + + require 5.000; +-use strict; + + # see INSTALL for instructions. + +@@ -34,6 +33,7 @@ + # (Default: KRB5_DIR/include) + # --with-krb5-flavor Declare what flavor of Kerberos 5 is used. Currently + # supported values are "MIT" and "Heimdal". A value is required. ++# --with-cc compiler to use for $CC (useful if cc is a disguised gcc) + # + # --test-sanity Make a number of sanity checks on the data in this file. + # This is a debugging tool for OpenSSL developers. +@@ -113,6 +113,7 @@ + #$bits2="THIRTY_TWO_BIT "; + my $bits1="THIRTY_TWO_BIT "; + my $bits2="SIXTY_FOUR_BIT "; ++my $ccarg; + + 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"; + 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"; +@@ -402,8 +403,8 @@ + + #### IBM's AIX. + "aix3-cc", "cc:-O -DB_ENDIAN -qmaxmem=16384::(unknown):AIX::BN_LLONG RC4_CHAR:::", +-"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", +-"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", ++"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)::", ++"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)::", + # Below targets assume AIX 5. Idea is to effectively disregard $OBJECT_MODE + # at build time. $OBJECT_MODE is respected at ./config stage! + "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", +@@ -697,6 +698,10 @@ + { + exit(&test_sanity()); + } ++ elsif (/^--with-cc=(.*)$/) ++ { ++ $ccarg=$1 ++ } + elsif (/^reconfigure/ || /^reconf/) + { + if (open(IN,"<$Makefile")) +@@ -949,7 +954,7 @@ + print "IsMK1MF=$IsMK1MF\n"; + + my @fields = split(/\s*:\s*/,$table{$target} . ":" x 30 , -1); +-my $cc = $fields[$idx_cc]; ++my $cc = $ccarg ? $ccarg : $fields[$idx_cc]; + my $cflags = $fields[$idx_cflags]; + my $unistd = $fields[$idx_unistd]; + my $thread_cflag = $fields[$idx_thread_cflag]; +Index: config +--- config.orig 2007-08-01 13:21:35 +0200 ++++ config 2007-10-17 12:13:48 +0200 +@@ -401,9 +401,9 @@ + + # figure out if gcc is available and if so we use it otherwise + # we fallback to whatever cc does on the system +-GCCVER=`(gcc -dumpversion) 2>/dev/null` ++GCCVER=`(gcc -dumpversion 2>/dev/null && exit; cc --version 2>/dev/null | grep GCC >/dev/null && cc -dumpversion )` + if [ "$GCCVER" != "" ]; then +- CC=gcc ++ CC=cc; gcc -dumpversion >/dev/null 2>&1 && CC=gcc + # then strip off whatever prefix egcs prepends the number with... + # Hopefully, this will work for any future prefixes as well. + GCCVER=`echo $GCCVER | LC_ALL=C sed 's/^[a-zA-Z]*\-//'` +@@ -412,8 +412,10 @@ + # major and minor version numbers. + # peak single digit before and after first dot, e.g. 2.95.1 gives 29 + GCCVER=`echo $GCCVER | sed 's/\([0-9]\)\.\([0-9]\).*/\1\2/'` ++ SUFFIX=gcc + else + CC=cc ++ SUFFIX=cc + fi + GCCVER=${GCCVER:-0} + if [ "$SYSTEM" = "HP-UX" ];then +@@ -422,7 +424,7 @@ + if [ $GCCVER -ge 30 ]; then + # PA64 support only came in with gcc 3.0.x. + # We check if the preprocessor symbol __LP64__ is defined... +- if echo "__LP64__" | gcc -v -E -x c - 2>/dev/null | grep "^__LP64__" 2>&1 > /dev/null; then ++ if echo "__LP64__" | $CC -v -E -x c - 2>/dev/null | grep "^__LP64__" 2>&1 > /dev/null; then + : # __LP64__ has slipped through, it therefore is not defined + else + GCC_BITS="64" +@@ -433,13 +435,14 @@ + if [ $GCCVER -ge 30 ]; then + # 64-bit ABI isn't officially supported in gcc 3.0, but it appears + # to be working, at the very least 'make test' passes... +- if gcc -v -E -x c /dev/null 2>&1 | grep __arch64__ > /dev/null; then ++ if $CC -v -E -x c /dev/null 2>&1 | grep __arch64__ > /dev/null; then + GCC_ARCH="-m64" + else + GCC_ARCH="-m32" + fi + fi + # check for WorkShop C, expected output is "cc: blah-blah C x.x" ++ if [ $GCCVER -eq 0 ]; then + CCVER=`(cc -V 2>&1) 2>/dev/null | \ + egrep -e '^cc: .* C [0-9]\.[0-9]' | \ + sed 's/.* C \([0-9]\)\.\([0-9]\).*/\1\2/'` +@@ -452,6 +455,7 @@ + sleep 5 + fi + fi ++ fi + fi + + if [ "${SYSTEM}-${MACHINE}" = "Linux-alpha" ]; then +@@ -469,6 +473,7 @@ + + if [ "${SYSTEM}" = "AIX" ]; then # favor vendor cc over gcc + (cc) 2>&1 | grep -iv "not found" > /dev/null && CC=cc ++ (gcc) 2>&1 | grep -iv "not found" > /dev/null && CC=gcc + fi + + CCVER=${CCVER:-0} +@@ -488,7 +493,7 @@ + if [ $CPU -ge 4000 ]; then + options="$options -mips2" + fi +- OUT="irix-$CC" ++ OUT="irix-$SUFFIX" + ;; + mips3-sgi-irix) + #CPU=`(hinv -t cpu) 2>/dev/null | head -1 | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'` +@@ -498,11 +503,11 @@ + #else + # options="$options -mips3" + #fi +- OUT="irix-mips3-$CC" ++ OUT="irix-mips3-$SUFFIX" + ;; + mips4-sgi-irix64) + echo "WARNING! If you wish to build 64-bit library, then you have to" +- echo " invoke './Configure irix64-mips4-$CC' *manually*." ++ echo " invoke './Configure irix64-mips4-$SUFFIX' *manually*." + if [ "$TEST" = "false" -a -t 1 ]; then + echo " You have about 5 seconds to press Ctrl-C to abort." + (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1 +@@ -514,7 +519,7 @@ + #else + # options="$options -mips3" + #fi +- OUT="irix-mips3-$CC" ++ OUT="irix-mips3-$SUFFIX" + ;; + ppc-apple-rhapsody) OUT="rhapsody-ppc-cc" ;; + ppc-apple-darwin*) OUT="darwin-ppc-cc" ;; +@@ -522,10 +527,10 @@ + alpha-*-linux2) + ISA=`awk '/cpu model/{print$4;exit(0);}' /proc/cpuinfo` + case ${ISA:-generic} in +- *[678]) OUT="linux-alpha+bwx-$CC" ;; +- *) OUT="linux-alpha-$CC" ;; ++ *[678]) OUT="linux-alpha+bwx-$SUFFIX" ;; ++ *) OUT="linux-alpha-$SUFFIX" ;; + esac +- if [ "$CC" = "gcc" ]; then ++ if [ $GCCVER -gt 0 ]; then + case ${ISA:-generic} in + EV5|EV45) options="$options -mcpu=ev5";; + EV56|PCA56) options="$options -mcpu=ev56";; +@@ -592,7 +597,7 @@ + s390x-*-linux2) OUT="linux-generic64"; options="$options -DB_ENDIAN" ;; + x86_64-*-linux?) OUT="linux-x86_64" ;; + *86-*-linux2) OUT="linux-elf" +- if [ "$GCCVER" -gt 28 ]; then ++ if [ $GCCVER -gt 28 ]; then + if grep '^model.*Pentium' /proc/cpuinfo >/dev/null ; then + options="$options -march=pentium" + fi +@@ -606,17 +611,17 @@ + *-*-linux1) OUT="linux-aout" ;; + *-*-linux2) OUT="linux-generic32" ;; + sun4[uv]*-*-solaris2) +- OUT="solaris-sparcv9-$CC" ++ OUT="solaris-sparcv9-$SUFFIX" + ISA64=`(isalist) 2>/dev/null | grep sparcv9` + if [ "$ISA64" != "" ]; then +- if [ "$CC" = "cc" -a $CCVER -ge 50 ]; then ++ if [ $GCCVER -eq 0 -a $CCVER -ge 50 ]; then + echo "WARNING! If you wish to build 64-bit library, then you have to" + echo " invoke './Configure solaris64-sparcv9-cc' *manually*." + if [ "$TEST" = "false" -a -t 1 ]; then + echo " You have about 5 seconds to press Ctrl-C to abort." + (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1 + fi +- elif [ "$CC" = "gcc" -a "$GCC_ARCH" = "-m64" ]; then ++ elif [ $GCCVER -gt 0 -a "$GCC_ARCH" = "-m64" ]; then + # $GCC_ARCH denotes default ABI chosen by compiler driver + # (first one found on the $PATH). I assume that user + # expects certain consistency with the rest of his builds +@@ -639,21 +644,21 @@ + fi + fi + ;; +- sun4m-*-solaris2) OUT="solaris-sparcv8-$CC" ;; +- sun4d-*-solaris2) OUT="solaris-sparcv8-$CC" ;; +- sun4*-*-solaris2) OUT="solaris-sparcv7-$CC" ;; ++ sun4m-*-solaris2) OUT="solaris-sparcv8-$SUFFIX" ;; ++ sun4d-*-solaris2) OUT="solaris-sparcv8-$SUFFIX" ;; ++ sun4*-*-solaris2) OUT="solaris-sparcv7-$SUFFIX" ;; + *86*-*-solaris2) + ISA64=`(isalist) 2>/dev/null | grep amd64` +- if [ "$ISA64" != "" ]; then +- OUT="solaris64-x86_64-$CC" ++ if [ "$ISA64" != "" -a $GCCVER -gt 0 -a "$GCC_ARCH" = "-m64" ]; then ++ OUT="solaris64-x86_64-$SUFFIX" + else +- OUT="solaris-x86-$CC" ++ OUT="solaris-x86-$SUFFIX" + if [ `uname -r | sed -e 's/5\.//'` -lt 10 ]; then + options="$options no-sse2" + fi + fi + ;; +- *-*-sunos4) OUT="sunos-$CC" ;; ++ *-*-sunos4) OUT="sunos-$SUFFIX" ;; + + *86*-*-bsdi4) OUT="BSD-x86-elf"; options="$options no-sse2 -ldl" ;; + alpha*-*-*bsd*) OUT="BSD-generic64"; options="$options -DL_ENDIAN" ;; +@@ -677,7 +682,7 @@ + *-*-osf) OUT="osf1-alpha-cc" ;; + *-*-tru64) OUT="tru64-alpha-cc" ;; + *-*-[Uu]nix[Ww]are7) +- if [ "$CC" = "gcc" ]; then ++ if [ $GCCVER -gt 0 ]; then + OUT="unixware-7-gcc" ; options="$options no-sse2" + else + OUT="unixware-7" ; options="$options no-sse2 -D__i386__" +@@ -688,12 +693,12 @@ + *-*-vos) + options="$options no-threads no-shared no-asm no-dso" + EXE=".pm" +- OUT="vos-$CC" ;; ++ OUT="vos-$SUFFIX" ;; + BS2000-siemens-sysv4) OUT="BS2000-OSD" ;; + RM*-siemens-sysv4) OUT="ReliantUNIX" ;; + *-siemens-sysv4) OUT="SINIX" ;; + *-hpux1*) +- if [ $CC = "gcc" -a $GCC_BITS = "64" ]; then ++ if [ $GCCVER -gt 0 -a $GCC_BITS = "64" ]; then + OUT="hpux64-parisc2-gcc" + fi + KERNEL_BITS=`(getconf KERNEL_BITS) 2>/dev/null` +@@ -711,8 +716,8 @@ + fi + OUT="hpux64-ia64-cc" + elif [ $CPU_VERSION -ge 532 ]; then # PA-RISC 2.x CPU +- OUT=${OUT:-"hpux-parisc2-${CC}"} +- if [ $KERNEL_BITS -eq 64 -a "$CC" = "cc" ]; then ++ OUT=${OUT:-"hpux-parisc2-${SUFFIX}"} ++ if [ $KERNEL_BITS -eq 64 -a $GCCVER -eq 0 ]; then + echo "WARNING! If you wish to build 64-bit library then you have to" + echo " invoke './Configure hpux64-parisc2-cc' *manually*." + if [ "$TEST" = "false" -a -t 1 ]; then +@@ -721,19 +726,19 @@ + fi + fi + elif [ $CPU_VERSION -ge 528 ]; then # PA-RISC 1.1+ CPU +- OUT="hpux-parisc-${CC}" ++ OUT="hpux-parisc-${SUFFIX}" + elif [ $CPU_VERSION -ge 523 ]; then # PA-RISC 1.0 CPU +- OUT="hpux-parisc-${CC}" ++ OUT="hpux-parisc-${SUFFIX}" + else # Motorola(?) CPU +- OUT="hpux-$CC" ++ OUT="hpux-$SUFFIX" + fi + options="$options -D_REENTRANT" ;; +- *-hpux) OUT="hpux-parisc-$CC" ;; ++ *-hpux) OUT="hpux-parisc-$SUFFIX" ;; + *-aix) + KERNEL_BITS=`(getconf KERNEL_BITMODE) 2>/dev/null` + KERNEL_BITS=${KERNEL_BITS:-32} + OBJECT_MODE=${OBJECT_MODE:-32} +- if [ "$CC" = "gcc" ]; then ++ if [ $GCCVER -gt 0 ]; then + OUT="aix-gcc" + elif [ $OBJECT_MODE -eq 64 ]; then + echo 'Your $OBJECT_MODE was found to be set to 64' +@@ -828,7 +833,7 @@ + #fi + + if [ -z "$OUT" ]; then +- OUT="$CC" ++ OUT="$SUFFIX" + fi + + if [ ".$PERL" = . ] ; then +@@ -860,9 +865,9 @@ + # compiler for the platform ... in which case we add it on + # the end ... otherwise we leave it off + +-$PERL ./Configure LIST | grep "$OUT-$CC" > /dev/null ++$PERL ./Configure LIST | grep "$OUT-$SUFFIX" > /dev/null + if [ $? = "0" ]; then +- OUT="$OUT-$CC" ++ OUT="$OUT-$SUFFIX" + fi + + OUT="$PREFIX$OUT" +@@ -872,9 +877,9 @@ + echo Configuring for $OUT + + if [ "$TEST" = "true" ]; then +- echo $PERL ./Configure $OUT $options ++ echo $PERL ./Configure $OUT --with-cc=$CC $options + else +- $PERL ./Configure $OUT $options ++ $PERL ./Configure $OUT --with-cc=$CC $options + fi + else + echo "This system ($OUT) is not supported. See file INSTALL for details." +Index: crypto/objects/obj_dat.pl +--- crypto/objects/obj_dat.pl.orig 2005-08-29 01:20:47 +0200 ++++ crypto/objects/obj_dat.pl 2007-10-17 12:13:48 +0200 +@@ -1,9 +1,5 @@ + #!/usr/local/bin/perl + +-# fixes bug in floating point emulation on sparc64 when +-# this script produces off-by-one output on sparc64 +-use integer; +- + sub obj_cmp + { + local(@a,@b,$_,$r); +Index: util/mklink.pl +--- util/mklink.pl.orig 2006-02-09 13:28:30 +0100 ++++ util/mklink.pl 2007-10-17 12:13:48 +0200 +@@ -15,13 +15,12 @@ + # Apart from this, this script should be able to handle even the most + # pathological cases. + +-use Cwd; +- + my $from = shift; + my @files = @ARGV; + + my @from_path = split(/[\\\/]/, $from); +-my $pwd = getcwd(); ++my $pwd = `pwd`; ++$pwd =~ s/\n$//s; + chomp($pwd); + my @pwd_path = split(/[\\\/]/, $pwd); +