Carp::Datum::MakeMaker - Offer to strip Carp::Datum calls statically |
Carp::Datum::MakeMaker - Offer to strip Carp::Datum calls statically
# Put this at the top of the Makefile.PL for your module use ExtUtils::MakeMaker; # you may omit this line use Carp::Datum::MakeMaker;
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...
Christophe Dehaudt and Raphael Manfredi are the original authors.
Send bug reports, hints, tips, suggestions to Dave Hoover at <squirrel@cpan.org>.
Carp::Datum::Strip(3), ExtUtils::MakeMaker(3).
Carp::Datum::MakeMaker - Offer to strip Carp::Datum calls statically |