Manual Reference Pages  - ExtUtils::MM_Win32 (3pm)


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



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


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

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.

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 Add MM_Win32_VERSION.
special_targets Add .USESHELL target for dmake.
static_lib 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 Complicated stuff for Win32 that I don’t understand. :(
extra_clean_files Clean out some extra dll.{base,exp} files which might be generated by gcc. Otherwise, take out all *.pdb files.
perl_script Checks for the perl program under several common perl extensions.
xs_o This target is stubbed out. Not sure why.
pasthru All we send is -nologo to nmake to prevent it from printing its damned banner.
oneliner These are based on what does on Win98. They may be wrong for other Windows shells, I don’t know.
cd dmake can handle Unix style cd’ing but nmake (at least 1.5) cannot. It wants:

    cd dir
    cd ..

NOTE This cd can only go one level down. So far this sufficient for what MakeMaker needs.

max_exec_len nmake 1.50 limits command length to 2048 characters.
os_flavor Windows is Win32.

perl v5.8.8 ExtUtils::MM_Win32 (3pm) 2001-09-21
blog comments powered by Disqus