Commit f729ba55 authored by Richard Levitte's avatar Richard Levitte
Browse files

Make CROSS_COMPILE another supported "make variable" in Configure



No more special casing for that one, and this means it gets displayed
by 'perl configdata.pm --make-variables' among all the others.

Reviewed-by: default avatarRich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/5247)
parent 8590b1f3
Loading
Loading
Loading
Loading
+16 −12
Original line number Diff line number Diff line
@@ -287,7 +287,6 @@ $config{prefix}="";
$config{openssldir}="";
$config{processor}="";
$config{libdir}="";
$config{cross_compile_prefix}="";
my $auto_threads=1;    # enable threads automatically? true by default
my $default_ranlib;

@@ -537,6 +536,7 @@ my %user = (
    CPPFLAGS    => [],  # -D, -I, -Wp,
    CPPDEFINES  => [],  # Alternative for -D
    CPPINCLUDES => [],  # Alternative for -I
    CROSS_COMPILE => undef,
    HASHBANGPERL=> undef,
    LD          => undef,
    LDFLAGS     => [],  # -L, -Wl,
@@ -548,6 +548,9 @@ my %user = (
    RCFLAGS     => [],
    RM          => undef,
   );
# Info about what "make variables" may be prefixed with the cross compiler
# prefix.  This should NEVER mention any such variable with a list for value.
my @user_crossable = qw ( AR AS CC CXX CPP LD MT RANLIB RC );
# The same but for flags given as Configure options.  These are *additional*
# input, as opposed to the VAR=string option that override the corresponding
# config target attributes
@@ -569,6 +572,7 @@ my %user_to_target = (
    # If not given here, the value is the lc of the key
    CPPDEFINES  => 'defines',
    CPPINCLUDES => 'includes',
    CROSS_COMPILE => 'cross_compile_prefix',
    LDFLAGS     => 'lflags',
    LDLIBS      => 'ex_libs',
   );
@@ -784,7 +788,7 @@ while (@argvcopy)
                        }
		elsif (/^--cross-compile-prefix=(.*)$/)
			{
			$config{cross_compile_prefix}=$1;
			$user{CROSS_COMPILE}=$1;
			}
		elsif (/^--config=(.*)$/)
			{
@@ -1039,10 +1043,6 @@ $target{dso_extension}=$target{shared_extension_simple};
($target{shared_import_extension}=$target{shared_extension_simple}.".a")
    if ($config{target} =~ /^(?:Cygwin|mingw)/);


$config{cross_compile_prefix} = env('CROSS_COMPILE')
    if $config{cross_compile_prefix} eq "";

# Allow overriding the names of some tools.  USE WITH CARE
# Note: only Unix cares about HASHBANGPERL...  that explains
# the default string.
@@ -2326,6 +2326,7 @@ foreach my $what (sort keys %disabled_info) {
    print OUT "    },\n";
}
print OUT ");\n";
print OUT 'my @user_crossable = qw( ', join (' ', @user_crossable), " );\n";
print OUT << 'EOF';
# If run directly, we can give some answers, and even reconfigure
unless (caller) {
@@ -2437,13 +2438,16 @@ _____
    }
    if ($dump || $makevars) {
        print "\nMakevars:\n\n";
        foreach (sort keys %makevars) {
            print '    ',$_,' ' x (16 - length $_),'= ',
                (ref $config{$makevars{$_}} eq 'ARRAY'
                 ? join(' ', @{$config{$makevars{$_}}})
                 : $config{$makevars{$_}}),
        foreach my $var (sort keys %makevars) {
            my $prefix = '';
            $prefix = $config{cross_compile_prefix}
                if grep { $var eq $_ } @user_crossable;
            print '    ',$var,' ' x (16 - length $var),'= ',
                (ref $config{$makevars{$var}} eq 'ARRAY'
                 ? join(' ', @{$config{$makevars{$var}}})
                 : $prefix.$config{$makevars{$var}}),
                "\n"
                if defined $config{$makevars{$_}};
                if defined $config{$makevars{$var}};
        }

        my @buildfile = ($config{builddir}, $config{build_file});