Add /fixed flag for FIPS links where appropriate.
authorDr. Stephen Henson <steve@openssl.org>
Sat, 15 Feb 2014 17:16:19 +0000 (17:16 +0000)
committerDr. Stephen Henson <steve@openssl.org>
Sat, 15 Feb 2014 17:16:19 +0000 (17:16 +0000)
util/pl/VC-32.pl

index 9f43c41371155880af1c329b102bf8a3e578434b..21f8a9beb78d818058e227d5f8ae8ec74205da7f 100644 (file)
@@ -27,6 +27,8 @@ $zlib_lib="zlib1.lib";
 $l_flags =~ s/-L("\[^"]+")/\/libpath:$1/g;
 $l_flags =~ s/-L(\S+)/\/libpath:$1/g;
 
+my $ff = "";
+
 # C compiler stuff
 $cc='cl';
 if ($FLAVOR =~ /WIN64/)
@@ -129,6 +131,7 @@ else        # Win32
     {
     $base_cflags= " $mf_cflag";
     my $f = $shlib?' /MD':' /MT';
+    $ff = "/fixed";
     $opt_cflags=$f.' /Ox /O2 /Ob2';
     $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG';
     $lflags="/nologo /subsystem:console /opt:ref";
@@ -334,7 +337,7 @@ sub do_lib_rule
                        $ret.="\tSET FIPS_SHA1_EXE=\$(FIPS_SHA1_EXE)\n";
                        $ret.="\tSET FIPS_TARGET=$target\n";
                        $ret.="\tSET FIPSLIB_D=\$(FIPSLIB_D)\n";
-                       $ret.="\t\$(FIPSLINK) \$(MLFLAGS) /map $base_arg $efile$target ";
+                       $ret.="\t\$(FIPSLINK) \$(MLFLAGS) $ff /map $base_arg $efile$target ";
                        $ret.="$name @<<\n  \$(SHLIB_EX_OBJ) $objs \$(EX_LIBS) ";
                        $ret.="\$(OBJ_D)${o}fips_premain.obj $ex\n<<\n";
                        }
@@ -371,7 +374,7 @@ sub do_link_rule
                $ret.="\tSET FIPS_TARGET=$target\n";
                $ret.="\tSET FIPS_SHA1_EXE=\$(FIPS_SHA1_EXE)\n";
                $ret.="\tSET FIPSLIB_D=\$(FIPSLIB_D)\n";
-               $ret.="\t\$(FIPSLINK) \$(LFLAGS) /map $efile$target @<<\n";
+               $ret.="\t\$(FIPSLINK) \$(LFLAGS) $ff /map $efile$target @<<\n";
                $ret.="\t\$(APP_EX_OBJ) $files \$(OBJ_D)${o}fips_premain.obj $libs\n<<\n";
                }
        else