Your manifest looks like it's only got pure Perl stuff in it, no XS, right? I'm not quite sure I understand the reason for needing to make several modules out of it - why not just one distribution with everything in it, and let the code decide which of the modules to load (and test during installation)? The only downside I see is having a few extra unused files lying around on your disk (and perhaps the minor runtime overhead of choosing which module to load, but it sounds like you need to do that anyway)... Don't know much about rpms, is there some reason that wouldn't work?