That question is dated and the level of unrestrained enthusiasm that Brian shows for Module::Build isn't really warranted — it works, and may be better for your situation, but it has its own share of problems, and currently is receiving only limited maintenance.
But to answer your specific question: if you have XS files, all you need to do is put the .xs
files in the top-level of your distribution, and they will be built, without you having to tell Module::Build anything.
If you have additional .c
or .h
files (including Devel::PPPort's ppport.h
) that should be built together with your module, put them in a directory and specify that directory as the c_source
parameter to the new
constructor from Module::Build.