PostBuild always works, even if everything is updated

I have a VisualStudio 2010 solution containing many C ++ projects (over 100). Many of them have some lines in the PostBuild event (copy files and more). The problem occurs when building the solution on our build machine using the tfs build definition:

Even if the project is updated, a post build is performed and the line with "Create" .unsuccessfulbuild "because" AlwaysCreate "was specified" is written to the log file. This dramatically increases build time and makes complex integration difficult. This PostBuild does not start when working with VisualStudio.

To narrow down the problem (and rule out any possible problem referencing unexplored files, etc.), I created a new solution file and added a new C ++ Console Application project to the solution using the VisualStudio Project Wizard. The only thing I changed from the default is this line in the PostBuild event: echo "PostBuild Output" (just to see it in the log file when PostBuild starts).

Then I created a new assembly definition using this solution. And yet PostBuild is activated even if the project is updated. The same problem occurs if I create a solution file that runs msbuild in a command window. But VisualStudio creation works fine.

Can anyone give me some advice on how to avoid this PostBuild when the project is "updated"? (I have verified that the Linker OutputPath matches the $ (TargetPath) parameter when building on the build machine.)


source to share

All Articles