-- Perl 5.8.6 documentation --
ExtUtils::MM_Win32

NAME

ExtUtils::MM_Win32 - methods to override UN*X behaviour in ExtUtils::MakeMaker

SYNOPSIS

 use ExtUtils::MM_Win32; # Done internally by ExtUtils::MakeMaker if needed

DESCRIPTION

See ExtUtils::MM_Unix for a documentation of the methods provided there. This package overrides the implementation of these methods, not the semantics.

Overridden methods

  • dlsyms
  • replace_manpage_separator
  • Changes the path separator with .

  • maybe_command
  • Since Windows has nothing as simple as an executable bit, we check the file extension.

    The PATHEXT env variable will be used to get a list of extensions that might indicate a command, otherwise .com, .exe, .bat and .cmd will be used by default.

  • find_tests
  • The Win9x shell does not expand globs and I'll play it safe and assume other Windows variants don't either.

    So we do it for them.

  • init_DIRFILESEP
  • Using \ for Windows.

  • init_others
  • Override some of the Unix specific commands with portable ExtUtils::Command ones.

    Also provide defaults for LD and AR in case the %Config values aren't set.

    LDLOADLIBS's default is changed to $Config{libs}.

    Adjustments are made for Borland's quirks needing -L to come first.

  • init_platform (o)
  • Add MM_Win32_VERSION.

  • platform_constants (o)
  • special_targets (o)
  • Add .USESHELL target for dmake.

  • static_lib (o)
  • Changes how to run the linker.

    The rest is duplicate code from MM_Unix. Should move the linker code to its own method.

  • dynamic_lib (o)
  • Complicated stuff for Win32 that I don't understand. :(

  • clean
  • Clean out some extra dll.{base,exp} files which might be generated by gcc. Otherwise, take out all *.pdb files.

  • init_linker
  • perl_script
  • Checks for the perl program under several common perl extensions.

  • xs_o (o)
  • This target is stubbed out. Not sure why.

  • pasthru (o)
  • All we send is -nologo to nmake to prevent it from printing its damned banner.

  • oneliner (o)
  • These are based on what command.com does on Win98. They may be wrong for other Windows shells, I don't know.

  • max_exec_len
  • nmake 1.50 limits command length to 2048 characters.

  • os_flavor
  • Windows is Win32.