Index: Configure
--- Configure.orig	2012-03-14 23:20:40.000000000 +0100
+++ Configure	2012-06-27 10:10:05.000000000 +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.
@@ -123,6 +123,7 @@
 #$bits2="THIRTY_TWO_BIT ";
 my $bits1="THIRTY_TWO_BIT ";
 my $bits2="SIXTY_FOUR_BIT ";
+my $ccarg;
 
 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:";
 
@@ -460,12 +461,12 @@
 
 #### IBM's AIX.
 "aix3-cc",  "cc:-O -DB_ENDIAN -qmaxmem=16384::(unknown):AIX::BN_LLONG RC4_CHAR:::",
-"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",
-"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",
+"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)::",
+"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)::",
 # 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:${ppc32_asm}:aix32:dlfcn:aix-shared::-q32 -G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X 32",
-"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",
+"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)::",
+"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)::",
 
 #
 # Cray T90 and similar (SDSC)
@@ -828,6 +829,10 @@
 			{
 			$strict_warnings = 1;
 			}
+		elsif (/^--with-cc=(.*)$/)
+			{
+                $ccarg=$1
+			}
 		elsif (/^reconfigure/ || /^reconf/)
 			{
 			if (open(IN,"<$Makefile"))
@@ -1143,7 +1148,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];
 # Allow environment CC to override compiler...
 if($ENV{CC}) {
     $cc = $ENV{CC};
Index: config
--- config.orig	2011-11-14 22:12:53.000000000 +0100
+++ config	2012-06-27 10:10:05.000000000 +0200
@@ -277,6 +277,9 @@
 	    Power*)
 		echo "ppc-apple-darwin${VERSION}"
 		;;
+	    x86_64 )
+		echo "x86_64-apple-darwin${VERSION}"
+		;;
 	    *)
 		echo "i686-apple-darwin${VERSION}"
 		;;
@@ -413,7 +416,7 @@
 
 # Only set CC if not supplied already
 if [ -z "$CROSS_COMPILE$CC" ]; then
-  GCCVER=`sh -c "gcc -dumpversion" 2>/dev/null`
+  GCCVER=`sh -c "${CC-gcc} -dumpversion" 2>/dev/null`
   if [ "$GCCVER" != "" ]; then
     # then strip off whatever prefix egcs prepends the number with...
     # Hopefully, this will work for any future prefixes as well.
@@ -424,8 +427,14 @@
     # 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/'`
     CC=gcc
+    SUFFIX=gcc
   else
     CC=cc
+    SUFFIX=cc
+  fi
+else
+  if [ "$GCCVER" != "" ]; then
+    SUFFIX=gcc
   fi
 fi
 GCCVER=${GCCVER:-0}
@@ -435,7 +444,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"
@@ -446,13 +455,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/'`
@@ -465,6 +475,7 @@
       sleep 5
     fi
   fi
+  fi
 fi
 
 if [ "${SYSTEM}-${MACHINE}" = "Linux-alpha" ]; then
@@ -482,6 +493,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}
@@ -507,7 +519,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/'`
@@ -517,11 +529,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
@@ -533,7 +545,7 @@
         #else
         #        options="$options -mips3"
         #fi
-	OUT="irix-mips3-$CC"
+	OUT="irix-mips3-$SUFFIX"
 	;;
   ppc-apple-rhapsody) OUT="rhapsody-ppc-cc" ;;
   ppc-apple-darwin*)
@@ -566,6 +578,9 @@
 	else
 	    OUT="darwin-i386-cc"
 	fi ;;
+  x86_64-apple-darwin*)
+    OUT="darwin64-x86_64-cc"
+    ;;
   armv6+7-*-iphoneos)
 	options="$options -arch%20armv6 -arch%20armv7"
 	OUT="iphoneos-cross" ;;
@@ -575,10 +590,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";;
@@ -662,7 +677,7 @@
 	;;
   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
@@ -676,17 +691,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" != "" -a "$KERNEL_BITS" = "" ]; 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
@@ -712,21 +727,21 @@
 	    OUT="solaris64-sparcv9-$CC"
 	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" != "" -a ${KERNEL_BITS:-64} -eq 64 ]; then
