Add fips option into Configure, disable endian code for no-asm and FIPS.

Make shared library default for fips.
This commit is contained in:
Dr. Stephen Henson 2011-01-30 00:01:09 +00:00
parent cc8bd54569
commit 9fdb2cc592

View file

@ -833,6 +833,10 @@ PROCESS_ARGS:
} }
elsif (/^386$/) elsif (/^386$/)
{ $processor=386; } { $processor=386; }
elsif (/^fips$/)
{
$fips=1;
}
elsif (/^rsaref$/) elsif (/^rsaref$/)
{ {
# No RSAref support any more since it's not needed. # No RSAref support any more since it's not needed.
@ -1022,6 +1026,10 @@ print "Configuring for $target\n";
&usage if (!defined($table{$target})); &usage if (!defined($table{$target}));
if ($fips)
{
delete $disabled{"shared"} if ($disabled{"shared"} eq "default");
}
foreach (sort (keys %disabled)) foreach (sort (keys %disabled))
{ {
@ -1310,8 +1318,11 @@ if ($no_asm)
$cpuid_obj=$bn_obj= $cpuid_obj=$bn_obj=
$des_obj=$aes_obj=$bf_obj=$cast_obj=$rc4_obj=$rc5_obj=$cmll_obj= $des_obj=$aes_obj=$bf_obj=$cast_obj=$rc4_obj=$rc5_obj=$cmll_obj=
$modes_obj=$sha1_obj=$md5_obj=$rmd160_obj=$wp_obj=""; $modes_obj=$sha1_obj=$md5_obj=$rmd160_obj=$wp_obj="";
$cflags=~s/\-D[BL]_ENDIAN// if ($fips);
$thread_cflags=~s/\-D[BL]_ENDIAN// if ($fips);
} }
print STDERR "No shared if $no_shared\n";
if (!$no_shared) if (!$no_shared)
{ {
$cast_obj=""; # CAST assembler is not PIC $cast_obj=""; # CAST assembler is not PIC
@ -1347,7 +1358,7 @@ if ($zlib)
my $shared_mark = ""; my $shared_mark = "";
if ($shared_target eq "") if ($shared_target eq "")
{ {
$no_shared_warn = 1 if !$no_shared; $no_shared_warn = 1 if !$no_shared && !$fips;
$no_shared = 1; $no_shared = 1;
} }
if (!$no_shared) if (!$no_shared)