evp/e_aes_cbc_hmac_sha256.c: give SHAEXT right priority.
[oweals/openssl.git] / util / pl / VC-32.pl
index 21f8a9beb78d818058e227d5f8ae8ec74205da7f..dba96cba5e75d6c1ae8ca27c9727727841975ba8 100644 (file)
@@ -45,7 +45,7 @@ if ($FLAVOR =~ /WIN64/)
     # considered safe to ignore.
     # 
     $base_cflags= " $mf_cflag";
-    my $f = $shlib?' /MD':' /MT';
+    my $f = $shlib || $fips ?' /MD':' /MT';
     $opt_cflags=$f.' /Ox';
     $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG';
     $lflags="/nologo /subsystem:console /opt:ref";
@@ -119,7 +119,7 @@ elsif ($FLAVOR =~ /CE/)
     $base_cflags.=' -I$(WCECOMPAT)/include'            if (defined($ENV{'WCECOMPAT'}));
     $base_cflags.=' -I$(PORTSDK_LIBPATH)/../../include'        if (defined($ENV{'PORTSDK_LIBPATH'}));
     if (`$cc 2>&1` =~ /Version ([0-9]+)\./ && $1>=14) {
-       $base_cflags.=($shlib and !$fipscanisterbuild)?' /MD':' /MT';
+       $base_cflags.=$shlib?' /MD':' /MT';
     } else {
        $base_cflags.=' /MC';
     }
@@ -130,13 +130,13 @@ elsif ($FLAVOR =~ /CE/)
 else   # Win32
     {
     $base_cflags= " $mf_cflag";
-    my $f = $shlib?' /MD':' /MT';
+    my $f = $shlib || $fips ?' /MD':' /MT';
     $ff = "/fixed";
     $opt_cflags=$f.' /Ox /O2 /Ob2';
     $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG';
     $lflags="/nologo /subsystem:console /opt:ref";
     }
-$lib_cflags='/Zl' if (!$shlib);        # remove /DEFAULTLIBs from static lib
+$lib_cflag='/Zl' if (!$shlib); # remove /DEFAULTLIBs from static lib
 $mlflags='';
 
 $out_def ="out32";     $out_def.="dll"                 if ($shlib);
@@ -330,7 +330,7 @@ sub do_lib_rule
                if ($fips && $target =~ /O_CRYPTO/)
                        {
                        $ret.="$target: $objs \$(PREMAIN_DSO_EXE)";
-                       $ret.="\n\tSET FIPS_LINK=\$(LINK)\n";
+                       $ret.="\n\tSET FIPS_LINK=\$(LINK_CMD)\n";
                        $ret.="\tSET FIPS_CC=\$(CC)\n";
                        $ret.="\tSET FIPS_CC_ARGS=/Fo\$(OBJ_D)${o}fips_premain.obj \$(SHLIB_CFLAGS) -c\n";
                        $ret.="\tSET PREMAIN_DSO_EXE=\$(PREMAIN_DSO_EXE)\n";
@@ -344,7 +344,7 @@ sub do_lib_rule
                else
                        {
                        $ret.="$target: $objs";
-                       $ret.="\n\t\$(LINK) \$(MLFLAGS) $efile$target $name @<<\n  \$(SHLIB_EX_OBJ) $objs $ex \$(EX_LIBS)\n<<\n";
+                       $ret.="\n\t\$(LINK_CMD) \$(MLFLAGS) $efile$target $name @<<\n  \$(SHLIB_EX_OBJ) $objs $ex \$(EX_LIBS)\n<<\n";
                        }
                $ret.="\tIF EXIST \$@.manifest mt -nologo -manifest \$@.manifest -outputresource:\$@;2\n\n";
                }
@@ -357,17 +357,23 @@ sub do_link_rule
        my($target,$files,$dep_libs,$libs,$standalone)=@_;
        local($ret,$_);
        $file =~ s/\//$o/g if $o ne '/';
-       $n=&bname($targer);
-       $ret.="$target: $files $dep_libs\n";
+       $n=&bname($target);
+       $ret.="$target: $files $dep_libs";
        if ($standalone == 1)
                {
-               $ret.="  \$(LINK) \$(LFLAGS) $efile$target @<<\n\t";
-               $ret.= "\$(EX_LIBS) " if ($files =~ /O_FIPSCANISTER/ && !$fipscanisterbuild);
+               $ret.=" \$(OBJ_D)${o}applink.obj" if $shlib;
+               $ret.="\n";
+               $ret.="  \$(LINK_CMD) \$(LFLAGS) $efile$target @<<\n\t";
+               if ($files =~ /O_FIPSCANISTER/ && !$fipscanisterbuild) {
+                       $ret.= "\$(EX_LIBS) ";
+                       $ret.= "\$(OBJ_D)${o}applink.obj " if $shlib;
+               }
                $ret.="$files $libs\n<<\n";
                }
        elsif ($standalone == 2)
                {
-               $ret.="\tSET FIPS_LINK=\$(LINK)\n";
+               $ret.="\n";
+               $ret.="\tSET FIPS_LINK=\$(LINK_CMD)\n";
                $ret.="\tSET FIPS_CC=\$(CC)\n";
                $ret.="\tSET FIPS_CC_ARGS=/Fo\$(OBJ_D)${o}fips_premain.obj \$(SHLIB_CFLAGS) -c\n";
                $ret.="\tSET PREMAIN_DSO_EXE=\n";
@@ -379,7 +385,8 @@ sub do_link_rule
                }
        else
                {
-               $ret.="\t\$(LINK) \$(LFLAGS) $efile$target @<<\n";
+               $ret.="\n";
+               $ret.="\t\$(LINK_CMD) \$(LFLAGS) $efile$target @<<\n";
                $ret.="\t\$(APP_EX_OBJ) $files $libs\n<<\n";
                }
        $ret.="\tIF EXIST \$@.manifest mt -nologo -manifest \$@.manifest -outputresource:\$@;1\n\n";