# A custom generated version of CPAN::MakeMaker for YAML::MLDBM package CPAN::MakeMaker; $CUSTOM_VERSION = '0.11'; use strict; *include = sub {}; use vars qw(@EXPORT @EXPORT_OK %ARGS @MANIFEST @CLEAN); @EXPORT = qw(WriteMakefile include); @EXPORT_OK = qw(script prereq bundle inline); use base 'Exporter'; use ExtUtils::MakeMaker(); use File::Spec; use Cwd; # These should always be exported: *main::WriteMakefile = \&CPAN::MakeMaker::WriteMakefile; *main::prompt = \&ExtUtils::MakeMaker::prompt; *main::include = \&CPAN::MakeMaker::include; die "Please upgrade File::Spec. Version is too old to continue.\n" if $File::Spec::VERSION < 0.8; die "CPAN::MakeMaker should only be used inside Makefile.PL\n" unless $0 =~ /Makefile\.PL$/i and -f 'Makefile.PL'; sub WriteMakefile { my %args = @_; %ARGS = (); $ARGS{NAME} = $args{NAME} if defined $args{NAME}; $ARGS{VERSION} = $args{VERSION} if defined $args{VERSION}; $ARGS{VERSION_FROM} = $args{VERSION_FROM} if defined $args{VERSION_FROM}; $ARGS{NAME} = $main::NAME if defined $main::NAME; $ARGS{VERSION} = $main::VERSION if defined $main::VERSION; $ARGS{VERSION_FROM} = $main::VERSION_FROM if defined $main::VERSION_FROM; determine_NAME() unless defined $ARGS{NAME}; determine_VERSION() unless defined $ARGS{VERSION} or defined $ARGS{VERSION_FROM}; determine_CLEAN_FILES() if defined $main::CLEAN_FILES or defined @main::CLEAN_FILES; $ARGS{ABSTRACT} = $main::ABSTRACT if defined $main::ABSTRACT and $] >= 5.005; $ARGS{AUTHOR} = $main::AUTHOR if defined $main::AUTHOR and $] >= 5.005; $ARGS{PREREQ_PM} = \%main::PREREQ_PM if defined %main::PREREQ_PM; $ARGS{PL_FILES} = \%main::PL_FILES if defined %main::PL_FILES; $ARGS{EXE_FILES} = \@main::EXE_FILES if defined @main::EXE_FILES; my %Args = (%ARGS, %args); ExtUtils::MakeMaker::WriteMakefile(%Args); fix_up_makefile(); } sub determine_NAME { my $NAME = ''; my @modules = glob('*.pm'), grep {/\.pm$/} find_files('lib'); if (@modules == 1) { open MODULE, $modules[0] or die $!; while () { next if /^\s*#/; if (/^\s*package\s+(\w[\w:]*)\s*;\s*$/) { $NAME = $1; } last; } } die <parse_version($modules[0]); }; print STDERR $@ if $@; } die < $clean_files}; } sub fix_up_makefile { open MAKEFILE, '>> Makefile' or die "CPAN::MakeMaker::WriteMakefile can't append to Makefile:\n$!"; print MAKEFILE < MAKEFILE close MAKEFILE; } 1;