-	    OUT="solaris64-x86_64-$CC"
+	if [ "$ISA64" != "" -a ${KERNEL_BITS:-64} -eq 64 -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" ;;
@@ -750,7 +765,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__"
@@ -761,12 +776,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" ] || KERNEL_BITS=`(getconf KERNEL_BITS) 2>/dev/null`
@@ -781,8 +796,8 @@
 	        OUT="hpux-ia64-cc"
              fi
 	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
@@ -791,9 +806,9 @@
 		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"
 	fi
@@ -803,7 +818,7 @@
 	[ "$KERNEL_BITS" ] || 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"
           if [ $OBJECT_MODE -eq 64 ]; then
             echo 'Your $OBJECT_MODE was found to be set to 64'
@@ -913,7 +928,7 @@
 #fi
 
 if [ -z "$OUT" ]; then
-  OUT="$CC"
+  OUT="$SUFFIX"
 fi
 
 if [ ".$PERL" = . ] ; then
@@ -945,9 +960,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"
@@ -957,9 +972,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/aes/asm/aesni-sha1-x86_64.pl
--- crypto/aes/asm/aesni-sha1-x86_64.pl.orig	2011-08-23 22:53:31.000000000 +0200
+++ crypto/aes/asm/aesni-sha1-x86_64.pl	2012-06-27 10:10:05.000000000 +0200
@@ -206,7 +206,7 @@
 ___
 
 my $aesenc=sub {
-  use integer;
+  
   my ($n,$k)=($r/10,$r%10);
     if ($k==0) {
       $code.=<<___;
@@ -249,7 +249,7 @@
 };
 
 sub Xupdate_ssse3_16_31()		# recall that $Xi starts wtih 4
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 40 instructions
   my ($a,$b,$c,$d,$e);
@@ -330,7 +330,7 @@
 }
 
 sub Xupdate_ssse3_32_79()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 to 48 instructions
   my ($a,$b,$c,$d,$e);
@@ -397,7 +397,7 @@
 }
 
 sub Xuplast_ssse3_80()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
@@ -431,7 +431,7 @@
 }
 
 sub Xloop_ssse3()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
@@ -456,7 +456,7 @@
 }
 
 sub Xtail_ssse3()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
@@ -465,7 +465,7 @@
 }
 
 sub body_00_19 () {
-  use integer;
+  
   my ($k,$n);
   my @r=(
 	'($a,$b,$c,$d,$e)=@V;'.
@@ -488,7 +488,7 @@
 }
 
 sub body_20_39 () {
-  use integer;
+  
   my ($k,$n);
   my @r=(
 	'($a,$b,$c,$d,$e)=@V;'.
@@ -509,7 +509,7 @@
 }
 
 sub body_40_59 () {
-  use integer;
+  
   my ($k,$n);
   my @r=(
 	'($a,$b,$c,$d,$e)=@V;'.
@@ -723,7 +723,7 @@
 ___
 
 my $aesenc=sub {
-  use integer;
+  
   my ($n,$k)=($r/10,$r%10);
     if ($k==0) {
       $code.=<<___;
@@ -766,7 +766,7 @@
 };
 
 sub Xupdate_avx_16_31()		# recall that $Xi starts wtih 4
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 40 instructions
   my ($a,$b,$c,$d,$e);
@@ -842,7 +842,7 @@
 }
 
 sub Xupdate_avx_32_79()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 to 48 instructions
   my ($a,$b,$c,$d,$e);
@@ -907,7 +907,7 @@
 }
 
 sub Xuplast_avx_80()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
@@ -941,7 +941,7 @@
 }
 
 sub Xloop_avx()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
@@ -965,7 +965,7 @@
 }
 
 sub Xtail_avx()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
Index: crypto/asn1/charmap.pl
--- crypto/asn1/charmap.pl.orig	2000-07-28 03:58:11.000000000 +0200
+++ crypto/asn1/charmap.pl	2012-06-27 10:10:05.000000000 +0200
@@ -1,7 +1,5 @@
 #!/usr/local/bin/perl -w
 
-use strict;
-
 my ($i, @arr);
 
 # Set up an array with the type of ASCII characters
Index: crypto/bn/asm/modexp512-x86_64.pl
--- crypto/bn/asm/modexp512-x86_64.pl.orig	2011-12-12 16:12:09.000000000 +0100
+++ crypto/bn/asm/modexp512-x86_64.pl	2012-06-27 10:10:05.000000000 +0200
@@ -70,7 +70,6 @@
 
 open STDOUT,"| $^X $xlate $flavour $output";
 
-use strict;
 my $code=".text\n\n";
 my $m=0;
 
Index: crypto/md5/asm/md5-x86_64.pl
--- crypto/md5/asm/md5-x86_64.pl.orig	2008-12-19 12:17:27.000000000 +0100
+++ crypto/md5/asm/md5-x86_64.pl	2012-06-27 10:10:05.000000000 +0200
@@ -7,8 +7,6 @@
 # in the public domain.
 #
 
-use strict;
-
 my $code;
 
 # round1_step() does:
Index: crypto/objects/obj_dat.pl
--- crypto/objects/obj_dat.pl.orig	2007-09-18 23:05:21.000000000 +0200
+++ crypto/objects/obj_dat.pl	2012-06-27 10:10:05.000000000 +0200
@@ -2,7 +2,6 @@
 
 # fixes bug in floating point emulation on sparc64 when
 # this script produces off-by-one output on sparc64
-use integer;
 
 sub obj_cmp
 	{
Index: crypto/objects/objxref.pl
--- crypto/objects/objxref.pl.orig	2009-04-06 18:16:23.000000000 +0200
+++ crypto/objects/objxref.pl	2012-06-27 10:10:05.000000000 +0200
@@ -1,7 +1,5 @@
 #!/usr/local/bin/perl
 
-use strict;
-
 my %xref_tbl;
 my %oid_tbl;
 
Index: crypto/perlasm/x86_64-xlate.pl
--- crypto/perlasm/x86_64-xlate.pl.orig	2012-03-13 20:19:31.000000000 +0100
+++ crypto/perlasm/x86_64-xlate.pl	2012-06-27 10:10:05.000000000 +0200
@@ -248,7 +248,6 @@
 
 	# Solaris /usr/ccs/bin/as can't handle multiplications
 	# in $self->{label}, new gas requires sign extension...
-	use integer;
 	$self->{label} =~ s/(?<![\w\$\.])(0x?[0-9a-f]+)/oct($1)/egi;
 	$self->{label} =~ s/([0-9]+\s*[\*\/\%]\s*[0-9]+)/eval($1)/eg;
 	$self->{label} =~ s/([0-9]+)/$1<<32>>32/eg;
Index: crypto/sha/asm/sha1-586.pl
--- crypto/sha/asm/sha1-586.pl.orig	2011-06-28 15:53:49.000000000 +0200
+++ crypto/sha/asm/sha1-586.pl	2012-06-27 10:10:05.000000000 +0200
@@ -523,7 +523,7 @@
 # round]...
 #
 sub Xupdate_ssse3_16_31()		# recall that $Xi starts wtih 4
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 40 instructions
   my ($a,$b,$c,$d,$e);
@@ -607,7 +607,7 @@
 }
 
 sub Xupdate_ssse3_32_79()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 to 48 instructions
   my ($a,$b,$c,$d,$e);
@@ -675,7 +675,7 @@
 }
 
 sub Xuplast_ssse3_80()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
