diff options
author | Richard Levitte <levitte@openssl.org> | 2020-03-03 00:06:52 +0100 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2020-06-28 18:34:35 +0200 |
commit | 081436bf732c0889b2649426df4e1c23c671d6d7 (patch) | |
tree | eb1f9073258303a8565f8ac50da00f5f49b61204 | |
parent | a3310b182ca3952c2876792b35035b54a4c77713 (diff) |
util/perl/OpenSSL/config.pm, Configure: move check of target with compiler
Previously, ./config would check if "$target-$CC", then "$target"
exists and choose the one that does. This is now moved to Configure.
Reviewed-by: Tim Hudson <tjh@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/11230)
-rwxr-xr-x | Configure | 19 | ||||
-rwxr-xr-x | util/perl/OpenSSL/config.pm | 18 |
2 files changed, 18 insertions, 19 deletions
@@ -1166,7 +1166,24 @@ if ($d) { } } -&usage if !$table{$target} || $table{$target}->{template}; +if ($target) { + # It's possible that we have different config targets for specific + # toolchains, so we try to detect them, and go for the plain config + # target if not. + my $found; + foreach ( ( "$target-$user{CC}", "$target", undef ) ) { + $found=$_ if $table{$_} && !$table{$_}->{template}; + last if $found; + } + $target = $found; +} else { + # If we don't have a config target now, we try the C compiler as we + # fallback + my $cc = $user{CC} // 'cc'; + $target = $cc if $table{$cc} && !$table{$cc}->{template}; +} + +&usage unless $target; $config{target} = $target; my %target = resolve_config($target); diff --git a/util/perl/OpenSSL/config.pm b/util/perl/OpenSSL/config.pm index 62fc5ce312..5e0372ac2e 100755 --- a/util/perl/OpenSSL/config.pm +++ b/util/perl/OpenSSL/config.pm @@ -867,24 +867,6 @@ EOF return $OUT; } -# Append $CC to the target if that's in the Config list. -sub check_target_exists { - my $OUT = shift; - my %table; - - open T, "$PERL $WHERE/Configure LIST|" or die "Can't get LIST, $!"; - while ( <T> ) { - chop; - $table{$_} = 1; - } - close T; - return "$OUT-$CC" if defined $table{"$OUT-$CC"}; - return "$OUT" if defined $table{$OUT}; - print "This system ($OUT) is not supported. See INSTALL for details.\n"; - exit 1; -} - - ### ### MAIN PROCESSING ### |