We're working on pretty large middleware software, and it takes 10-20 minutes each time we need to re-build the whole solution in VS2008 (quad-core parallel build on a single machine). I've heard there are rather expensive VS extensions like Incredibuild that make use of other machines in your network (we have about 10 machines). Have you ever used or heard about those tools? Do they make the build process so faster and smarter to be worth the money? (e.g. re-use object files that could be cached on different machines)
Thanks in advance
Well we had similar problems except that in our case it took over 40 minutes to build.
With Visual Studio 2008 we used Xoreax Incredibuild ( see Xoreax web site ) and it dramatically reduced the build time (i.e. to half the time or better). So I would say yes, such a tool can help. And, in my opinion it is not so expensive (i.e. between 250 and 500 USD per seat depending on extra options and there are some discounts for volume purchases).
Now we are at VS 2010 and at the time we upgraded there was no support for 2010 in Incredibuild so we rely on the VS2010 build. All developers have quad cores and the build in VS 2010 makes good use of that so the build times are acceptable. We also reviewed and improved our includes and made better use of precompiled headers and so on.
So you coud try Xoreax Incredibuild (they have a fully functional 30 days trial version that can be extended when it expires) to be able to determine if the price / benefit ratio is ok for your case, or revise and improve your includes and/or upgrade to VS2010 if you have multi core machines.