我,我想有两个后端,一个模块上工作一个Module(::PerlArray)
和Module::PDL
(其中可以将取决于Module
)。两者都需要访问functions.c/.h
文件进行构建。该文件具有模块所需的相当复杂的逻辑。不是将它与每个模块分开分发,有没有办法将它与系统上的Module::PP
保持一致,然后将它添加到EU::MM
或M::B
中的适当构建标志(考虑到这里的复杂性可能是后者)?perl的建立与C源代码模块,其他模块
为了更直观地
--Module--
Module.pm
Module/PerlArray.pm
Module/PerlArray.xs (#include functions.h
#include perlarray_backend.h)
Module/src/functions.c
Module/src/perlarray_backend.c
Module/inc/functions.h
Module/inc/perlarray_backend.h
--Module::PDL--
Module/PDL.pm
Module/PDL.xs (#include functions.h /*from Module*/
#include pdl_backend.h)
Module/src/pdl_backend.c
Module/inc/pdl_backend.h
和编译使得functions.o和链接。我确定我可以弄清楚如何正确设置标志,但是如何在安装时让Module保留functions.c
文件,以及如何在安装Module::PDL
时找到它?有没有我可以放置的地方functions.c/.h
?
PP模块应该保留给纯Perl(这是约定),所以它不应该依赖于。[ch]文件。 –
的确如此,我会在命名上工作。我的pp(正如我所说的那样)使用Perl本地数组与vs使用PDL,但你是对的,如果它使用XS,我不应该称它为PP。 –