提交 2b91ec75 编写于 作者: R Rich Salz 提交者: Rich Salz

Put user flags last for priority.

Reviewed-by: NRichard Levitte <levitte@openssl.org>
上级 57758351
...@@ -643,7 +643,7 @@ foreach (@argvcopy) ...@@ -643,7 +643,7 @@ foreach (@argvcopy)
else # common if (/^[-+]/), just pass down... else # common if (/^[-+]/), just pass down...
{ {
$_ =~ s/%([0-9a-f]{1,2})/chr(hex($1))/gei; $_ =~ s/%([0-9a-f]{1,2})/chr(hex($1))/gei;
$user_cflags.=$_." "; $user_cflags.=" ".$_;
} }
} }
elsif ($_ =~ /^([^:]+):(.+)$/) elsif ($_ =~ /^([^:]+):(.+)$/)
...@@ -887,10 +887,10 @@ my $no_shared_warn=0; ...@@ -887,10 +887,10 @@ my $no_shared_warn=0;
my $no_user_cflags=0; my $no_user_cflags=0;
my $no_user_defines=0; my $no_user_defines=0;
if ($user_cflags ne "") { $config{cflags}="$user_cflags$config{cflags}"; } if ($user_cflags ne "") { $config{cflags}="$config{cflags}$user_cflags"; }
else { $no_user_cflags=1; } else { $no_user_cflags=1; }
if (@user_defines) { $config{defines}=[ @user_defines, @{$config{defines}} ]; } if (@user_defines) { $config{defines}=[ @{$config{defines}}, @user_defines ]; }
else { $no_user_defines=1; } else { $no_user_defines=1; }
# The DSO code currently always implements all functions so that no # The DSO code currently always implements all functions so that no
# applications will have to worry about that from a compilation point # applications will have to worry about that from a compilation point
...@@ -1141,30 +1141,32 @@ if (defined($config{api})) { ...@@ -1141,30 +1141,32 @@ if (defined($config{api})) {
if ($strict_warnings) if ($strict_warnings)
{ {
my $wopt; my $wopt;
my $addflags = '';
die "ERROR --strict-warnings requires gcc or clang" die "ERROR --strict-warnings requires gcc or clang"
unless $ecc eq 'gcc' || $ecc eq 'clang'; unless $ecc eq 'gcc' || $ecc eq 'clang';
foreach $wopt (split /\s+/, $gcc_devteam_warn) foreach $wopt (split /\s+/, $gcc_devteam_warn)
{ {
$config{cflags} .= " $wopt" unless ($config{cflags} =~ /(^|\s)$wopt(\s|$)/) $addflags .= " $wopt" unless ($config{cflags} =~ /(^|\s)$wopt(\s|$)/)
} }
if ($ecc eq "clang") if ($ecc eq "clang")
{ {
foreach $wopt (split /\s+/, $clang_devteam_warn) foreach $wopt (split /\s+/, $clang_devteam_warn)
{ {
$config{cflags} .= " $wopt" unless ($config{cflags} =~ /(^|\s)$wopt(\s|$)/) $addflags .= " $wopt" unless ($config{cflags} =~ /(^|\s)$wopt(\s|$)/)
} }
} }
if ($target !~ /^mingw/) if ($target !~ /^mingw/)
{ {
foreach $wopt (split /\s+/, $memleak_devteam_backtrace) foreach $wopt (split /\s+/, $memleak_devteam_backtrace)
{ {
$config{cflags} .= " $wopt" unless ($config{cflags} =~ /(^|\s)$wopt(\s|$)/) $addflags .= " $wopt" unless ($config{cflags} =~ /(^|\s)$wopt(\s|$)/)
} }
if ($target =~ /^BSD-/) if ($target =~ /^BSD-/)
{ {
$config{ex_libs} .= " -lexecinfo"; $config{ex_libs} .= " -lexecinfo";
} }
} }
$config{cflags} = "$addflags $config{cflags}" if $addflags ne '';
} }
# If we use the unified build, collect information from build.info files # If we use the unified build, collect information from build.info files
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册