Dave Hoover > Carp-Datum-0.1.3 > Carp::Datum::MakeMaker

Download:
Carp-Datum-0.1.3.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  1
Open  0
View/Report Bugs
Source  

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).

syntax highlighting: