I keep reading emails about the effort to reduce dependencies, and to split libraries into core/simple + whole/big.. And I keep thinking it's making things more complex than they need to be. I can see the need to compartmentalize the parts of a library that have minimal to little dependencies. So here's a suggestions for structure of managing this. I see options: 1. In each library allow for a "core" set of headers that are still in a core subdir. But that we can tell is a subset of the library that has the minimal dependencies. For example we would have: * libs/<lib>/include/boost/<lib>/core/.. * libs/<lib>/include/boost/<lib>/<the-rest>.. This of course assumes that it's headers only that would be core. Second option is to have each library have to explicit sublibs/parts. "core" and "full". Structure would be: * libs/<lib>/core/(build, doc, include, meta, test) * libs/<lib>/full/(build, doc, include, meta, test) Note, both core and full would be in the same git repo to make life easier for library authors and users that visit a library git repo on github. As it's only one place for everything for that one library. As a user, release manager, testing manager, and library author this would be easy to understand and manage than the current "some random set of libraries have core or not and in different places". -- -- Rene Rivera -- Grafik - Don't Assume Anything -- Robot Dreams - http://robot-dreams.net -- rrivera/acm.org (msn) - grafikrobot/aim,yahoo,skype,efnet,gmail