I am getting closer to being able to release a module using Inline::C. Well, I am close enough that I want to take all the "make it work" code and translate it into "make it work in a pleasing fashion" code. To that end, I have a few questions.
I have about 5 low-level utility functions that just about every module uses. I do not need to make these functions visible to perl and doing so would be a serious pain. I would, though, like to extract the functions into one file to simplify my maintenance. My first impulse is to put them all into a .h file and have the modules include the file. Is there a more elegant or more idiomatic way to do this? I also have a few modules that only have about three methods and three underlying C functions. Am I correct in assuming that the only way to put these modules into the same physical file is to use Inline::File? Finally, I am wondering if I want to distribute the package with Inline::C as a prereq or if it is possible to take the output from Inline::C and make a "pure" XS module from it. I would like to allow a user to do the "perl Makefile.pl; make; make test" on one machine and the "make install" on another machine. If I make Inline::C a prereq, will this be possible if Inline::C is not installed on the second machine? Any thoughts, experiences or general discussion on this would be very welcome. Thanks for any help, Mik