1package ExtUtils::MM_Win95; 2 3use vars qw($VERSION @ISA); 4$VERSION = '0.04'; 5 6require ExtUtils::MM_Win32; 7@ISA = qw(ExtUtils::MM_Win32); 8 9use ExtUtils::MakeMaker::Config; 10 11 12=head1 NAME 13 14ExtUtils::MM_Win95 - method to customize MakeMaker for Win9X 15 16=head1 SYNOPSIS 17 18 You should not be using this module directly. 19 20=head1 DESCRIPTION 21 22This is a subclass of ExtUtils::MM_Win32 containing changes necessary 23to get MakeMaker playing nice with command.com and other Win9Xisms. 24 25=head2 Overriden methods 26 27Most of these make up for limitations in the Win9x/nmake command shell. 28Mostly its lack of &&. 29 30=over 4 31 32 33=item xs_c 34 35The && problem. 36 37=cut 38 39sub xs_c { 40 my($self) = shift; 41 return '' unless $self->needs_linking(); 42 ' 43.xs.c: 44 $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $*.xs > $*.c 45 ' 46} 47 48 49=item xs_cpp 50 51The && problem 52 53=cut 54 55sub xs_cpp { 56 my($self) = shift; 57 return '' unless $self->needs_linking(); 58 ' 59.xs.cpp: 60 $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $*.xs > $*.cpp 61 '; 62} 63 64=item xs_o 65 66The && problem. 67 68=cut 69 70sub xs_o { 71 my($self) = shift; 72 return '' unless $self->needs_linking(); 73 ' 74.xs$(OBJ_EXT): 75 $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $*.xs > $*.c 76 $(CCCMD) $(CCCDLFLAGS) -I$(PERL_INC) $(DEFINE) $*.c 77 '; 78} 79 80 81=item max_exec_len 82 83Win98 chokes on things like Encode if we set the max length to nmake's max 84of 2K. So we go for a more conservative value of 1K. 85 86=cut 87 88sub max_exec_len { 89 my $self = shift; 90 91 return $self->{_MAX_EXEC_LEN} ||= 1024; 92} 93 94 95=item os_flavor 96 97Win95 and Win98 and WinME are collectively Win9x and Win32 98 99=cut 100 101sub os_flavor { 102 my $self = shift; 103 return ($self->SUPER::os_flavor, 'Win9x'); 104} 105 106 107=back 108 109 110=head1 AUTHOR 111 112Code originally inside MM_Win32. Original author unknown. 113 114Currently maintained by Michael G Schwern C<schwern@pobox.com>. 115 116Send patches and ideas to C<makemaker@perl.org>. 117 118See http://www.makemaker.org. 119 120=cut 121 122 1231; 124