This was not a problem in WiX 3.5, but apparently as part of 3.6 support was
added to the MSBuild targets for "incremental builds" by testing the
timestamps on all input files to the link task to see if they were newer
than the output files. I haven't been able to find any documentation - Bob
Arnson mentions it at the end of this thread in May 2011,

http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Developer-with-WiX-experience-needed-proper-incremental-build-support-td6380785.html#a6383958

and it's mentioned with a single line in the 3.6 release notes, ".wixproj
MSBuild projects support incremental build."

http://wix.codeplex.com/releases/view/93929

This is a nice facility, although it would have been even nicer with more
information and maybe an option to turn it off.

Anyway, my problem with it is that when I have the C++ runtime merge module
in my project this forces a link to be done every time, even if no input is
changed. As far as I can determine the processing of the merge module
involves the creation of three temporary files:

C:\Users\rp\AppData\Local\Temp\4q3ufw1n\MergeId.49012\F_CENTRAL_msvcp110_x86.D371D00B_69EC_3F8E_A622_74710A89ADC1
C:\Users\rp\AppData\Local\Temp\4q3ufw1n\MergeId.49012\F_CENTRAL_msvcr110_x86.D371D00B_69EC_3F8E_A622_74710A89ADC1
C:\Users\rp\AppData\Local\Temp\4q3ufw1n\MergeId.49012\F_CENTRAL_vccorlib110_x86.D371D00B_69EC_3F8E_A622_74710A89ADC1

I've extracted these filenames from the BindContentsFileList file, and I see
them in the MSBuild log. I've never actually seen these files themselves
with my own eyes - they are apparently created, consumed, and then deleted
so quickly that human reflexes can't cope. But my guess is that they have a
timestamp of "now", instead of being given a timestamp corresponding to the
merge module, and this sabotages the incremental build testing. Which in
turn sabotages all of the following incremental builds in the overall
project.

For now I've modified the WiX target so the link task no longer includes
"_BindInputs" as part of its Inputs= list.

Have I understood the situation correctly? 



--
View this message in context: 
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Project-with-merge-modules-defeating-incremental-build-facility-tp7584279.html
Sent from the wix-users mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_mar
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to