"hmac",
"hw(-.+)?",
"idea",
- "locking",
+ "makedepend",
"md2",
"md4",
"md5",
{ }
elsif (/^dynamic-engine$/)
{ }
+ elsif (/^makedepend$/)
+ { }
elsif (/^zlib-dynamic$/)
{ }
elsif (/^sse2$/)
}
my $ecc = $target{cc};
-if ($^O ne "VMS") {
+if ($^O ne "VMS" && !$disabled{makedepend}) {
# Is the compiler gcc or clang? $ecc is used below to see if
# error-checking can be turned on.
my $ccpcc = "$config{cross_compile_prefix}$target{cc}";
- $config{makedepprog} = 'makedepend';
+ $config{makedepprog} = which('makedepend');
open(PIPE, "$ccpcc --version 2>&1 | head -2 |");
while ( <PIPE> ) {
- $config{makedepprog} = $ccpcc if /clang|gcc/;
+ # Find the version number and save the major.
+ m|(?:.*)\b(\d+)\.\d+\.\d+\b(?:.*)|;
+ # We know that GNU C version 3 and up as well as all clang
+ # versions support dependency generation
+ $config{makedepprog} = $ccpcc if /clang/ || (/gcc/ && $1 > 3);
$ecc = "clang" if /clang/;
$ecc = "gcc" if /gcc/;
}
close(PIPE);
+
+ $disabled{makedepend} = "unavailable" unless $config{makedepprog};
}
+
# Deal with bn_ops ###################################################
$config{bn_ll} =0;
# ALL MODIFICATIONS TO %config and %target MUST BE DONE FROM HERE ON
-$config{afalg}="";
-if ($target =~ m/^linux/) {
- my $minver = 4*10000 + 1*100 + 0;
- if ($config{cross_compile_prefix} eq "") {
- my $verstr = `uname -r`;
- my ($ma, $mi1, $mi2) = split("\\.", $verstr);
- ($mi2) = $mi2 =~ /(\d+)/;
- my $ver = $ma*10000 + $mi1*100 + $mi2;
- if ($ver < $minver) {
- $disabled{afalg} = "too-old-kernel";
- } else {
- push @{$config{engdirs}}, "afalg";
+unless ($disabled{engine}) {
+ $config{afalg}="";
+ if ($target =~ m/^linux/) {
+ my $minver = 4*10000 + 1*100 + 0;
+ if ($config{cross_compile_prefix} eq "") {
+ my $verstr = `uname -r`;
+ my ($ma, $mi1, $mi2) = split("\\.", $verstr);
+ ($mi2) = $mi2 =~ /(\d+)/;
+ my $ver = $ma*10000 + $mi1*100 + $mi2;
+ if ($ver < $minver) {
+ $disabled{afalg} = "too-old-kernel";
+ } else {
+ push @{$config{engdirs}}, "afalg";
+ }
}
+ } else {
+ $disabled{afalg} = "not-linux";
}
-} else {
- $disabled{afalg} = "not-linux";
}
push @{$config{openssl_other_defines}}, "OPENSSL_NO_AFALGENG" if ($disabled{afalg});
$l1 =~ s/\\$//; $l1.$l2 }),
# Info we're looking for
qr/^\s*IF\[((?:\\.|[^\\\]])*)\]\s*$/
- => sub { push @skip, !! $1; },
+ => sub {
+ if (! @skip || $skip[$#skip] >= 0) {
+ push @skip, !! $1;
+ } else {
+ push @skip, -1;
+ }
+ },
qr/^\s*ELSIF\[((?:\\.|[^\\\]])*)\]\s*$/
=> sub { die "ELSIF out of scope" if ! @skip;
die "ELSIF following ELSE" if abs($skip[$#skip]) == 2;
print "IsMK1MF =", ($builder eq "mk1mf" ? "yes" : "no"), "\n";
print "CC =$target{cc}\n";
print "CFLAG =$target{cflags} $config{cflags}\n";
+print "SHARED_CFLAG =$target{shared_cflag}\n";
print "DEFINES =",join(" ", @{$target{defines}}, @{$config{defines}}),"\n";
print "LFLAG =$target{lflags}\n";
print "PLIB_LFLAG =$target{plib_lflags}\n";
my $path;
foreach $path (split /:/, $ENV{PATH})
{
- if (-f "$path/$name$target{exe_extension}" and -x _)
+ my $fullpath = "$path/$name$target{exe_extension}";
+ if (-f $fullpath and -x $fullpath)
{
- return "$path/$name$target{exe_extension}" unless ($name eq "perl" and
- system("$path/$name$target{exe_extension} -e " . '\'exit($]<5.0);\''));
+ return $fullpath
+ unless ($name eq "perl" and
+ system("$fullpath -e " . '\'exit($]<5.0);\''));
}
}
}