我有一组Perl脚本和一些他们依赖的XML数据文件,我想分发它们.目前,我有一个shell脚本,它将bin/*和share/*复制到目标安装树.它看起来有点笨重,所以我想用标准CPAN包装Perl的方式.
将我在CPAN风格的包中包含的内容捆绑起来是否有意义?我怀疑它没有任何问题,但我看过的每个教程都认为lib/Blah.pm是任何软件包中必不可少的文件 - 我甚至没有lib /目录,更不用说任何.pm文件了.
是否有标准解决方案用于打包Perl脚本集合以及共享/目录中的一些数据?
发行版不关心模块.默认情况下,大多数工具都设置为处理模块,因为这是常见的情况,但只要您提供逻辑来告诉构建文件如何处理您提供的任何文件,您就可以真正分发任何内容.
ExtUtils :: Makemaker很难用于此类事情,但是Module :: Build(尽管有"Module"这个词)使它变得更容易.但是,您必须了解一些有关自定义Module :: Build类的信息,以便您可以覆盖您不需要的默认行为.
如果您正在谈论独立脚本,您可以查看我的scriptdist发行版,或者我写的关于它的Dr. Dobbs文章.它不会为您处理共享/部分,但添加起来并不难.