[CMake] depend.make

Lars laasunde at hotmail.com
Fri Dec 13 04:43:23 EST 2013


Using the include_regular_expression macro made a huge difference. The build time was reduced by more than 50%.
 
The regular expression appear to be only applied to part of the dependency file path. So in the case of Boost this works pretty well for us because we use #include <boost/filesystem.hpp> but more difficult to remove qt dependency like #include <QDir>. How do you view adding a feature that allow applying regex to the absolute path? Secondly, the documentation of include_regular_expression should probably mention something about the target string (relative path, not absolute).
 
Regards, Lars
 
> Date: Thu, 12 Dec 2013 14:23:53 -0500
> From: bill.hoffman at kitware.com
> To: laasunde at hotmail.com; cmake at cmake.org
> Subject: Re: [CMake] depend.make
> 
> On 12/12/2013 1:07 PM, Lars wrote:
> > Building our software using CMake and VS2005 on Windows platform is very
> > slow. Debugging this issue I discovered the several of the depent.make
> > files are huge. One example is a depent.make file that is roughly 10 MB.
> > In this file most of the object files dependent on almost all boost
> > header files. I am guessing a huge depent.make file would affect at
> > least dependency scanning.
> >
> > Obviously I do not know how much this affect performance.
> >
> > Will take a look at ninja.
> >
> > Any other suggestions?
> >
> You could do this:
> include_regular_expression("^([^b]|b[^o]|bo[^o]|boo[^s]|boos[^t]|boost[^/]).*$")
> 
> Then see if it impacts your performance. I would be interested to here 
> if it did or did not.
> 
> -Bill
> 
 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20131213/edbe0649/attachment.htm>


More information about the CMake mailing list