/WX
);
-# This adds backtrace information to the memory leak info. Is only used
-# when crypto-mdebug-backtrace is enabled.
-my $memleak_devteam_backtrace = "-rdynamic";
-
my $strict_warnings = 0;
# As for $BSDthreads. Idea is to maintain "collective" set of flags,
# For developers: keep it sorted alphabetically
my @disablables = (
- "ktls",
"afalgeng",
"aria",
"asan",
"cms",
"comp",
"crypto-mdebug",
- "crypto-mdebug-backtrace",
"ct",
"deprecated",
"des",
"fuzz-afl",
"gost",
"idea",
+ "ktls",
"legacy",
"makedepend",
"md2",
my %deprecated_disablables = (
"ssl2" => undef,
"buf-freelists" => undef,
+ "crypto-mdebug-backtrace" => undef,
"hw" => "hw", # causes cascade, but no macro
"hw-padlock" => "padlockeng",
"ripemd" => "rmd160",
"legacy" => [ "md2" ],
"cmp" => [ "crmf" ],
+
+ # Padlock engine uses low-level AES APIs which are deprecated
+ sub { $disabled{"deprecated"}
+ && (!defined $config{"api"} || $config{"api"} >= 30000) }
+ => [ "padlockeng" ]
);
# Avoid protocol support holes. Also disable all versions below N, if version
&usage if ($#ARGV < 0);
-# For the "make variables" CINCLUDES and CDEFINES, we support lists with
+# For the "make variables" CPPINCLUDES and CPPDEFINES, we support lists with
# platform specific list separators. Users from those platforms should
# recognise those separators from how you set up the PATH to find executables.
# The default is the Unix like separator, :, but as an exception, we also
if (defined $value) {
if (ref $user{$_} eq 'ARRAY') {
- $user{$_} = [ split /$list_separator_re/, $value ];
+ if ($_ eq 'CPPDEFINES' || $_ eq 'CPPINCLUDES') {
+ $user{$_} = [ split /$list_separator_re/, $value ];
+ } else {
+ $user{$_} = [ $value ];
+ }
} elsif (!defined $user{$_}) {
$user{$_} = $value;
}
push @{$config{openssl_sys_defines}}, "OPENSSL_SYS_$target{sys_id}";
}
-unless ($disabled{asm}) {
-}
-
my %predefined_C = compiler_predefined($config{CROSS_COMPILE}.$config{CC});
my %predefined_CXX = $config{CXX}
? compiler_predefined($config{CROSS_COMPILE}.$config{CXX})
: ();
+unless ($disabled{asm}) {
+ # big endian systems can use ELFv2 ABI
+ if ($target eq "linux-ppc64") {
+ $target{perlasm_scheme} = "linux64v2" if ($predefined_C{_CALL_ELF} == 2);
+ }
+}
+
# Check for makedepend capabilities.
if (!$disabled{makedepend}) {
if ($config{target} =~ /^(VC|vms)-/) {
: ( $_ ) }
@{$config{CFLAGS}} ];
-unless ($disabled{"crypto-mdebug-backtrace"})
- {
- foreach my $wopt (split /\s+/, $memleak_devteam_backtrace)
- {
- push @{$config{cflags}}, $wopt
- unless grep { $_ eq $wopt } @{$config{cflags}};
- }
- if ($target =~ /^BSD-/)
- {
- push @{$config{ex_libs}}, "-lexecinfo";
- }
- }
-
unless ($disabled{afalgeng}) {
$config{afalgeng}="";
if (grep { $_ eq 'afalgeng' } @{$target{enable}}) {