@@ -710,7 +710,7 @@
 }
 
 sub Xloop_ssse3()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
@@ -735,7 +735,7 @@
 }
 
 sub Xtail_ssse3()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
@@ -945,7 +945,7 @@
 	&jmp	(&label("loop"));
 
 sub Xupdate_avx_16_31()		# recall that $Xi starts wtih 4
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 40 instructions
   my ($a,$b,$c,$d,$e);
@@ -1023,7 +1023,7 @@
 }
 
 sub Xupdate_avx_32_79()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 to 48 instructions
   my ($a,$b,$c,$d,$e);
@@ -1088,7 +1088,7 @@
 }
 
 sub Xuplast_avx_80()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
@@ -1123,7 +1123,7 @@
 }
 
 sub Xloop_avx()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
@@ -1147,7 +1147,7 @@
 }
 
 sub Xtail_avx()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
Index: crypto/sha/asm/sha1-x86_64.pl
--- crypto/sha/asm/sha1-x86_64.pl.orig	2011-07-04 15:01:42.000000000 +0200
+++ crypto/sha/asm/sha1-x86_64.pl	2012-06-27 10:10:05.000000000 +0200
@@ -367,7 +367,7 @@
 }
 
 sub Xupdate_ssse3_16_31()		# recall that $Xi starts wtih 4
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 40 instructions
   my ($a,$b,$c,$d,$e);
@@ -448,7 +448,7 @@
 }
 
 sub Xupdate_ssse3_32_79()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 to 48 instructions
   my ($a,$b,$c,$d,$e);
@@ -515,7 +515,7 @@
 }
 
 sub Xuplast_ssse3_80()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
@@ -549,7 +549,7 @@
 }
 
 sub Xloop_ssse3()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
@@ -574,7 +574,7 @@
 }
 
 sub Xtail_ssse3()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
@@ -778,7 +778,7 @@
 ___
 
 sub Xupdate_avx_16_31()		# recall that $Xi starts wtih 4
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 40 instructions
   my ($a,$b,$c,$d,$e);
@@ -854,7 +854,7 @@
 }
 
 sub Xupdate_avx_32_79()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 to 48 instructions
   my ($a,$b,$c,$d,$e);
@@ -919,7 +919,7 @@
 }
 
 sub Xuplast_avx_80()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
@@ -953,7 +953,7 @@
 }
 
 sub Xloop_avx()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
@@ -977,7 +977,7 @@
 }
 
 sub Xtail_avx()
-{ use integer;
+{ 
   my $body = shift;
   my @insns = (&$body,&$body,&$body,&$body);	# 32 instructions
   my ($a,$b,$c,$d,$e);
Index: util/clean-depend.pl
--- util/clean-depend.pl.orig	2007-09-19 16:53:18.000000000 +0200
+++ util/clean-depend.pl	2012-06-27 10:10:05.000000000 +0200
@@ -2,8 +2,6 @@
 # Clean the dependency list in a makefile of standard includes...
 # Written by Ben Laurie <ben@algroup.co.uk> 19 Jan 1999
 
-use strict;
-
 while(<STDIN>) {
     print;
     last if /^# DO NOT DELETE THIS LINE/;
Index: util/mklink.pl
--- util/mklink.pl.orig	2008-12-19 14:35:09.000000000 +0100
+++ util/mklink.pl	2012-06-27 10:10:05.000000000 +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/\r?\n$//s;
 chomp($pwd);
 my @pwd_path = split(/[\\\/]/, $pwd);
 
