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.
-
init_DIRFILESEP
Using \ for Windows, except for "gmake" where it is /.
-
init_tools
Override some of the slower, portable commands with Windows specific ones.
-
init_others
Override the default link and compile tools.
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.
- platform_constants
-
constants
Add MAXLINELENGTH for dmake before all the constants are output.
-
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.
- init_linker
-
perl_script
Checks for the perl program under several common perl extensions.
- quote_dep
-
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.
-
arch_check (override)
Normalize all arguments for consistency of comparison.
-
oneliner
These are based on what command.com 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 dir1\dir2 command another_command cd ..\..
-
max_exec_len
nmake 1.50 limits command length to 2048 characters.
-
os_flavor
Windows is Win32.
-
cflags
Defines the PERLDLL symbol if we are configured for static building since all code destined for the perl5xx.dll must be compiled with the PERLDLL symbol defined.
© 1993–2016 Larry Wall and others
Licensed under the GNU General Public License version 1 or later, or the Artistic License.
The Perl logo is a trademark of the Perl Foundation.
https://perldoc.perl.org/5.22.0/ExtUtils/MM_Win32.html