NAME¶
Carp::Datum::MakeMaker - Offer to strip Carp::Datum calls statically
SYNOPSIS¶
 # Put this at the top of the Makefile.PL for your module
 use ExtUtils::MakeMaker;       # you may omit this line
 use Carp::Datum::MakeMaker;
DESCRIPTION¶
The "Carp::Datum::MakeMaker" module supersedes the regular
  
WriteMakefile() routine of "ExtUtils::MakeMaker".
When running the Makefile.PL from a module interactively, the user will be asked
  whether calls to "Carp::Datum" should be stripped at build time.
By default, or when running non-interactively, most calls to Carp::Datum
  routines will be removed: the "datum_strip" program will be invoked
  to filter *.pm files during the build process. This program is a mere wrapper
  for the 
datum_strip() routine, defined in
  "Carp::Datum::Strip".
The only call that will not be stripped is the 
DTRACE() call. However, it
  will be dynamically remapped to a "Log::Agent" call. It cannot be
  statically remapped because of its baroque interface.
At the top of Makefile.PL, insert
    use Carp::Datum::MakeMaker;
which will take care of loading "ExtUtils::MakeMaker". Note that it
  makes sense to refer to this module, since "Carp::Datum" is being
  used internally, and therefore the user will not be able to install the module
  if they do not have "Carp::Datum" already installed.
If you wish to be nicer about "Carp::Datum" not being installed, you
  can say instead:
    use ExtUtils::MakeMaker;
    eval "use Carp::Datum::MakeMaker;";
    WriteMakefile(
        'NAME'      => "Your::module::name",
        'PREREQ_PM' => {
            'Carp::Datum'  => '0.100',
        },
    );
It will allow them to run the Makefile.PL, and yet be reminded about the missing
  "Carp::Datum" module. Chances are they won't be able to go much
  farther though...
AUTHORS¶
Christophe Dehaudt and Raphael Manfredi are the original authors.
Send bug reports, hints, tips, suggestions to Dave Hoover at
  <squirrel@cpan.org>.
SEE ALSO¶
Carp::Datum::Strip(3), 
ExtUtils::MakeMaker(3).