0
votes

I have a VisualStudio 2012 solution, consisting of a bunch of C++ projects, each with a Debug / Release configuration and x64 / Win32 platforms. So I end up with four executables:

  • Debug-Win32.exe
  • Debug-x64.exe
  • Release-Win32.exe
  • Release-x64.exe

Of those, I use a WiX project to create installers from the *Release configuration output:

  • Release-Win32.exe -> Installer-Win32.msi
  • Release-x64-exe -> Installer-x64.msi

I then have a WiX burn bootstrapper project to chain those into a single bootstrapper executable. The bootstrapper selects the correct MSI to run for the platform.

My problem is that the bootstrapper project is dependent on both, the Win32 and x64 target platform of the installer project.

Right now, I need to manually trigger the build of those platform configurations before building the bootstrapper. Is there a way (by hand-editing the msbuild script) to create a build dependency on two target platform configurations?

1

1 Answers

1
votes

In the MSBUILD file (TFSBuild.proj) add both the flavors to build and that will solve the issue.

<ConfigurationToBuild Include="Release|Win32">
  <FlavorToBuild>Release</FlavorToBuild>
  <PlatformToBuild>Win32</PlatformToBuild>
</ConfigurationToBuild>
<ConfigurationToBuild Include="Release|x64">
  <FlavorToBuild>Release</FlavorToBuild>
  <PlatformToBuild>x64</PlatformToBuild>
</ConfigurationToBuild>

This will make sure that your application will be built on both the flavors and the output (MSI or exe) should be present in the appropriate folders. Your burn package can grab it from the folders.