è²ã æ¸ããããã®æºã¾ã£ã¦ããã©ããã£ããã£ãExtUtilsã«é¢ããä¿®æ£ãæ¸ãã¦ã¿ãã
èªåã®MANIFEST.SKIPãç¡ãå ´åãExtUtils-Manifestã«å梱ããã¦ãããã®ã使ããããã§ãèªåã®MANIFEST.SKIPãæ®éã«ä½ã£ã¦ãã¾ãã¨ãExtUtils-Manifestã®æ¹ã§æ´æ°ããã¦ã追å¾ã§ããªããªã£ã¦ãã¾ãã
ããã§ãMYã®ä»çµã¿ã使ã£ã¦ããããã®âãMakefile.PLã«æ¸ããã
use File::Basename qw(dirname); sub MY::dist_basics { my ( $self, @args ) = @_; my $dist_basics = $self->MM::dist_basics(@args); $dist_basics =~ s{^(manifest\s*:.*?)$}{$1 MANIFEST.SKIP}msx; ( my $format = <<'END_OF_DIST_BASICS') =~ s/^[ ]{4}/\t/gmsx; MANIFEST.SKIP: %s/MANIFEST.SKIP cat $< > $@ echo '# Avoid archives of this distribution' >> $@ echo '^%s-' >> $@ END_OF_DIST_BASICS $dist_basics .= sprintf $format, dirname( $self->{MAKEMAKER} ), $self->{FULLEXT}; return $dist_basics; }
ï¼ã¡ãªã¿ã« (my $str = '...') =~ s/^[ ]{4}/\t/gmsx ã¯çµæ§ä½¿ããã¿ãæåã¨ç©ºç½æåã¯æ··ä¹±ã®å ãªã®ã§ãã¿ãæåã¯ä½¿ããªããã¨ã«ãã¦ããï¼
ããã§Makefileã
manifest : MANIFEST.SKIP $(PERLRUN) "-MExtUtils::Manifest=mkmanifest" -e mkmanifest MANIFEST.SKIP: /usr/local/lib/perl5/5.10.0/ExtUtils/MANIFEST.SKIP cat $< > $@ echo '# Avoid archives of this distribution' >> $@ echo '^MyApp-' >> $@
ã¨ãªãã®ã§ãmake manifestãã度ã«ææ°ã®MANIFEST.SKIPã«è¿½å¾ã§ããã