Lucifers,
I'd like to tackle an issue that's been nagging me for quite some time and
build separate binaries for our test suites. Then the test binaries can be
skipped when installing a Clownfish project.
This isn't too hard for the C bindings, but for the Perl bindings, it's more
complicated. My current plan is to move the test code into its own directory
separate from "core". Then I'd like to add a mechanism to create distinct
dynamic libraries (XS "modules") for each source directory. The build system
gets a specification like:
xs_modules => [
{
name => 'Clownfish',
source_dirs => [ 'core' ],
},
{
name => 'Clownfish::Test',
source_dirs => [ 'tests' ],
},
]
Then separate .xs, boot.h, boot.c, and callbacks.c files are generated for
each module, and linked with the .c files in each source directory.
As a first step, I'd move all the test code into its own directory, simply
named "tests".
What do you think?
Nick