More Intel cc fix-ups [from HEAD].
authorAndy Polyakov <appro@openssl.org>
Fri, 14 Sep 2007 19:32:54 +0000 (19:32 +0000)
committerAndy Polyakov <appro@openssl.org>
Fri, 14 Sep 2007 19:32:54 +0000 (19:32 +0000)
Configure

index 0de543d51b4d8acb231fae869934f1a2e045dae2..ad40990fa7447ae137cfca6a7a449a1aee8d7020 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -1162,12 +1162,16 @@ if (!$IsMK1MF)
        }
 
 $cpuid_obj.=" uplink.o uplink-cof.o" if ($cflags =~ /\-DOPENSSL_USE_APPLINK/);
+
 # Compiler fix-ups
 if ($target =~ /icc$/)
        {
-       my($iccver)=`$cc -V 2>&1`;
-       if ($iccver =~ /Version ([0-9]+)\./)    { $iccver=$1; }
-       else                                    { $iccver=0;  }
+       my $iccver=0;
+       if (open(FD,"$cc -V 2>&1 |"))
+               {
+               while(<FD>) { $iccver=$1 if (/Version ([0-9]+)\./); }
+               close(FD);
+               }
        if ($iccver>=8)
                {
                # Eliminate unnecessary dependency from libirc.a. This is
@@ -1175,6 +1179,15 @@ if ($target =~ /icc$/)
                # apps/openssl can end up in endless loop upon startup...
                $cflags.=" -Dmemcpy=__builtin_memcpy -Dmemset=__builtin_memset";
                }
+       if ($iccver>=9)
+               {
+               $cflags.=" -i-static";
+               $cflags=~s/\-no_cpprt/-no-cpprt/;
+               }
+       if ($iccver>=10)
+               {
+               $cflags=~s/\-i\-static/-static-intel/;
+               }
        }
 
 if ($sys_id ne "")