X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=author%2Fgenerate-mouse-tiny.pl;h=469032a7d4c4bc91e86f0f19dcc05b3206441cf3;hb=e0541d44a603aa8deea3eeef22c486a9c5a15c34;hp=04a46f959560674bd5c6a81be8bbe961cf1f4c3f;hpb=cae2769d6079cd96f6c56bebc771eeb586e601e2;p=gitmo%2FMouse.git diff --git a/author/generate-mouse-tiny.pl b/author/generate-mouse-tiny.pl index 04a46f9..469032a 100755 --- a/author/generate-mouse-tiny.pl +++ b/author/generate-mouse-tiny.pl @@ -4,8 +4,10 @@ use warnings; use File::Find; use File::Slurp 'slurp'; use List::MoreUtils 'uniq'; +use autodie; -unlink 'lib/Mouse/Tiny.pm'; +unlink 'lib/Mouse/Tiny.pm' + if -e 'lib/Mouse/Tiny.pm'; my @files; @@ -13,8 +15,9 @@ find({ wanted => sub { push @files, $_ if -f $_ - && !/Squirrel|MouseX|\.sw[po]$/ + && !/Squirrel/ && !/\bouse/ + && !/\.sw[po]$/ }, no_chdir => 1, }, 'lib'); @@ -26,7 +29,6 @@ for my $file (uniq 'lib/Mouse/Util.pm', sort @files) { $contents =~ s/__END__\b.*//s; # remove documentation $contents =~ s/1;\n*$//; # remove success indicator - $contents =~ s/^.*\n//; # remove shebang $contents =~ s/^use Mouse\S*\s*\n//mg; # we're already loading everything $contents =~ s/^use (Mouse\S*)\s*(.+);/BEGIN { $1->import($2) }/mg; @@ -41,7 +43,7 @@ print { $handle } << 'EOF'; # if regular Mouse is loaded, bail out unless ($INC{'Mouse.pm'}) { -eval q{ +eval <<'END_OF_TINY'; # tell Perl we already have all of the Mouse files loaded: EOF @@ -55,7 +57,7 @@ print { $handle } "\n# and now their contents\n\n"; print { $handle } $mouse_tiny; -print { $handle } "}; #eval\n} #unless\n\n"; +print { $handle } "END_OF_TINY\n} #unless\n\n"; print { $handle } << 'EOF'; package Mouse::Tiny;