Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Perl ExtUtils::MakeMaker自定义目标_Perl_Makemaker - Fatal编程技术网

Perl ExtUtils::MakeMaker自定义目标

Perl ExtUtils::MakeMaker自定义目标,perl,makemaker,Perl,Makemaker,有没有办法让ExtUtils::MakeMaker生成自定义Makefile目标?比如说,我想做一些只有开发人员感兴趣的特定事情,比如运行pod和回归测试;我可以使用env变量来实现这一点,但记住这样的事情有点难。能够运行类似于makedevtest的东西将非常方便。使用ExtUtils::MakeMaker进行回归测试 ,makefiles附带了一个test目标,该目标在运行make test时运行当前目录中test.pl中的所有回归测试以及与glob(“t/*.t”)匹配的所有文件。您的典型

有没有办法让ExtUtils::MakeMaker生成自定义Makefile目标?比如说,我想做一些只有开发人员感兴趣的特定事情,比如运行pod和回归测试;我可以使用env变量来实现这一点,但记住这样的事情有点难。能够运行类似于
makedevtest
的东西将非常方便。

使用ExtUtils::MakeMaker进行回归测试 ,makefiles附带了一个
test
目标,该目标在运行
make test
时运行当前目录中
test.pl
中的所有回归测试以及与
glob(“t/*.t”)
匹配的所有文件。您的典型用法应该是:

perl Makefile.PL
make
make test
make install
您可以定义自己的
make
目标,以及手册页中可以设置的变量的一些信息

这是CPAN文章中的示例:

sub MY::postamble {
    return <<'MAKE_FRAG';
    $(MYEXTLIB): sdbm/Makefile
    cd sdbm && $(MAKE) all
    MAKE_FRAG
}
sub-MY::postamble{

return我已经阅读了MakeMaker的CPAN文档,关于如何实现这一点,它非常模糊。不确定您在MakeMaker文档中究竟看到了关于如何定义自定义目标的信息;请澄清。@AlexTokarev我已经在我的答案中添加了自定义目标的示例。谢谢,这应该行得通!这一段非常小,难怪我重复了好的。