summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorGurusamy Sarathy <gsar@cpan.org>1999-10-10 04:50:43 +0000
committerGurusamy Sarathy <gsar@cpan.org>1999-10-10 04:50:43 +0000
commit882a4479ec0ea121419a518af4f859f20d2c5dd1 (patch)
tree2c0ffa8813d812861eeb5c9b3ab45a9fc1f8f352 /lib
parent8ec448833410aa8e65370beaffc968d46272417a (diff)
downloadperl-882a4479ec0ea121419a518af4f859f20d2c5dd1.tar.gz
more basic support for building modules under Windows 95/98
(applied relevant parts from a patch suggested by Jochen Wiedmann <joe@ispsoft.de>) p4raw-id: //depot/perl@4330
Diffstat (limited to 'lib')
-rw-r--r--lib/ExtUtils/MM_Unix.pm32
1 files changed, 28 insertions, 4 deletions
diff --git a/lib/ExtUtils/MM_Unix.pm b/lib/ExtUtils/MM_Unix.pm
index 88240764d4..9d14e973cb 100644
--- a/lib/ExtUtils/MM_Unix.pm
+++ b/lib/ExtUtils/MM_Unix.pm
@@ -425,7 +425,19 @@ clean ::
');
# clean subdirectories first
for $dir (@{$self->{DIR}}) {
- push @m, "\t-cd $dir && \$(TEST_F) $self->{MAKEFILE} && \$(MAKE) clean\n";
+ if ($Is_Win32 && Win32::IsWin95()) {
+ push @m, <<EOT;
+ cd $dir
+ \$(TEST_F) $self->{MAKEFILE}
+ \$(MAKE) clean
+ cd ..
+EOT
+ }
+ else {
+ push @m, <<EOT;
+ -cd $dir && \$(TEST_F) $self->{MAKEFILE} && \$(MAKE) clean
+EOT
+ }
}
my(@otherfiles) = values %{$self->{XS}}; # .c files from *.xs files
@@ -3071,7 +3083,9 @@ sub realclean {
realclean purge :: clean
');
# realclean subdirectories first (already cleaned)
- my $sub = "\t-cd %s && \$(TEST_F) %s && \$(MAKE) %s realclean\n";
+ my $sub = ($Is_Win32 && Win32::IsWin95()) ?
+ "\tcd %s\n\t\$(TEST_F) %s\n\t\$(MAKE) %s realclean\n\tcd ..\n" :
+ "\t-cd %s && \$(TEST_F) %s && \$(MAKE) %s realclean\n";
foreach(@{$self->{DIR}}){
push(@m, sprintf($sub,$_,"$self->{MAKEFILE}.old","-f $self->{MAKEFILE}.old"));
push(@m, sprintf($sub,$_,"$self->{MAKEFILE}",''));
@@ -3215,12 +3229,22 @@ Helper subroutine for subdirs
sub subdir_x {
my($self, $subdir) = @_;
my(@m);
- qq{
+ if ($Is_Win32 && Win32::IsWin95()) {
+ return <<EOT;
+subdirs ::
+ cd $subdir
+ \$(MAKE) all \$(PASTHRU)
+ cd ..
+EOT
+ }
+ else {
+ return <<EOT;
subdirs ::
$self->{NOECHO}cd $subdir && \$(MAKE) all \$(PASTHRU)
-};
+EOT
+ }
}
=item subdirs (o)