openpkg/openssl.patch

Fri, 03 Aug 2012 20:11:53 +0200

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Fri, 03 Aug 2012 20:11:53 +0200
changeset 470
f8813e60f168
parent 428
f880f219c566
child 472
0746a003fc03
permissions
-rw-r--r--

Neutralize buggy code causing OpenPKG to have 'fatal problems' in
spite of correct installation, configuration, and operation. An
administrator suffering from this failure is even unable to
uninstall the flawed software.

     1 Index: Configure
     2 --- Configure.orig	2012-03-14 23:20:40.000000000 +0100
     3 +++ Configure	2012-06-27 10:10:05.000000000 +0200
     4 @@ -6,7 +6,6 @@
     5  ##
     7  require 5.000;
     8 -use strict;
    10  # see INSTALL for instructions.
    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 @@ -123,6 +123,7 @@
    21  #$bits2="THIRTY_TWO_BIT ";
    22  my $bits1="THIRTY_TWO_BIT ";
    23  my $bits2="SIXTY_FOUR_BIT ";
    24 +my $ccarg;
    26  my $x86_asm="x86cpuid.o:bn-586.o co-586.o x86-mont.o x86-gf2m.o:des-586.o crypt586.o:aes-586.o vpaes-x86.o aesni-x86.o:bf-586.o:md5-586.o:sha1-586.o sha256-586.o sha512-586.o:cast-586.o:rc4-586.o:rmd-586.o:rc5-586.o:wp_block.o wp-mmx.o:cmll-x86.o:ghash-x86.o:";
    28 @@ -460,12 +461,12 @@
    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::-pthread:AIX::BN_LLONG RC4_CHAR:${ppc32_asm}:aix32:dlfcn:aix-shared::-shared -Wl,-G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X32",
    33 -"aix64-gcc","gcc:-maix64 -O -DB_ENDIAN::-pthread:AIX::SIXTY_FOUR_BIT_LONG RC4_CHAR:${ppc64_asm}:aix64:dlfcn:aix-shared::-maix64 -shared -Wl,-G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X64",
    34 +"aix-gcc",  "gcc:-O -DB_ENDIAN::-pthread:AIX::BN_LLONG RC4_CHAR:${ppc32_asm}:aix32:dlfcn:aix-shared::-shared -Wl,-G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::",
    35 +"aix64-gcc","gcc:-maix64 -O -DB_ENDIAN::-pthread:AIX::SIXTY_FOUR_BIT_LONG RC4_CHAR:${ppc64_asm}:aix64:dlfcn:aix-shared::-maix64 -shared -Wl,-G:.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:${ppc32_asm}:aix32:dlfcn:aix-shared::-q32 -G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X 32",
    39 -"aix64-cc", "cc:-q64 -O -DB_ENDIAN -qmaxmem=16384 -qro -qroconst::-qthreaded:AIX::SIXTY_FOUR_BIT_LONG RC4_CHAR:${ppc64_asm}:aix64:dlfcn:aix-shared::-q64 -G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X 64",
    40 +"aix-cc",   "cc:-q32 -O -DB_ENDIAN -qmaxmem=16384 -qro -qroconst::-qthreaded:AIX::BN_LLONG RC4_CHAR:${ppc32_asm}:aix32:dlfcn:aix-shared::-q32 -G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::",
    41 +"aix64-cc", "cc:-q64 -O -DB_ENDIAN -qmaxmem=16384 -qro -qroconst::-qthreaded:AIX::SIXTY_FOUR_BIT_LONG RC4_CHAR:${ppc64_asm}:aix64:dlfcn:aix-shared::-q64 -G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::",
    43  #
    44  # Cray T90 and similar (SDSC)
    45 @@ -828,6 +829,10 @@
    46  			{
    47  			$strict_warnings = 1;
    48  			}
    49 +		elsif (/^--with-cc=(.*)$/)
    50 +			{
    51 +                $ccarg=$1
    52 +			}
    53  		elsif (/^reconfigure/ || /^reconf/)
    54  			{
    55  			if (open(IN,"<$Makefile"))
    56 @@ -1143,7 +1148,7 @@
    57  print "IsMK1MF=$IsMK1MF\n";
    59  my @fields = split(/\s*:\s*/,$table{$target} . ":" x 30 , -1);
    60 -my $cc = $fields[$idx_cc];
    61 +my $cc = $ccarg ? $ccarg : $fields[$idx_cc];
    62  # Allow environment CC to override compiler...
    63  if($ENV{CC}) {
    64      $cc = $ENV{CC};
    65 Index: config
    66 --- config.orig	2011-11-14 22:12:53.000000000 +0100
    67 +++ config	2012-06-27 10:10:05.000000000 +0200
    68 @@ -277,6 +277,9 @@
    69  	    Power*)
    70  		echo "ppc-apple-darwin${VERSION}"
    71  		;;
    72 +	    x86_64 )
    73 +		echo "x86_64-apple-darwin${VERSION}"
    74 +		;;
    75  	    *)
    76  		echo "i686-apple-darwin${VERSION}"
    77  		;;
    78 @@ -413,7 +416,7 @@
    80  # Only set CC if not supplied already
    81  if [ -z "$CROSS_COMPILE$CC" ]; then
    82 -  GCCVER=`sh -c "gcc -dumpversion" 2>/dev/null`
    83 +  GCCVER=`sh -c "${CC-gcc} -dumpversion" 2>/dev/null`
    84    if [ "$GCCVER" != "" ]; then
    85      # then strip off whatever prefix egcs prepends the number with...
    86      # Hopefully, this will work for any future prefixes as well.
    87 @@ -424,8 +427,17 @@
    88      # peak single digit before and after first dot, e.g. 2.95.1 gives 29
    89      GCCVER=`echo $GCCVER | sed 's/\([0-9]\)\.\([0-9]\).*/\1\2/'`
    90      CC=gcc
    91 +    SUFFIX=gcc
    92 +  else
    93 +    CC=cc
    94 +    SUFFIX=cc
    95 +  fi
    96 +else
    97 +  if [ "$GCCVER" != "" ]; then
    98 +    SUFFIX=gcc
    99    else
   100      CC=cc
   101 +    SUFFIX=cc
   102    fi
   103  fi
   104  GCCVER=${GCCVER:-0}
   105 @@ -435,7 +447,7 @@
   106    if [ $GCCVER -ge 30 ]; then
   107      # PA64 support only came in with gcc 3.0.x.
   108      # We check if the preprocessor symbol __LP64__ is defined...
   109 -    if echo "__LP64__" | gcc -v -E -x c - 2>/dev/null | grep "^__LP64__" 2>&1 > /dev/null; then
   110 +    if echo "__LP64__" | $CC -v -E -x c - 2>/dev/null | grep "^__LP64__" 2>&1 > /dev/null; then
   111        : # __LP64__ has slipped through, it therefore is not defined
   112      else
   113        GCC_BITS="64"
   114 @@ -446,13 +458,14 @@
   115    if [ $GCCVER -ge 30 ]; then
   116      # 64-bit ABI isn't officially supported in gcc 3.0, but it appears
   117      # to be working, at the very least 'make test' passes...
   118 -    if gcc -v -E -x c /dev/null 2>&1 | grep __arch64__ > /dev/null; then
   119 +    if $CC -v -E -x c /dev/null 2>&1 | grep __arch64__ > /dev/null; then
   120        GCC_ARCH="-m64"
   121      else
   122        GCC_ARCH="-m32"
   123      fi
   124    fi
   125    # check for WorkShop C, expected output is "cc: blah-blah C x.x"
   126 +  if [ $GCCVER -eq 0 ]; then
   127    CCVER=`(cc -V 2>&1) 2>/dev/null | \
   128    	egrep -e '^cc: .* C [0-9]\.[0-9]' | \
   129  	sed 's/.* C \([0-9]\)\.\([0-9]\).*/\1\2/'`
   130 @@ -465,6 +478,7 @@
   131        sleep 5
   132      fi
   133    fi
   134 +  fi
   135  fi
   137  if [ "${SYSTEM}-${MACHINE}" = "Linux-alpha" ]; then
   138 @@ -482,6 +496,7 @@
   140  if [ "${SYSTEM}" = "AIX" ]; then	# favor vendor cc over gcc
   141      (cc) 2>&1 | grep -iv "not found" > /dev/null && CC=cc
   142 +    (gcc) 2>&1 | grep -iv "not found" > /dev/null && CC=gcc
   143  fi
   145  CCVER=${CCVER:-0}
   146 @@ -507,7 +522,7 @@
   147  	if [ $CPU -ge 4000 ]; then
   148  		options="$options -mips2"
   149  	fi
   150 -	OUT="irix-$CC"
   151 +	OUT="irix-$SUFFIX"
   152  	;;
   153    mips3-sgi-irix)
   154  	#CPU=`(hinv -t cpu) 2>/dev/null | head -1 | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'`
   155 @@ -517,11 +532,11 @@
   156  	#else
   157  	#	options="$options -mips3"
   158  	#fi
   159 -	OUT="irix-mips3-$CC"
   160 +	OUT="irix-mips3-$SUFFIX"
   161  	;;
   162    mips4-sgi-irix64)
   163  	echo "WARNING! If you wish to build 64-bit library, then you have to"
   164 -	echo "         invoke './Configure irix64-mips4-$CC' *manually*."
   165 +	echo "         invoke './Configure irix64-mips4-$SUFFIX' *manually*."
   166  	if [ "$TEST" = "false" -a -t 1 ]; then
   167  	  echo "         You have about 5 seconds to press Ctrl-C to abort."
   168  	  (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
   169 @@ -533,7 +548,7 @@
   170          #else
   171          #        options="$options -mips3"
   172          #fi
   173 -	OUT="irix-mips3-$CC"
   174 +	OUT="irix-mips3-$SUFFIX"
   175  	;;
   176    ppc-apple-rhapsody) OUT="rhapsody-ppc-cc" ;;
   177    ppc-apple-darwin*)
   178 @@ -566,6 +581,9 @@
   179  	else
   180  	    OUT="darwin-i386-cc"
   181  	fi ;;
   182 +  x86_64-apple-darwin*)
   183 +    OUT="darwin64-x86_64-cc"
   184 +    ;;
   185    armv6+7-*-iphoneos)
   186  	options="$options -arch%20armv6 -arch%20armv7"
   187  	OUT="iphoneos-cross" ;;
   188 @@ -575,10 +593,10 @@
   189    alpha-*-linux2)
   190          ISA=`awk '/cpu model/{print$4;exit(0);}' /proc/cpuinfo`
   191  	case ${ISA:-generic} in
   192 -	*[678])	OUT="linux-alpha+bwx-$CC" ;;
   193 -	*)	OUT="linux-alpha-$CC" ;;
   194 +	*[678])	OUT="linux-alpha+bwx-$SUFFIX" ;;
   195 +	*)	OUT="linux-alpha-$SUFFIX" ;;
   196  	esac
   197 -	if [ "$CC" = "gcc" ]; then
   198 +	if [ $GCCVER -gt 0 ]; then
   199  	    case ${ISA:-generic} in
   200  	    EV5|EV45)		options="$options -mcpu=ev5";;
   201  	    EV56|PCA56)		options="$options -mcpu=ev56";;
   202 @@ -662,7 +680,7 @@
   203  	;;
   204    x86_64-*-linux?) OUT="linux-x86_64" ;;
   205    *86-*-linux2) OUT="linux-elf"
   206 -	if [ "$GCCVER" -gt 28 ]; then
   207 +	if [ $GCCVER -gt 28 ]; then
   208            if grep '^model.*Pentium' /proc/cpuinfo >/dev/null ; then
   209  	    options="$options -march=pentium"
   210            fi
   211 @@ -676,17 +694,17 @@
   212    *-*-linux1) OUT="linux-aout" ;;
   213    *-*-linux2) OUT="linux-generic32" ;;
   214    sun4[uv]*-*-solaris2)
   215 -	OUT="solaris-sparcv9-$CC"
   216 +	OUT="solaris-sparcv9-$SUFFIX"
   217  	ISA64=`(isalist) 2>/dev/null | grep sparcv9`
   218  	if [ "$ISA64" != "" -a "$KERNEL_BITS" = "" ]; then
   219 -	    if [ "$CC" = "cc" -a $CCVER -ge 50 ]; then
   220 +	    if [ $GCCVER -eq 0 -a $CCVER -ge 50 ]; then
   221  		echo "WARNING! If you wish to build 64-bit library, then you have to"
   222  		echo "         invoke './Configure solaris64-sparcv9-cc' *manually*."
   223  		if [ "$TEST" = "false" -a -t 1 ]; then
   224  		  echo "         You have about 5 seconds to press Ctrl-C to abort."
   225  		  (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
   226  		fi
   227 -	    elif [ "$CC" = "gcc" -a "$GCC_ARCH" = "-m64" ]; then
   228 +	    elif [ $GCCVER -gt 0 -a "$GCC_ARCH" = "-m64" ]; then
   229  		# $GCC_ARCH denotes default ABI chosen by compiler driver
   230  		# (first one found on the $PATH). I assume that user
   231  		# expects certain consistency with the rest of his builds
   232 @@ -712,21 +730,21 @@
   233  	    OUT="solaris64-sparcv9-$CC"
   234  	fi
   235  	;;
   236 -  sun4m-*-solaris2)	OUT="solaris-sparcv8-$CC" ;;
   237 -  sun4d-*-solaris2)	OUT="solaris-sparcv8-$CC" ;;
   238 -  sun4*-*-solaris2)	OUT="solaris-sparcv7-$CC" ;;
   239 +  sun4m-*-solaris2)	OUT="solaris-sparcv8-$SUFFIX" ;;
   240 +  sun4d-*-solaris2)	OUT="solaris-sparcv8-$SUFFIX" ;;
   241 +  sun4*-*-solaris2)	OUT="solaris-sparcv7-$SUFFIX" ;;
   242    *86*-*-solaris2)
   243  	ISA64=`(isalist) 2>/dev/null | grep amd64`
   244  	if [ "$ISA64" != "" -a ${KERNEL_BITS:-64} -eq 64 ]; then
   245 -	    OUT="solaris64-x86_64-$CC"
   246 +	    OUT="solaris64-x86_64-$SUFFIX"
   247  	else
   248 -	    OUT="solaris-x86-$CC"
   249 +	    OUT="solaris-x86-$SUFFIX"
   250  	    if [ `uname -r | sed -e 's/5\.//'` -lt 10 ]; then
   251  		options="$options no-sse2"
   252  	    fi
   253  	fi
   254  	;;
   255 -  *-*-sunos4)		OUT="sunos-$CC" ;;
   256 +  *-*-sunos4)		OUT="sunos-$SUFFIX" ;;
   258    *86*-*-bsdi4)		OUT="BSD-x86-elf"; options="$options no-sse2 -ldl" ;;
   259    alpha*-*-*bsd*)	OUT="BSD-generic64"; options="$options -DL_ENDIAN" ;;
   260 @@ -750,7 +768,7 @@
   261    *-*-osf)		OUT="osf1-alpha-cc" ;;
   262    *-*-tru64)		OUT="tru64-alpha-cc" ;;
   263    *-*-[Uu]nix[Ww]are7)
   264 -	if [ "$CC" = "gcc" ]; then
   265 +	if [ $GCCVER -gt 0 ]; then
   266  	  OUT="unixware-7-gcc" ; options="$options no-sse2"
   267  	else    
   268  	  OUT="unixware-7" ; options="$options no-sse2 -D__i386__"
   269 @@ -761,12 +779,12 @@
   270    *-*-vos)
   271  	options="$options no-threads no-shared no-asm no-dso"
   272  	EXE=".pm"
   273 -	OUT="vos-$CC" ;;
   274 +	OUT="vos-$SUFFIX" ;;
   275    BS2000-siemens-sysv4) OUT="BS2000-OSD" ;;
   276    RM*-siemens-sysv4) OUT="ReliantUNIX" ;;
   277    *-siemens-sysv4) OUT="SINIX" ;;
   278    *-hpux1*)
   279 -	if [ $CC = "gcc" -a $GCC_BITS = "64" ]; then
   280 +	if [ $GCCVER -gt 0 -a $GCC_BITS = "64" ]; then
   281  	    OUT="hpux64-parisc2-gcc"
   282  	fi
   283  	[ "$KERNEL_BITS" ] || KERNEL_BITS=`(getconf KERNEL_BITS) 2>/dev/null`
   284 @@ -781,8 +799,8 @@
   285  	        OUT="hpux-ia64-cc"
   286               fi
   287  	elif [ $CPU_VERSION -ge 532 ]; then	# PA-RISC 2.x CPU
   288 -	     OUT=${OUT:-"hpux-parisc2-${CC}"}
   289 -	     if [ $KERNEL_BITS -eq 64 -a "$CC" = "cc" ]; then
   290 +	     OUT=${OUT:-"hpux-parisc2-${SUFFIX}"}
   291 +	     if [ $KERNEL_BITS -eq 64 -a $GCCVER -eq 0 ]; then
   292  		echo "WARNING! If you wish to build 64-bit library then you have to"
   293  		echo "         invoke './Configure hpux64-parisc2-cc' *manually*."
   294  		if [ "$TEST" = "false" -a -t 1 ]; then
   295 @@ -791,9 +809,9 @@
   296  		fi
   297  	     fi
   298  	elif [ $CPU_VERSION -ge 528 ]; then	# PA-RISC 1.1+ CPU
   299 -	     OUT="hpux-parisc-${CC}"
   300 +	     OUT="hpux-parisc-${SUFFIX}"
   301  	elif [ $CPU_VERSION -ge 523 ]; then	# PA-RISC 1.0 CPU
   302 -	     OUT="hpux-parisc-${CC}"
   303 +	     OUT="hpux-parisc-${SUFFIX}"
   304  	else					# Motorola(?) CPU
   305  	     OUT="hpux-$CC"
   306  	fi
   307 @@ -803,7 +821,7 @@
   308  	[ "$KERNEL_BITS" ] || KERNEL_BITS=`(getconf KERNEL_BITMODE) 2>/dev/null`
   309  	KERNEL_BITS=${KERNEL_BITS:-32}
   310  	OBJECT_MODE=${OBJECT_MODE:-32}
   311 -	if [ "$CC" = "gcc" ]; then
   312 +	if [ $GCCVER -gt 0 ]; then
   313  	    OUT="aix-gcc"
   314            if [ $OBJECT_MODE -eq 64 ]; then
   315              echo 'Your $OBJECT_MODE was found to be set to 64'
   316 @@ -913,7 +931,7 @@
   317  #fi
   319  if [ -z "$OUT" ]; then
   320 -  OUT="$CC"
   321 +  OUT="$SUFFIX"
   322  fi
   324  if [ ".$PERL" = . ] ; then
   325 @@ -945,9 +963,9 @@
   326  # compiler for the platform ... in which case we add it on
   327  # the end ... otherwise we leave it off
   329 -$PERL ./Configure LIST | grep "$OUT-$CC" > /dev/null
   330 +$PERL ./Configure LIST | grep "$OUT-$SUFFIX" > /dev/null
   331  if [ $? = "0" ]; then
   332 -  OUT="$OUT-$CC"
   333 +  OUT="$OUT-$SUFFIX"
   334  fi
   336  OUT="$PREFIX$OUT"
   337 @@ -957,9 +975,9 @@
   338    echo Configuring for $OUT
   340    if [ "$TEST" = "true" ]; then
   341 -    echo $PERL ./Configure $OUT $options
   342 +    echo $PERL ./Configure $OUT --with-cc=$CC $options
   343    else
   344 -    $PERL ./Configure $OUT $options
   345 +    $PERL ./Configure $OUT --with-cc=$CC $options
   346    fi
   347  else
   348    echo "This system ($OUT) is not supported. See file INSTALL for details."
   349 Index: crypto/aes/asm/aesni-sha1-x86_64.pl
   350 --- crypto/aes/asm/aesni-sha1-x86_64.pl.orig	2011-08-23 22:53:31.000000000 +0200
   351 +++ crypto/aes/asm/aesni-sha1-x86_64.pl	2012-06-27 10:10:05.000000000 +0200
   352 @@ -206,7 +206,7 @@
   353  ___
   355  my $aesenc=sub {
   356 -  use integer;
   357 +  
   358    my ($n,$k)=($r/10,$r%10);
   359      if ($k==0) {
   360        $code.=<<___;
   361 @@ -249,7 +249,7 @@
   362  };
   364  sub Xupdate_ssse3_16_31()		# recall that $Xi starts wtih 4
   365 -{ use integer;
   366 +{ 
   367    my $body = shift;
   368    my @insns = (&$body,&$body,&$body,&$body);	# 40 instructions
   369    my ($a,$b,$c,$d,$e);
   370 @@ -330,7 +330,7 @@
   371  }
   373  sub Xupdate_ssse3_32_79()
   374 -{ use integer;
   375 +{ 
   376    my $body = shift;
   377    my @insns = (&$body,&$body,&$body,&$body);	# 32 to 48 instructions
   378    my ($a,$b,$c,$d,$e);
   379 @@ -397,7 +397,7 @@
   380  }
   382  sub Xuplast_ssse3_80()
   383 -{ use integer;
   384 +{ 
   385    my $body = shift;
   386    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   387    my ($a,$b,$c,$d,$e);
   388 @@ -431,7 +431,7 @@
   389  }
   391  sub Xloop_ssse3()
   392 -{ use integer;
   393 +{ 
   394    my $body = shift;
   395    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   396    my ($a,$b,$c,$d,$e);
   397 @@ -456,7 +456,7 @@
   398  }
   400  sub Xtail_ssse3()
   401 -{ use integer;
   402 +{ 
   403    my $body = shift;
   404    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   405    my ($a,$b,$c,$d,$e);
   406 @@ -465,7 +465,7 @@
   407  }
   409  sub body_00_19 () {
   410 -  use integer;
   411 +  
   412    my ($k,$n);
   413    my @r=(
   414  	'($a,$b,$c,$d,$e)=@V;'.
   415 @@ -488,7 +488,7 @@
   416  }
   418  sub body_20_39 () {
   419 -  use integer;
   420 +  
   421    my ($k,$n);
   422    my @r=(
   423  	'($a,$b,$c,$d,$e)=@V;'.
   424 @@ -509,7 +509,7 @@
   425  }
   427  sub body_40_59 () {
   428 -  use integer;
   429 +  
   430    my ($k,$n);
   431    my @r=(
   432  	'($a,$b,$c,$d,$e)=@V;'.
   433 @@ -723,7 +723,7 @@
   434  ___
   436  my $aesenc=sub {
   437 -  use integer;
   438 +  
   439    my ($n,$k)=($r/10,$r%10);
   440      if ($k==0) {
   441        $code.=<<___;
   442 @@ -766,7 +766,7 @@
   443  };
   445  sub Xupdate_avx_16_31()		# recall that $Xi starts wtih 4
   446 -{ use integer;
   447 +{ 
   448    my $body = shift;
   449    my @insns = (&$body,&$body,&$body,&$body);	# 40 instructions
   450    my ($a,$b,$c,$d,$e);
   451 @@ -842,7 +842,7 @@
   452  }
   454  sub Xupdate_avx_32_79()
   455 -{ use integer;
   456 +{ 
   457    my $body = shift;
   458    my @insns = (&$body,&$body,&$body,&$body);	# 32 to 48 instructions
   459    my ($a,$b,$c,$d,$e);
   460 @@ -907,7 +907,7 @@
   461  }
   463  sub Xuplast_avx_80()
   464 -{ use integer;
   465 +{ 
   466    my $body = shift;
   467    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   468    my ($a,$b,$c,$d,$e);
   469 @@ -941,7 +941,7 @@
   470  }
   472  sub Xloop_avx()
   473 -{ use integer;
   474 +{ 
   475    my $body = shift;
   476    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   477    my ($a,$b,$c,$d,$e);
   478 @@ -965,7 +965,7 @@
   479  }
   481  sub Xtail_avx()
   482 -{ use integer;
   483 +{ 
   484    my $body = shift;
   485    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   486    my ($a,$b,$c,$d,$e);
   487 Index: crypto/asn1/charmap.pl
   488 --- crypto/asn1/charmap.pl.orig	2000-07-28 03:58:11.000000000 +0200
   489 +++ crypto/asn1/charmap.pl	2012-06-27 10:10:05.000000000 +0200
   490 @@ -1,7 +1,5 @@
   491  #!/usr/local/bin/perl -w
   493 -use strict;
   494 -
   495  my ($i, @arr);
   497  # Set up an array with the type of ASCII characters
   498 Index: crypto/bn/asm/modexp512-x86_64.pl
   499 --- crypto/bn/asm/modexp512-x86_64.pl.orig	2011-12-12 16:12:09.000000000 +0100
   500 +++ crypto/bn/asm/modexp512-x86_64.pl	2012-06-27 10:10:05.000000000 +0200
   501 @@ -70,7 +70,6 @@
   503  open STDOUT,"| $^X $xlate $flavour $output";
   505 -use strict;
   506  my $code=".text\n\n";
   507  my $m=0;
   509 Index: crypto/md5/asm/md5-x86_64.pl
   510 --- crypto/md5/asm/md5-x86_64.pl.orig	2008-12-19 12:17:27.000000000 +0100
   511 +++ crypto/md5/asm/md5-x86_64.pl	2012-06-27 10:10:05.000000000 +0200
   512 @@ -7,8 +7,6 @@
   513  # in the public domain.
   514  #
   516 -use strict;
   517 -
   518  my $code;
   520  # round1_step() does:
   521 Index: crypto/objects/obj_dat.pl
   522 --- crypto/objects/obj_dat.pl.orig	2007-09-18 23:05:21.000000000 +0200
   523 +++ crypto/objects/obj_dat.pl	2012-06-27 10:10:05.000000000 +0200
   524 @@ -2,7 +2,6 @@
   526  # fixes bug in floating point emulation on sparc64 when
   527  # this script produces off-by-one output on sparc64
   528 -use integer;
   530  sub obj_cmp
   531  	{
   532 Index: crypto/objects/objxref.pl
   533 --- crypto/objects/objxref.pl.orig	2009-04-06 18:16:23.000000000 +0200
   534 +++ crypto/objects/objxref.pl	2012-06-27 10:10:05.000000000 +0200
   535 @@ -1,7 +1,5 @@
   536  #!/usr/local/bin/perl
   538 -use strict;
   539 -
   540  my %xref_tbl;
   541  my %oid_tbl;
   543 Index: crypto/perlasm/x86_64-xlate.pl
   544 --- crypto/perlasm/x86_64-xlate.pl.orig	2012-03-13 20:19:31.000000000 +0100
   545 +++ crypto/perlasm/x86_64-xlate.pl	2012-06-27 10:10:05.000000000 +0200
   546 @@ -248,7 +248,6 @@
   548  	# Solaris /usr/ccs/bin/as can't handle multiplications
   549  	# in $self->{label}, new gas requires sign extension...
   550 -	use integer;
   551  	$self->{label} =~ s/(?<![\w\$\.])(0x?[0-9a-f]+)/oct($1)/egi;
   552  	$self->{label} =~ s/([0-9]+\s*[\*\/\%]\s*[0-9]+)/eval($1)/eg;
   553  	$self->{label} =~ s/([0-9]+)/$1<<32>>32/eg;
   554 Index: crypto/sha/asm/sha1-586.pl
   555 --- crypto/sha/asm/sha1-586.pl.orig	2011-06-28 15:53:49.000000000 +0200
   556 +++ crypto/sha/asm/sha1-586.pl	2012-06-27 10:10:05.000000000 +0200
   557 @@ -523,7 +523,7 @@
   558  # round]...
   559  #
   560  sub Xupdate_ssse3_16_31()		# recall that $Xi starts wtih 4
   561 -{ use integer;
   562 +{ 
   563    my $body = shift;
   564    my @insns = (&$body,&$body,&$body,&$body);	# 40 instructions
   565    my ($a,$b,$c,$d,$e);
   566 @@ -607,7 +607,7 @@
   567  }
   569  sub Xupdate_ssse3_32_79()
   570 -{ use integer;
   571 +{ 
   572    my $body = shift;
   573    my @insns = (&$body,&$body,&$body,&$body);	# 32 to 48 instructions
   574    my ($a,$b,$c,$d,$e);
   575 @@ -675,7 +675,7 @@
   576  }
   578  sub Xuplast_ssse3_80()
   579 -{ use integer;
   580 +{ 
   581    my $body = shift;
   582    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   583    my ($a,$b,$c,$d,$e);
   584 @@ -710,7 +710,7 @@
   585  }
   587  sub Xloop_ssse3()
   588 -{ use integer;
   589 +{ 
   590    my $body = shift;
   591    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   592    my ($a,$b,$c,$d,$e);
   593 @@ -735,7 +735,7 @@
   594  }
   596  sub Xtail_ssse3()
   597 -{ use integer;
   598 +{ 
   599    my $body = shift;
   600    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   601    my ($a,$b,$c,$d,$e);
   602 @@ -945,7 +945,7 @@
   603  	&jmp	(&label("loop"));
   605  sub Xupdate_avx_16_31()		# recall that $Xi starts wtih 4
   606 -{ use integer;
   607 +{ 
   608    my $body = shift;
   609    my @insns = (&$body,&$body,&$body,&$body);	# 40 instructions
   610    my ($a,$b,$c,$d,$e);
   611 @@ -1023,7 +1023,7 @@
   612  }
   614  sub Xupdate_avx_32_79()
   615 -{ use integer;
   616 +{ 
   617    my $body = shift;
   618    my @insns = (&$body,&$body,&$body,&$body);	# 32 to 48 instructions
   619    my ($a,$b,$c,$d,$e);
   620 @@ -1088,7 +1088,7 @@
   621  }
   623  sub Xuplast_avx_80()
   624 -{ use integer;
   625 +{ 
   626    my $body = shift;
   627    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   628    my ($a,$b,$c,$d,$e);
   629 @@ -1123,7 +1123,7 @@
   630  }
   632  sub Xloop_avx()
   633 -{ use integer;
   634 +{ 
   635    my $body = shift;
   636    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   637    my ($a,$b,$c,$d,$e);
   638 @@ -1147,7 +1147,7 @@
   639  }
   641  sub Xtail_avx()
   642 -{ use integer;
   643 +{ 
   644    my $body = shift;
   645    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   646    my ($a,$b,$c,$d,$e);
   647 Index: crypto/sha/asm/sha1-x86_64.pl
   648 --- crypto/sha/asm/sha1-x86_64.pl.orig	2011-07-04 15:01:42.000000000 +0200
   649 +++ crypto/sha/asm/sha1-x86_64.pl	2012-06-27 10:10:05.000000000 +0200
   650 @@ -367,7 +367,7 @@
   651  }
   653  sub Xupdate_ssse3_16_31()		# recall that $Xi starts wtih 4
   654 -{ use integer;
   655 +{ 
   656    my $body = shift;
   657    my @insns = (&$body,&$body,&$body,&$body);	# 40 instructions
   658    my ($a,$b,$c,$d,$e);
   659 @@ -448,7 +448,7 @@
   660  }
   662  sub Xupdate_ssse3_32_79()
   663 -{ use integer;
   664 +{ 
   665    my $body = shift;
   666    my @insns = (&$body,&$body,&$body,&$body);	# 32 to 48 instructions
   667    my ($a,$b,$c,$d,$e);
   668 @@ -515,7 +515,7 @@
   669  }
   671  sub Xuplast_ssse3_80()
   672 -{ use integer;
   673 +{ 
   674    my $body = shift;
   675    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   676    my ($a,$b,$c,$d,$e);
   677 @@ -549,7 +549,7 @@
   678  }
   680  sub Xloop_ssse3()
   681 -{ use integer;
   682 +{ 
   683    my $body = shift;
   684    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   685    my ($a,$b,$c,$d,$e);
   686 @@ -574,7 +574,7 @@
   687  }
   689  sub Xtail_ssse3()
   690 -{ use integer;
   691 +{ 
   692    my $body = shift;
   693    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   694    my ($a,$b,$c,$d,$e);
   695 @@ -778,7 +778,7 @@
   696  ___
   698  sub Xupdate_avx_16_31()		# recall that $Xi starts wtih 4
   699 -{ use integer;
   700 +{ 
   701    my $body = shift;
   702    my @insns = (&$body,&$body,&$body,&$body);	# 40 instructions
   703    my ($a,$b,$c,$d,$e);
   704 @@ -854,7 +854,7 @@
   705  }
   707  sub Xupdate_avx_32_79()
   708 -{ use integer;
   709 +{ 
   710    my $body = shift;
   711    my @insns = (&$body,&$body,&$body,&$body);	# 32 to 48 instructions
   712    my ($a,$b,$c,$d,$e);
   713 @@ -919,7 +919,7 @@
   714  }
   716  sub Xuplast_avx_80()
   717 -{ use integer;
   718 +{ 
   719    my $body = shift;
   720    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   721    my ($a,$b,$c,$d,$e);
   722 @@ -953,7 +953,7 @@
   723  }
   725  sub Xloop_avx()
   726 -{ use integer;
   727 +{ 
   728    my $body = shift;
   729    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   730    my ($a,$b,$c,$d,$e);
   731 @@ -977,7 +977,7 @@
   732  }
   734  sub Xtail_avx()
   735 -{ use integer;
   736 +{ 
   737    my $body = shift;
   738    my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   739    my ($a,$b,$c,$d,$e);
   740 Index: util/clean-depend.pl
   741 --- util/clean-depend.pl.orig	2007-09-19 16:53:18.000000000 +0200
   742 +++ util/clean-depend.pl	2012-06-27 10:10:05.000000000 +0200
   743 @@ -2,8 +2,6 @@
   744  # Clean the dependency list in a makefile of standard includes...
   745  # Written by Ben Laurie <ben@algroup.co.uk> 19 Jan 1999
   747 -use strict;
   748 -
   749  while(<STDIN>) {
   750      print;
   751      last if /^# DO NOT DELETE THIS LINE/;
   752 Index: util/mklink.pl
   753 --- util/mklink.pl.orig	2008-12-19 14:35:09.000000000 +0100
   754 +++ util/mklink.pl	2012-06-27 10:10:05.000000000 +0200
   755 @@ -15,13 +15,12 @@
   756  # Apart from this, this script should be able to handle even the most
   757  # pathological cases.
   759 -use Cwd;
   760 -
   761  my $from = shift;
   762  my @files = @ARGV;
   764  my @from_path = split(/[\\\/]/, $from);
   765 -my $pwd = getcwd();
   766 +my $pwd = `pwd`;
   767 +$pwd =~ s/\r?\n$//s;
   768  chomp($pwd);
   769  my @pwd_path = split(/[\\\/]/, $pwd);

mercurial