Perl模块允许'make'选项

时间:2013-05-27 19:01:06

标签: perl makefile perl-module

我想知道是否有某种Perl模块/包允许简单的类似make的功能。

例如,有什么东西可以包装一个接收输入和输出的函数,只有在输出不存在或者输出比输入旧时才执行它?

Google快速搜索向我介绍了这一点:

http://perldoc.perl.org/ExtUtils/MakeMaker.html

但我不确定这是否是我所需要的(对此新...对makefile没有多少经验......)。

如果有人有特定的方向或意见,我会很高兴听到它:)

感谢!!!

1 个答案:

答案 0 :(得分:0)

make可以很容易地确定什么是依赖,但你没有要求。我认为以下内容就足够了:

sub make {
   my ($func, $targ, @deps) = @_;
   my $M_targ = -M $targ;
   for my $dep (@deps) {
      my $M_dep = -M $dep
         or die("Error stating dependency $dep: $!\n");

      if (-M $_ > $M) {
         $func->($targ, @deps);
         last;
      }
   }
}

make(\&func, $targ, @deps);

-M获取文件的修改时间。