summaryrefslogtreecommitdiff
path: root/cpan
diff options
context:
space:
mode:
authorSisyphus <sisyphus@cpan.org>2014-12-30 12:56:58 +1100
committerTony Cook <tony@develop-help.com>2016-01-25 11:11:47 +1100
commit9cc600a92e7d683d4b053eb5e84ca8654ce82ac4 (patch)
tree3fc69f05d4bfe3923c4980457b9161827c4ba771 /cpan
parent194a8165f43449a530074c85b0b3cca077a58672 (diff)
downloadperl-9cc600a92e7d683d4b053eb5e84ca8654ce82ac4.tar.gz
Win32 gmake needs SHELL to be specified
Signed-off-by: Ed J <mohawk2@users.noreply.github.com>
Diffstat (limited to 'cpan')
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm17
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm11
2 files changed, 25 insertions, 3 deletions
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
index 535b1f3fd7..d0e4410ce3 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
@@ -317,8 +317,8 @@ sub const_cccmd {
=item const_config (o)
-Defines a couple of constants in the Makefile that are imported from
-%Config.
+Sets SHELL if needed, then defines a couple of constants in the Makefile
+that are imported from %Config.
=cut
@@ -326,7 +326,8 @@ sub const_config {
# --- Constants Sections ---
my($self) = shift;
- my @m = <<"END";
+ my @m = $self->specify_shell(); # Usually returns empty string
+ push @m, <<"END";
# These definitions are from config.sh (via $INC{'Config.pm'}).
# They may have been overridden via Makefile.PL or on the command line.
@@ -3176,6 +3177,16 @@ MAKE_FRAG
return $m;
}
+=item specify_shell
+
+Specify SHELL if needed - not done on Unix.
+
+=cut
+
+sub specify_shell {
+ return '';
+}
+
=item quote_paren
Backslashes parentheses C<()> in command line arguments.
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm
index 47ce4792d8..852223b491 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm
@@ -232,6 +232,17 @@ sub platform_constants {
return $make_frag;
}
+=item specify_shell
+
+Set SHELL to $ENV{COMSPEC} only if make is type 'gmake'.
+
+=cut
+
+sub specify_shell {
+ my $self = shift;
+ return '' unless $self->is_make_type('gmake');
+ "\nSHELL = $ENV{COMSPEC}\n";
+}
=item constants