Visual Studio Blog

The official source of product insight from the Visual Studio Engineering Team

Building on Cross targeting scenarios and 64-bit MSBuild

UPDATE: Most issues around MSBuild support for cross-bitness and 64-bit builds are fixed in .NET 4.5. As always, feedback is welcome! Please leave your comments in this blog post and report any bugs on Microsoft Connect.   During the Visual Studio 2010 development cycle a push to make the build experience better on Cross compilation...

MSBuild Property Functions (2)

Some more information about this 4.0 feature. (I've also updated the first post with this, so everything's in one place for your reference.)Built-in MSBuild functionsThe full list of built-in [MSBuild] functions, like the one above, are in the MSDN topic here. They include arithmetic (useful, for example, for modifying version numbers), ...

Custom Build Steps, Tools, and Events

The VC++ build system is of course MSBuild based in VS 2010.  This automatically gives you a great deal more flexibility to customize your build than you had with .vcproj project files in prior releases.  We went out of our way to ensure that the .targets files that drive the build of a .vcxproj file in VS 2010 leverage as much ...

MSBuild Property Functions

Have you ever wanted to do something simple in a build, like get a substring of a property value, and found that MSBuild didn't have syntax for it? You then had to write a task for it, which was tiresome to do for such a simple operation. What's more, if you wanted to do this during evaluation – outside of a target – you couldn't run a ...

Tuning C++ build parallelism in VS2010

A great way to get fast builds on a multiprocessor computer is to take advantage of as much parallelism in your build as possible. If you have C++ projects, there’s two different kinds of parallelism you can configure. What are the dials I can set? Project-level parallel build, which is controlled by MSBuild, is set at the solution level in...

MSBuild 4 Detailed Build Summary

Introduction When we were developing the current version of MSBuild, we spent a lot of time analyzing builds to determine where our performance issues lay. The standard logging, even on diagnostic verbosity and with the performance summary enabled (/clp:PerformanceSummary=true on the MSBuild command line) doesn’t give us the kind of ...

Getting Started with MSBuild

I have had several customers asking me about MSBuild and how to get started learning the language and using it. A little over a year and a half ago, I joined the MSBuild team. When I got here, I did not even know what MSBuild was, and I have been a Visual Studio user for many years. This article is to help you understand what MSBuild is, how ...

MSBuild Task Factories: guest starring Windows Powershell

One of the cool new features of MSBuild 4.0 is the extensible task factory.  Task factories allow you to include scripts directly in your project file (or an imported .targets file) and have those scripts parsed and executed by your favorite interpreter.  Those scripts might even be C# or VB.NET code snippets that get compiled into ...