Latest update
This commit is contained in:
@@ -145,6 +145,8 @@ my $gcc_devteam_warn = "-DDEBUG_UNUSED"
|
||||
# -Wlanguage-extension-token -- no, we use asm()
|
||||
# -Wunused-macros -- no, too tricky for BN and _XOPEN_SOURCE etc
|
||||
# -Wextended-offsetof -- no, needed in CMS ASN1 code
|
||||
# -Wunused-function -- no, it forces header use of safestack et al
|
||||
# DEFINE macros
|
||||
my $clang_devteam_warn = ""
|
||||
. " -Wswitch-default"
|
||||
. " -Wno-parentheses-equality"
|
||||
@@ -154,6 +156,7 @@ my $clang_devteam_warn = ""
|
||||
. " -Wincompatible-pointer-types-discards-qualifiers"
|
||||
. " -Wmissing-variable-declarations"
|
||||
. " -Wno-unknown-warning-option"
|
||||
. " -Wno-unused-function"
|
||||
;
|
||||
|
||||
# This adds backtrace information to the memory leak info. Is only used
|
||||
@@ -749,7 +752,11 @@ while (@argvcopy)
|
||||
}
|
||||
elsif (/^--strict-warnings$/)
|
||||
{
|
||||
$strict_warnings = 1;
|
||||
# Pretend that our strict flags is a C flag, and replace it
|
||||
# with the proper flags later on
|
||||
push @{$useradd{CFLAGS}}, '--ossl-strict-warnings';
|
||||
push @{$useradd{CXXFLAGS}}, '--ossl-strict-warnings';
|
||||
$strict_warnings=1;
|
||||
}
|
||||
elsif (/^--debug$/)
|
||||
{
|
||||
@@ -1500,6 +1507,7 @@ $config{openssl_api_defines} = [
|
||||
"OPENSSL_MIN_API=".($apitable->{$config{api} // ""} // -1)
|
||||
];
|
||||
|
||||
my @strict_warnings_collection=();
|
||||
if ($strict_warnings)
|
||||
{
|
||||
my $wopt;
|
||||
@@ -1507,26 +1515,17 @@ if ($strict_warnings)
|
||||
|
||||
die "ERROR --strict-warnings requires gcc[>=4] or gcc-alike"
|
||||
unless $gccver >= 4;
|
||||
foreach $wopt (split /\s+/, $gcc_devteam_warn)
|
||||
{
|
||||
push @{$config{cflags}}, $wopt
|
||||
unless grep { $_ eq $wopt } @{$config{cflags}};
|
||||
push @{$config{cxxflags}}, $wopt
|
||||
if ($config{CXX}
|
||||
&& !grep { $_ eq $wopt } @{$config{cxxflags}});
|
||||
}
|
||||
if (defined($predefined{__clang__}))
|
||||
{
|
||||
foreach $wopt (split /\s+/, $clang_devteam_warn)
|
||||
{
|
||||
push @{$config{cflags}}, $wopt
|
||||
unless grep { $_ eq $wopt } @{$config{cflags}};
|
||||
push @{$config{cxxflags}}, $wopt
|
||||
if ($config{CXX}
|
||||
&& !grep { $_ eq $wopt } @{$config{cxxflags}});
|
||||
}
|
||||
}
|
||||
push @strict_warnings_collection, (split /\s+/, $gcc_devteam_warn);
|
||||
push @strict_warnings_collection, (split /\s+/, $clang_devteam_warn)
|
||||
if (defined($predefined{__clang__}));
|
||||
}
|
||||
foreach (qw(CFLAGS CXXFLAGS))
|
||||
{
|
||||
$useradd{$_} = [ map { $_ eq '--ossl-strict-warnings'
|
||||
? @strict_warnings_collection
|
||||
: ( $_ ) }
|
||||
@{$useradd{$_}} ];
|
||||
}
|
||||
|
||||
unless ($disabled{"crypto-mdebug-backtrace"})
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user