Solution:
You can use TFS power tools command line utility to clone a build definition across projects
Note: You can download and install TFS Power Tools from http://visualstudiogallery.msdn.microsoft.com/b1ef7eb2-e084-4cb8-9bc7-06c3bad9148f
1. Open "Visual Studio" command prompt
2. You can use the following command to preview the build definition clone
tfpt builddefinition /clone "<Source Team Project Name>\Build Definition" "<Target Team Project Name>\Build Definition" /Collection:http://tfs:8080/tfs/DefaultCollection /preview
3. You can use the following command to clone the build definition
tfpt builddefinition /clone "<Source Team Project Name>\Build Definition" "<Target Team Project Name>\Build Definition" /Collection:http://tfs:8080/tfs/DefaultCollection
Only the well-defined build definition can be cloned using this approach meaning the build source build definition should have all the mandatory (required) properties filled with values
For example:
The source build definition without Build controller name cannot be cloned using this approach.
You can also use * wildcard character to clone all build definitions at one shot, provided you have well-defined build definition at source team project.
tfpt builddefinition /clone "<Source Team Project Name>\*" "<Target Team Project Name>\" /Collection:http://tfs:8080/tfs/DefaultCollection
Remember to update the following build properties to the cloned build definition.
1. Disable build definition to prevent accidental triggering.
2. Change workspace mapping to target team project source.
3. Change drop location.
4. Change the build process template to point to the right projects.
5. If you use custom build workflow/tasks, make sure your build controller custom assembly references are pointed to target team project source control
6. Enable the build definition.