Expanded boundary support for VC++ build.
This commit is contained in:
@@ -279,7 +279,8 @@ $ex_libs="$l_flags$ex_libs" if ($l_flags ne "");
|
|||||||
|
|
||||||
|
|
||||||
%shlib_ex_cflags=("SSL" => " -DOPENSSL_BUILD_SHLIBSSL",
|
%shlib_ex_cflags=("SSL" => " -DOPENSSL_BUILD_SHLIBSSL",
|
||||||
"CRYPTO" => " -DOPENSSL_BUILD_SHLIBCRYPTO");
|
"CRYPTO" => " -DOPENSSL_BUILD_SHLIBCRYPTO",
|
||||||
|
"FIPS" => " -DOPENSSL_BUILD_SHLIBCRYPTO");
|
||||||
|
|
||||||
if ($msdos)
|
if ($msdos)
|
||||||
{
|
{
|
||||||
@@ -362,6 +363,12 @@ for (;;)
|
|||||||
if ($key eq "LIBOBJ")
|
if ($key eq "LIBOBJ")
|
||||||
{ $libobj=&var_add($dir,$val); }
|
{ $libobj=&var_add($dir,$val); }
|
||||||
|
|
||||||
|
if ($key eq "FIPS_EX_OBJ")
|
||||||
|
{
|
||||||
|
$val =~ s|\.\./crypto/||g;
|
||||||
|
$fips_ex_obj=&var_add("crypto",$val);
|
||||||
|
}
|
||||||
|
|
||||||
if ($key eq "FIPSLIBDIR")
|
if ($key eq "FIPSLIBDIR")
|
||||||
{ $fipslibdir=$val;}
|
{ $fipslibdir=$val;}
|
||||||
|
|
||||||
@@ -373,6 +380,41 @@ for (;;)
|
|||||||
}
|
}
|
||||||
close(IN);
|
close(IN);
|
||||||
|
|
||||||
|
|
||||||
|
if ($fips)
|
||||||
|
{
|
||||||
|
|
||||||
|
foreach (split " ", $fips_ex_obj)
|
||||||
|
{
|
||||||
|
$fips_exclude_obj{$1} = 1 if (/\/([^\/]*)$/);
|
||||||
|
}
|
||||||
|
|
||||||
|
# $fips_exclude_obj{"bn_asm"} = 1;
|
||||||
|
|
||||||
|
my @ltmp = split " ", $lib_obj{"CRYPTO"};
|
||||||
|
|
||||||
|
|
||||||
|
$lib_obj{"CRYPTO"} = "";
|
||||||
|
|
||||||
|
foreach(@ltmp)
|
||||||
|
{
|
||||||
|
if (/\/bn_asm$/)
|
||||||
|
{
|
||||||
|
$lib_obj{"FIPS"} .= "$_ ";
|
||||||
|
}
|
||||||
|
elsif (!/\/([^\/]*)$/ || !exists $fips_exclude_obj{$1})
|
||||||
|
{
|
||||||
|
$lib_obj{"CRYPTO"} .= "$_ ";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($fipscanisterbuild)
|
||||||
|
{
|
||||||
|
$lib_obj{"FIPS"} .= $fips_ex_obj;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
if ($fipscanisterbuild)
|
if ($fipscanisterbuild)
|
||||||
{
|
{
|
||||||
$fips_canister_path = "\$(LIB_D)${o}fipscanister.o";
|
$fips_canister_path = "\$(LIB_D)${o}fipscanister.o";
|
||||||
@@ -1147,7 +1189,6 @@ sub read_options
|
|||||||
}
|
}
|
||||||
elsif (/^--fipscanisterbuild$/)
|
elsif (/^--fipscanisterbuild$/)
|
||||||
{
|
{
|
||||||
print STDERR "FIPS CANISTER BUILD\n";
|
|
||||||
$fipscanisterbuild=1;
|
$fipscanisterbuild=1;
|
||||||
}
|
}
|
||||||
elsif (/^([^=]*)=(.*)$/){ $VARS{$1}=$2; }
|
elsif (/^([^=]*)=(.*)$/){ $VARS{$1}=$2; }
|
||||||
|
|||||||
@@ -4,6 +4,8 @@
|
|||||||
|
|
||||||
$ssl= "ssleay32";
|
$ssl= "ssleay32";
|
||||||
|
|
||||||
|
my $mwex =" \$(FIPSLIB_D)${o}_chkstk.o \$(FIPSLIB_D)${o}_udivdi3.o \$(FIPSLIB_D)${o}_umoddi3.o";
|
||||||
|
|
||||||
if ($fips && !$shlib)
|
if ($fips && !$shlib)
|
||||||
{
|
{
|
||||||
$crypto="libeayfips32";
|
$crypto="libeayfips32";
|
||||||
@@ -136,7 +138,7 @@ sub do_lib_rule
|
|||||||
# $ret.="\t\$(RM) \$(O_$Name)\n";
|
# $ret.="\t\$(RM) \$(O_$Name)\n";
|
||||||
$ret.="$target: $objs\n";
|
$ret.="$target: $objs\n";
|
||||||
$ex =' advapi32.lib';
|
$ex =' advapi32.lib';
|
||||||
$ex.=" \$(FIPSLIB_D)${o}_chkstk.o" if $fips && !$fipscanisterbuild && $target =~ /O_CRYPTO/;
|
$ex.= $mwex if $fips && !$fipscanisterbuild && $target =~ /O_CRYPTO/;
|
||||||
$ret.="\t\$(MKLIB) $lfile$target @<<\n $objs $ex\n<<\n";
|
$ret.="\t\$(MKLIB) $lfile$target @<<\n $objs $ex\n<<\n";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -146,7 +148,7 @@ sub do_lib_rule
|
|||||||
$ex.=" $zlib_lib" if $zlib_opt == 1 && $target =~ /O_CRYPTO/;
|
$ex.=" $zlib_lib" if $zlib_opt == 1 && $target =~ /O_CRYPTO/;
|
||||||
if ($fips && $target =~ /O_CRYPTO/)
|
if ($fips && $target =~ /O_CRYPTO/)
|
||||||
{
|
{
|
||||||
$ex.=" \$(FIPSLIB_D)${o}_chkstk.o" unless $fipscanisterbuild;
|
$ex.= $mwex unless $fipscanisterbuild;
|
||||||
$ret.="$target: $objs \$(PREMAIN_DSO_EXE)\n";
|
$ret.="$target: $objs \$(PREMAIN_DSO_EXE)\n";
|
||||||
$ret.="\tSET FIPS_LINK=\$(LINK)\n";
|
$ret.="\tSET FIPS_LINK=\$(LINK)\n";
|
||||||
$ret.="\tSET FIPS_CC=\$(CC)\n";
|
$ret.="\tSET FIPS_CC=\$(CC)\n";
|
||||||
@@ -179,7 +181,7 @@ sub do_link_rule
|
|||||||
if ($standalone)
|
if ($standalone)
|
||||||
{
|
{
|
||||||
$ret.=" \$(LINK) \$(LFLAGS) $efile$target @<<\n\t";
|
$ret.=" \$(LINK) \$(LFLAGS) $efile$target @<<\n\t";
|
||||||
$ret.="\$(FIPSLIB_D)${o}_chkstk.o " if ($files =~ /O_FIPSCANISTER/ && !$fipscanisterbuild);
|
$ret.= "$mwex advapi32.lib " if ($files =~ /O_FIPSCANISTER/ && !$fipscanisterbuild);
|
||||||
$ret.="$files $libs\n<<\n";
|
$ret.="$files $libs\n<<\n";
|
||||||
}
|
}
|
||||||
elsif ($fips && !$shlib)
|
elsif ($fips && !$shlib)
|
||||||
|
|||||||
Reference in New Issue
Block a user