.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man v6.0.2 (Pod::Simple 3.48) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Required to disable full justification in groff 1.23.0. .if n .ds AD l .\" ======================================================================== .\" .IX Title "ExtUtils::MakeMaker::CPANfile 3" .TH ExtUtils::MakeMaker::CPANfile 3 2026-10-25 "perl v5.44.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH NAME ExtUtils::MakeMaker::CPANfile \- cpanfile support for EUMM .SH SYNOPSIS .IX Header "SYNOPSIS" .Vb 2 \& # Makefile.PL \& use ExtUtils::MakeMaker::CPANfile; \& \& WriteMakefile( \& NAME => \*(AqFoo::Bar\*(Aq, \& AUTHOR => \*(AqA.U.Thor \*(Aq, \& ); \& \& # cpanfile \& requires \*(AqExtUtils::MakeMaker\*(Aq => \*(Aq6.17\*(Aq; \& on test => sub { \& requires \*(AqTest::More\*(Aq => \*(Aq0.88\*(Aq; \& }; .Ve .SH DESCRIPTION .IX Header "DESCRIPTION" ExtUtils::MakeMaker::CPANfile loads \f(CW\*(C`cpanfile\*(C'\fR in your distribution and modifies parameters for \f(CW\*(C`WriteMakefile\*(C'\fR in your Makefile.PL. Just use it instead of ExtUtils::MakeMaker (which should be loaded internally), and prepare \f(CW\*(C`cpanfile\*(C'\fR. .PP As of version 0.03, ExtUtils::MakeMaker::CPANfile also removes WriteMakefile parameters that the installed version of ExtUtils::MakeMaker doesn\*(Aqt know, to avoid warnings. .SH LIMITATION .IX Header "LIMITATION" .SS "complex version ranges" .IX Subsection "complex version ranges" As of this writing, complex version ranges are simply ignored. .SS "dynamic config" .IX Subsection "dynamic config" Strictly speaking, \f(CW\*(C`cpanfile\*(C'\fR is a Perl script, and may have some conditions in it. That said, you don\*(Aqt need to run Makefile.PL to determine prerequisites in most cases. Hence, as of 0.06, ExtUtils::MakeMaker::CPANfile sets \f(CW\*(C`dynamic_config\*(C'\fR to false by default. If you do need a CPAN installer to run Makefile.PL to customize prerequisites dynamically, set \f(CW\*(C`dynamic_config\*(C'\fR to true explicitly (via META_ADD/META_MERGE). .SH "FOR MODULE AUTHORS" .IX Header "FOR MODULE AUTHORS" Though the minimum version requirement of ExtUtils::MakeMaker is arbitrary set to 6.17 (the one bundled in Perl 5.8.1), you need at least EUMM 6.52 (with CONFIGURE_REQUIRES support) when you release a distribution. .SH LICENSE .IX Header "LICENSE" Copyright (C) Kenichi Ishigaki. .PP This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. .SH AUTHOR .IX Header "AUTHOR" Kenichi Ishigaki