
I am working on a "yet another" build tool :) and as part of performance testing I am doing boost modularization. Boost was chosen because I work with it more then 5 years and it big enough and known to me. Modularization of boost 1.34.1 was successful and 31 (not all yet) libraries was tested. That was easy. But when I tried to modularize boost 1.36.0 I faced circular dependencies that I can't break. Some old part of boost that have enormous interheader dependencies I separated in /boost/core library(mpl + preprocessor + bind + utility + many small .hpp + details). For boost 1.34.1 I decided that throw_exception.hpp must reside in /boost/core library. For 1.36.0 I decided to put it in /boost/exception because it is natural place for that functionality. But /boost/exception is dependent on /boost/smart_ptr that dependent on /boost/exception. And ooops - we have circular dependency. I can place both /boost/exception and /boost/smart_ptr into /boost/core but that seams really wrong to me. I known that some folks working on CMake build system and also need modularize boost. So my question is: Is there any plans to do refactoring/cleaning/reorganizing/... to make boost have more clean inter-libraries dependencies? Thanx

----- Original Message ----- From: "Konstantin Litvinenko" <to.darkangel@gmail.com> To: <boost@lists.boost.org> Sent: Tuesday, February 10, 2009 10:58 PM Subject: [boost] libraries dependencies
You should place them in Boost core, a lot of libraries use them and most of the Boost libraries use throw_exception. Once the other dependencies are clean you could see in the Core..
I known that some folks working on CMake build system and also need modularize boost.
Have you a different core that CMake build? Please copy them.
It seems evident to me that the work done seen the dependencies between libraries has this as a goal. I'm unable to say you when and how this will be done , but maybe you should post this tothe CMameML. Best regards, Vicente.
participants (2)
-
Konstantin Litvinenko
-
vicente.botet