use strict; use warnings; package Module::Install::AutoManifest; use Module::Install::Base; BEGIN { our $VERSION = '0.003'; our $ISCORE = 1; our @ISA = qw(Module::Install::Base); } sub auto_manifest { my ($self) = @_; return unless $Module::Install::AUTHOR; die "auto_manifest requested, but no MANIFEST.SKIP exists\n" unless -e "MANIFEST.SKIP"; if (-e "MANIFEST") { unlink('MANIFEST') or die "Can't remove MANIFEST: $!"; } $self->postamble(<<"END"); create_distdir: manifest_clean manifest distclean :: manifest_clean manifest_clean: \t\$(RM_F) MANIFEST END } 1; __END__ =head1 NAME Module::Install::AutoManifest - generate MANIFEST automatically =head1 VERSION Version 0.003 =cut =head1 SYNOPSIS In Makefile.PL: auto_manifest; In MANIFEST.SKIP: # put your list of patterns here ^\.git/ ^your-crazy-files-whatever$ In MANIFEST: Nothing, remove it =head1 METHODS =head2 auto_manifest This extension to L adds behavior for automatically generating MANIFEST. Before C, C will be run for you automatically. Likewise, C will remove your automatically-generated MANIFEST. =head1 AUTHOR Hans Dieter Pearcey, C<< >> =head1 BUGS Please report any bugs or feature requests to C, or through the web interface at L. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes. =head1 SUPPORT You can find documentation for this module with the perldoc command. perldoc Module::Install::AutoManifest You can also look for information at: =over 4 =item * RT: CPAN's request tracker L =item * AnnoCPAN: Annotated CPAN documentation L =item * CPAN Ratings L =item * Search CPAN L =back =head1 SEE ALSO L =head1 COPYRIGHT & LICENSE Copyright 2008 Hans Dieter Pearcey, all rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. =cut 1; # End of Module::Install::AutoManifest