More tools…

Two new MSBuild community tools to check out!  Eugene from Attrice has blogged about the Visualization support in the new edition of MSBuild SideKick. (There’s also another pretty visualizer on CodePlex.) Partho pointed me at a debugger he’s created. It’s on CodePlex too, which means you can help improve it. It runs as a logger, taking advantage of the…

2

Response to the feature poll

There were over 80 responses to my recent post asking for feedback on where MSBuild should be heading (if the graph doesn’t appear, it’s here). Thank you all for your thoughtful allocations!  Let’s go through each one in decreasing order of “investment”. 1) Debugger. Debugging by gazing at diagnostic logs and putting in <Message> tasks is less than…

32

MSBuild 3.5 "Orcas" has now shipped

 MSBuild 3.5 “Orcas” has now shipped. You can get the free download from here. It’s included in the free Express Editions and of course Visual Studio 2008 itself. I’ll blog about what’s new in MSBuild 3.5 in due course, but the main features are: — Multiprocessor support — currently command line only, just build your solutions…

6

How would you spend $100 on MSBuild?

We’re currently planning for our next version (aka, “Dev10” – no code name this time) and subsequent releases. In that spirit, I’d like to do a quick poll of MSBuild aficionados to help us keep our “vision” for MSBuild aligned with yours, our customers. First, a caveat – while ideally I would like to rank…

119

What are Targets, Tasks, and Tools?

I’ve heard these confused in the context of MSBuild, so let’s talk a little about what they are: * A TARGET is a grouping of tasks (often 1) designed to do a particular job. For example, a Link target would be designed to produce a final binary from object files. Targets can declare other targets that…

1

Enabling multiprocessor support in an MSBuild host

As you know, MSBuild in .NET 3.5 adds support for building projects concurrently. MSBuild.exe exposes this support with the new /m switch, and because Team Build uses MSBuild to build projects, it will get a speed up as well. In this release, Visual Studio doesn’t use this to build managed projects concurrently, but you can write your…

6

Manifest resource names changed for .resources files

Juergen Bayer notified us of an issue introduced in MSBuild in .NET 3.5 “Orcas”. The problem is if you have any items of type EmbeddedResource in your project file that are actually .resources format, rather than the usual .resx. In other words, for some reason you have already converted them from human-readable form. We believe…

4

Using MSBuild as a generic scripting language

I just got a pretty interesting mail from Dave Hickey at Premera, describing how his team is using MSBuild as a generic scripting language: We thought you might be interested in how we use MSBuild here.  Sure, we use it for compiling our .NET projects, but we’ve adopted it as our new Batch scripting language,…

4

Multitargeting against .NET 2.0

If you’re using the new VS 2008 multitargeting features to target .NET 2.0 you should be aware that in VS 2008 they have a limitation related to service packs. In .NET 2.0 SP1, the CLR team has added a few types to existing .NET 2.0 assemblies. For example, DateTimeOffset has been added to mscorlib.dll. Since…

2

ToolsVersion metadata for items used in MSBuild task’s

Greetings MSBuilders!   In Visual Studio 2005 you could only target the 2.0 Framework tools. MSBuild targets files which define the build process and MSBuild tasks to use the 1.1 framework tools were not supported . With the help of our CPX team we released MSBee to provide support for .NET 1.1.   With the…

6