home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / share / perl / 5.8.8 / ExtUtils / MM_Win95.pm < prev    next >
Encoding:
Perl POD Document  |  2006-07-07  |  1.9 KB  |  124 lines

  1. package ExtUtils::MM_Win95;
  2.  
  3. use vars qw($VERSION @ISA);
  4. $VERSION = '0.04';
  5.  
  6. require ExtUtils::MM_Win32;
  7. @ISA = qw(ExtUtils::MM_Win32);
  8.  
  9. use ExtUtils::MakeMaker::Config;
  10.  
  11.  
  12. =head1 NAME
  13.  
  14. ExtUtils::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.  
  22. This is a subclass of ExtUtils::MM_Win32 containing changes necessary
  23. to get MakeMaker playing nice with command.com and other Win9Xisms.
  24.  
  25. =head2 Overriden methods
  26.  
  27. Most of these make up for limitations in the Win9x/nmake command shell.
  28. Mostly its lack of &&.
  29.  
  30. =over 4
  31.  
  32.  
  33. =item xs_c
  34.  
  35. The && problem.
  36.  
  37. =cut
  38.  
  39. sub 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.  
  51. The && problem
  52.  
  53. =cut
  54.  
  55. sub 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.  
  66. The && problem.
  67.  
  68. =cut
  69.  
  70. sub 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.  
  83. Win98 chokes on things like Encode if we set the max length to nmake's max
  84. of 2K.  So we go for a more conservative value of 1K.
  85.  
  86. =cut
  87.  
  88. sub max_exec_len {
  89.     my $self = shift;
  90.  
  91.     return $self->{_MAX_EXEC_LEN} ||= 1024;
  92. }
  93.  
  94.  
  95. =item os_flavor
  96.  
  97. Win95 and Win98 and WinME are collectively Win9x and Win32
  98.  
  99. =cut
  100.  
  101. sub os_flavor {
  102.     my $self = shift;
  103.     return ($self->SUPER::os_flavor, 'Win9x');
  104. }
  105.  
  106.  
  107. =back
  108.  
  109.  
  110. =head1 AUTHOR
  111.  
  112. Code originally inside MM_Win32.  Original author unknown.
  113.  
  114. Currently maintained by Michael G Schwern C<schwern@pobox.com>.
  115.  
  116. Send patches and ideas to C<makemaker@perl.org>.
  117.  
  118. See http://www.makemaker.org.
  119.  
  120. =cut
  121.  
  122.  
  123. 1;
  124.