On 24/07/2014 01:13, Michael Shepanski wrote:
Taking your lead and daring to imagine a future with quince backend code for a great many DBMSes, I ask: what do you propose? Would there be a separate boost/libs/quince_xyz for each DBMS xyz?
I'm not sure exactly how it works but from the modularisation discussion it's evident that Boost's library structure supports "sub-libraries" (aka submodules) that exist in the same repository but are built separately. I suspect what you'll probably want to do would be to create a "core" submodule that each of the separate backend submodules depend on (each of those also depending on a single external library as needed), and then finally a "front-end" top level that doesn't directly depend on anything but the core, but allows any of the DB-specific backends to be used with it. Boost.Numeric seems to be an existing example of a library divided into submodules. Boost.Math seems to be an example of a library without submodules that nevertheless builds multiple output libraries. I'm not sure which style is "preferred".