Re: [WiX-users] MSBuild Tasks
Which version are you looking for? I have Michael's one, Neil's one, and probably one or two of my own lying around somewhere. This thread was from a while ago though. I happened to peek at the targets file of a newer build and it's much better. Also, as Bob noted, if you're using v3, it's a lot better too. -Francis On 11/10/06, Eric Fesh <[EMAIL PROTECTED]> wrote: All: Would anyone happen to have a copy of this version of wix.targets lying around? I've been doing web searches, but the attachment doesn't come up on the SourceForge forums... *frowny* -- Eric Fesh Customer Support Engineer/Software Test Engineer Verari Systems Software, Inc. 110 12th Street North, Suite D103 Birmingham, AL 35203 Phone +1-205-397-3141 ext. 3149 Fax +1-205-397-3142 [EMAIL PROTECTED] http://www.verarisoft.com/ The information contained in this communication may be confidential and is intended only for the use of the recipient(s) named above. If the reader of this communication is not the intended recipient(s), you are hereby notified that any dissemination, distribution, or copying of this communication, or any of its contents, is strictly prohibited. If you are not a named recipient or received this communication by mistake, please notify the sender and delete the communication and all copies of it. Neil Sleightholm wrote: > Would it be possible for this version of wix.targets to be adopted by > the team as the one that is currently distributed doesn't work with > multiple wsx files? > > Neil > > PS Thanks Michael Luke you saved me lots of time! > > -Original Message- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Michael Luke > Sent: 12 May 2006 09:22 > To: [EMAIL PROTECTED]; 'Francis Kam'; 'Michael F. Collins, > III' > Cc: 'WiX-users' > Subject: RE: [WiX-users] MSBuild Tasks > > Hi Rob, > > I made lots of changes to the MSBuild wix.targets a while back to fix a > few bugs, but got stymied by the (to me) ridiculous requirement of > downloading a pdf, printing it out, filling it in in ink and posting it > thousands of miles to Seattle, just so I could submit the changes to the > project. I've worked on many open source projects, and this is the > first one I've seen with such a requirement. > > Anyway, I'm not going to sign and post the contributor's agreement, > because it's way too much hassle. Attached is the modified .targets > file, and I relinquish all rights blah di blah for my changes. > > This .targets file fixes the following issues: > > - Made incremental builds work correctly (a task will only run if source > files have changed) > > - Allowed multiple wxs files to be used in one msi > > - Added BeforeXXX and AfterXXX targets for each action to allow for > build custom tasks. This is consistent with Microsoft's existing Team > Build targets. > > - Moved the path to $(MSBuildExtensionsPath)\Windows Installer > XML\Wix.targets (c:\program files\MsBuild\Windows Installer XML) to be > consistent with MsBuild standards. The wixtasks.dll and wix.targets > files should both be installed to this location. > > To use it, you simply create an MsBuild project file (such as the > MsBuild.proj attached) and pass that to MsBuild. > > Michael Luke > > > [EMAIL PROTECTED] wrote: >> Quick piece of information. The MSBuild tasks were written by >> somebody quickly and just handed to us. There hasn't been any more >> maintenance on the code since then. At this point in time, I expect >> you know more about how MSBuild works than anyone on the core WiX >> development team. Your bugs and suggestions would be much >> appreciated. >> >> >> >> >> >> From: [EMAIL PROTECTED] >> [mailto:[EMAIL PROTECTED] On Behalf Of Francis >> Kam Sent: Thursday, May 11, 2006 3:52 PM >> To: Michael F. Collins, III >> Cc: WiX-users >> Subject: Re: [WiX-users] MSBuild Tasks >> >> >> >> Thanks for the reply. I've modified the wix.targets for multiple >> output support and it seems to be working fine. I'm rather >> inexperienced with MSBuild, so maybe I'm just missing something, but >> isn't the only way to get an array of strings to use item groups >> instead of properties? You really should be able to define more than >> one preprocessor variable from the commandline and it seems to me the >> only way is to change DefineConstants to an item group. I've done >> this with minimal negative side-effects so far. Anyhow, it's good to >> see I'm not crazy, and this is a path that
Re: [WiX-users] MSBuild Tasks
All: Would anyone happen to have a copy of this version of wix.targets lying around? I've been doing web searches, but the attachment doesn't come up on the SourceForge forums... *frowny* -- Eric Fesh Customer Support Engineer/Software Test Engineer Verari Systems Software, Inc. 110 12th Street North, Suite D103 Birmingham, AL 35203 Phone +1-205-397-3141 ext. 3149 Fax +1-205-397-3142 [EMAIL PROTECTED] http://www.verarisoft.com/ The information contained in this communication may be confidential and is intended only for the use of the recipient(s) named above. If the reader of this communication is not the intended recipient(s), you are hereby notified that any dissemination, distribution, or copying of this communication, or any of its contents, is strictly prohibited. If you are not a named recipient or received this communication by mistake, please notify the sender and delete the communication and all copies of it. Neil Sleightholm wrote: > Would it be possible for this version of wix.targets to be adopted by > the team as the one that is currently distributed doesn't work with > multiple wsx files? > > Neil > > PS Thanks Michael Luke you saved me lots of time! > > -Original Message- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Michael Luke > Sent: 12 May 2006 09:22 > To: [EMAIL PROTECTED]; 'Francis Kam'; 'Michael F. Collins, > III' > Cc: 'WiX-users' > Subject: RE: [WiX-users] MSBuild Tasks > > Hi Rob, > > I made lots of changes to the MSBuild wix.targets a while back to fix a > few bugs, but got stymied by the (to me) ridiculous requirement of > downloading a pdf, printing it out, filling it in in ink and posting it > thousands of miles to Seattle, just so I could submit the changes to the > project. I've worked on many open source projects, and this is the > first one I've seen with such a requirement. > > Anyway, I'm not going to sign and post the contributor's agreement, > because it's way too much hassle. Attached is the modified .targets > file, and I relinquish all rights blah di blah for my changes. > > This .targets file fixes the following issues: > > - Made incremental builds work correctly (a task will only run if source > files have changed) > > - Allowed multiple wxs files to be used in one msi > > - Added BeforeXXX and AfterXXX targets for each action to allow for > build custom tasks. This is consistent with Microsoft's existing Team > Build targets. > > - Moved the path to $(MSBuildExtensionsPath)\Windows Installer > XML\Wix.targets (c:\program files\MsBuild\Windows Installer XML) to be > consistent with MsBuild standards. The wixtasks.dll and wix.targets > files should both be installed to this location. > > To use it, you simply create an MsBuild project file (such as the > MsBuild.proj attached) and pass that to MsBuild. > > Michael Luke > > > [EMAIL PROTECTED] wrote: >> Quick piece of information. The MSBuild tasks were written by >> somebody quickly and just handed to us. There hasn't been any more >> maintenance on the code since then. At this point in time, I expect >> you know more about how MSBuild works than anyone on the core WiX >> development team. Your bugs and suggestions would be much >> appreciated. >> >> >> >> >> >> From: [EMAIL PROTECTED] >> [mailto:[EMAIL PROTECTED] On Behalf Of Francis >> Kam Sent: Thursday, May 11, 2006 3:52 PM >> To: Michael F. Collins, III >> Cc: WiX-users >> Subject: Re: [WiX-users] MSBuild Tasks >> >> >> >> Thanks for the reply. I've modified the wix.targets for multiple >> output support and it seems to be working fine. I'm rather >> inexperienced with MSBuild, so maybe I'm just missing something, but >> isn't the only way to get an array of strings to use item groups >> instead of properties? You really should be able to define more than >> one preprocessor variable from the commandline and it seems to me the >> only way is to change DefineConstants to an item group. I've done >> this with minimal negative side-effects so far. Anyhow, it's good to >> see I'm not crazy, and this is a path that others have considered and >> followed before me. >> >> >> >> Just in case someone else is interested, what I ended up doing for >> multiple output support was changing CompileObjOutput to an ItemGroup, > >> and then including: >> >> >> @(Compile->'$(IntermediateOutputPath)%(filename)$(IntermediateExt)') >> >
Re: [WiX-users] MSBuild Tasks
Neil Sleightholm wrote: > I have raised a request, id 1544363. > Thanks. > Could you let me know where the "patch and assignment agreement" is? > That was "(patch) and (assignment agreement)." See http://blogs.msdn.com/robmen/archive/2004/04/14/112970.aspx for details. -- sig://boB http://bobs.org - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] MSBuild Tasks
I have raised a request, id 1544363. Could you let me know where the "patch and assignment agreement" is? Neil -Original Message- From: Bob Arnson [mailto:[EMAIL PROTECTED] Sent: 17 August 2006 16:22 To: Neil Sleightholm Cc: WiX-users Subject: Re: [WiX-users] MSBuild Tasks Neil Sleightholm wrote: > Could the v3 version be back ported to the v2 version so it is > included in future releases? > Probably. If you enter a feature request at http://sourceforge.net/tracker/?group_id=105970&atid=642717, it'll get into the queue. It'll happen faster if you submit a patch and assignment agreement. -- sig://boB http://bobs.org - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] MSBuild Tasks
Neil Sleightholm wrote: > Could the v3 version be back ported to the v2 version so it is included > in future releases? > Probably. If you enter a feature request at http://sourceforge.net/tracker/?group_id=105970&atid=642717, it'll get into the queue. It'll happen faster if you submit a patch and assignment agreement. -- sig://boB http://bobs.org - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] MSBuild Tasks
Do answer my own question, with a couple of minor edits the v3 wix.targets is compatible with v2: 1. Remove 'SuppressWarnings="$(LinkerSuppressWarnings)"' from the Light section as this option is not available in v2. 2. Change the 4 references '$(MSBuildExtensionsPath)\Microsoft\WiX\v3.0\' to match the location of the v2 wixtasks.dll e.g. '$(MSBuildExtensionsPath)\Microsoft\WiX\v2.0\' Could the v3 version be back ported to the v2 version so it is included in future releases? Neil -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Neil Sleightholm Sent: 15 August 2006 06:58 To: WiX-users Subject: Re: [WiX-users] MSBuild Tasks I'll take a look but v3 is not stable enough for my builds. Do you know if the v3 wix.targets would work with v2? Neil -Original Message- From: Bob Arnson [mailto:[EMAIL PROTECTED] Sent: 14 August 2006 23:13 To: Neil Sleightholm Cc: WiX-users; [EMAIL PROTECTED] Subject: Re: [WiX-users] MSBuild Tasks Neil Sleightholm wrote: > Would it be possible for this version of wix.targets to be adopted by > the team as the one that is currently distributed doesn't work with > multiple wsx files? > You might want to take a look at the WiX tasks/targets in WiX v3; it's been enhanced beyond what's in v2. -- sig://boB http://bobs.org - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] MSBuild Tasks
I'll take a look but v3 is not stable enough for my builds. Do you know if the v3 wix.targets would work with v2? Neil -Original Message- From: Bob Arnson [mailto:[EMAIL PROTECTED] Sent: 14 August 2006 23:13 To: Neil Sleightholm Cc: WiX-users; [EMAIL PROTECTED] Subject: Re: [WiX-users] MSBuild Tasks Neil Sleightholm wrote: > Would it be possible for this version of wix.targets to be adopted by > the team as the one that is currently distributed doesn't work with > multiple wsx files? > You might want to take a look at the WiX tasks/targets in WiX v3; it's been enhanced beyond what's in v2. -- sig://boB http://bobs.org - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] MSBuild Tasks
Neil Sleightholm wrote: > Would it be possible for this version of wix.targets to be adopted by > the team as the one that is currently distributed doesn't work with > multiple wsx files? > You might want to take a look at the WiX tasks/targets in WiX v3; it's been enhanced beyond what's in v2. -- sig://boB http://bobs.org - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] MSBuild Tasks
No its not that, its just that in my organization I have a large number of msi's and each time there is a build I only want to subsequently release what has changed since the last build and release. If only certain msi's get built as part of my build process I know that is all that needs to be released. -Original Message- From: Derek Cicerone [mailto:[EMAIL PROTECTED] Sent: 14 August 2006 21:48 To: 'Simon Burgess'; 'Neil Sleightholm'; 'WiX-users' Cc: [EMAIL PROTECTED] Subject: RE: [WiX-users] MSBuild Tasks That kind of incremental support is not currently there. Are you finding that build times are unacceptably long? Derek -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Simon Burgess Sent: Monday, August 14, 2006 1:07 PM To: 'Neil Sleightholm'; 'WiX-users' Cc: [EMAIL PROTECTED] Subject: Re: [WiX-users] MSBuild Tasks This email touches on a problem I'm having. I'm also using MSBuild (via TeamBuild) to talk to WiX to generate msi's. There is mention here of support for incremental build as '(a task will only run if source files have changed)'. Presumably this concerns changes to the .wxs source files, but what about changes to the files that the msi is packaging up? Is there any support in WiX to identify if any of the elements have a src attribute that has changed since the last time the msi was built? If not does anyone know how else this might be achieved (with MSBuild perhaps or otherwise) -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Neil Sleightholm Sent: 14 August 2006 20:41 To: WiX-users Cc: [EMAIL PROTECTED] Subject: Re: [WiX-users] MSBuild Tasks Would it be possible for this version of wix.targets to be adopted by the team as the one that is currently distributed doesn't work with multiple wsx files? Neil PS Thanks Michael Luke you saved me lots of time! -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Michael Luke Sent: 12 May 2006 09:22 To: [EMAIL PROTECTED]; 'Francis Kam'; 'Michael F. Collins, III' Cc: 'WiX-users' Subject: RE: [WiX-users] MSBuild Tasks Hi Rob, I made lots of changes to the MSBuild wix.targets a while back to fix a few bugs, but got stymied by the (to me) ridiculous requirement of downloading a pdf, printing it out, filling it in in ink and posting it thousands of miles to Seattle, just so I could submit the changes to the project. I've worked on many open source projects, and this is the first one I've seen with such a requirement. Anyway, I'm not going to sign and post the contributor's agreement, because it's way too much hassle. Attached is the modified .targets file, and I relinquish all rights blah di blah for my changes. This .targets file fixes the following issues: - Made incremental builds work correctly (a task will only run if source files have changed) - Allowed multiple wxs files to be used in one msi - Added BeforeXXX and AfterXXX targets for each action to allow for build custom tasks. This is consistent with Microsoft's existing Team Build targets. - Moved the path to $(MSBuildExtensionsPath)\Windows Installer XML\Wix.targets (c:\program files\MsBuild\Windows Installer XML) to be consistent with MsBuild standards. The wixtasks.dll and wix.targets files should both be installed to this location. To use it, you simply create an MsBuild project file (such as the MsBuild.proj attached) and pass that to MsBuild. Michael Luke [EMAIL PROTECTED] wrote: > Quick piece of information. The MSBuild tasks were written by > somebody quickly and just handed to us. There hasn't been any more > maintenance on the code since then. At this point in time, I expect > you know more about how MSBuild works than anyone on the core WiX > development team. Your bugs and suggestions would be much > appreciated. > > > > > > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Francis > Kam Sent: Thursday, May 11, 2006 3:52 PM > To: Michael F. Collins, III > Cc: WiX-users > Subject: Re: [WiX-users] MSBuild Tasks > > > > Thanks for the reply. I've modified the wix.targets for multiple > output support and it seems to be working fine. I'm rather > inexperienced with MSBuild, so maybe I'm just missing something, but > isn't the only way to get an array of strings to use item groups > instead of properties? You really should be able to define more than > one preprocessor variable from the commandline and it seems to me the > only way is to change DefineConstants to an item group. I've done > this with minimal negative side-effects so far. Anyhow, it's good to > see I'm
Re: [WiX-users] MSBuild Tasks
That kind of incremental support is not currently there. Are you finding that build times are unacceptably long? Derek -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Simon Burgess Sent: Monday, August 14, 2006 1:07 PM To: 'Neil Sleightholm'; 'WiX-users' Cc: [EMAIL PROTECTED] Subject: Re: [WiX-users] MSBuild Tasks This email touches on a problem I'm having. I'm also using MSBuild (via TeamBuild) to talk to WiX to generate msi's. There is mention here of support for incremental build as '(a task will only run if source files have changed)'. Presumably this concerns changes to the .wxs source files, but what about changes to the files that the msi is packaging up? Is there any support in WiX to identify if any of the elements have a src attribute that has changed since the last time the msi was built? If not does anyone know how else this might be achieved (with MSBuild perhaps or otherwise) -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Neil Sleightholm Sent: 14 August 2006 20:41 To: WiX-users Cc: [EMAIL PROTECTED] Subject: Re: [WiX-users] MSBuild Tasks Would it be possible for this version of wix.targets to be adopted by the team as the one that is currently distributed doesn't work with multiple wsx files? Neil PS Thanks Michael Luke you saved me lots of time! -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Michael Luke Sent: 12 May 2006 09:22 To: [EMAIL PROTECTED]; 'Francis Kam'; 'Michael F. Collins, III' Cc: 'WiX-users' Subject: RE: [WiX-users] MSBuild Tasks Hi Rob, I made lots of changes to the MSBuild wix.targets a while back to fix a few bugs, but got stymied by the (to me) ridiculous requirement of downloading a pdf, printing it out, filling it in in ink and posting it thousands of miles to Seattle, just so I could submit the changes to the project. I've worked on many open source projects, and this is the first one I've seen with such a requirement. Anyway, I'm not going to sign and post the contributor's agreement, because it's way too much hassle. Attached is the modified .targets file, and I relinquish all rights blah di blah for my changes. This .targets file fixes the following issues: - Made incremental builds work correctly (a task will only run if source files have changed) - Allowed multiple wxs files to be used in one msi - Added BeforeXXX and AfterXXX targets for each action to allow for build custom tasks. This is consistent with Microsoft's existing Team Build targets. - Moved the path to $(MSBuildExtensionsPath)\Windows Installer XML\Wix.targets (c:\program files\MsBuild\Windows Installer XML) to be consistent with MsBuild standards. The wixtasks.dll and wix.targets files should both be installed to this location. To use it, you simply create an MsBuild project file (such as the MsBuild.proj attached) and pass that to MsBuild. Michael Luke [EMAIL PROTECTED] wrote: > Quick piece of information. The MSBuild tasks were written by > somebody quickly and just handed to us. There hasn't been any more > maintenance on the code since then. At this point in time, I expect > you know more about how MSBuild works than anyone on the core WiX > development team. Your bugs and suggestions would be much > appreciated. > > > > > > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Francis > Kam Sent: Thursday, May 11, 2006 3:52 PM > To: Michael F. Collins, III > Cc: WiX-users > Subject: Re: [WiX-users] MSBuild Tasks > > > > Thanks for the reply. I've modified the wix.targets for multiple > output support and it seems to be working fine. I'm rather > inexperienced with MSBuild, so maybe I'm just missing something, but > isn't the only way to get an array of strings to use item groups > instead of properties? You really should be able to define more than > one preprocessor variable from the commandline and it seems to me the > only way is to change DefineConstants to an item group. I've done > this with minimal negative side-effects so far. Anyhow, it's good to > see I'm not crazy, and this is a path that others have considered and > followed before me. > > > > Just in case someone else is interested, what I ended up doing for > multiple output support was changing CompileObjOutput to an ItemGroup, > and then including: > > > @(Compile->'$(IntermediateOutputPath)%(filename)$(IntermediateExt)') > > The Compile target's output of course then becomes: > > @(CompileObjOutput) > > Then I changed OutputFile in the call to Candle in that Compile target > t
Re: [WiX-users] MSBuild Tasks
This email touches on a problem I'm having. I'm also using MSBuild (via TeamBuild) to talk to WiX to generate msi's. There is mention here of support for incremental build as '(a task will only run if source files have changed)'. Presumably this concerns changes to the .wxs source files, but what about changes to the files that the msi is packaging up? Is there any support in WiX to identify if any of the elements have a src attribute that has changed since the last time the msi was built? If not does anyone know how else this might be achieved (with MSBuild perhaps or otherwise) -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Neil Sleightholm Sent: 14 August 2006 20:41 To: WiX-users Cc: [EMAIL PROTECTED] Subject: Re: [WiX-users] MSBuild Tasks Would it be possible for this version of wix.targets to be adopted by the team as the one that is currently distributed doesn't work with multiple wsx files? Neil PS Thanks Michael Luke you saved me lots of time! -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Michael Luke Sent: 12 May 2006 09:22 To: [EMAIL PROTECTED]; 'Francis Kam'; 'Michael F. Collins, III' Cc: 'WiX-users' Subject: RE: [WiX-users] MSBuild Tasks Hi Rob, I made lots of changes to the MSBuild wix.targets a while back to fix a few bugs, but got stymied by the (to me) ridiculous requirement of downloading a pdf, printing it out, filling it in in ink and posting it thousands of miles to Seattle, just so I could submit the changes to the project. I've worked on many open source projects, and this is the first one I've seen with such a requirement. Anyway, I'm not going to sign and post the contributor's agreement, because it's way too much hassle. Attached is the modified .targets file, and I relinquish all rights blah di blah for my changes. This .targets file fixes the following issues: - Made incremental builds work correctly (a task will only run if source files have changed) - Allowed multiple wxs files to be used in one msi - Added BeforeXXX and AfterXXX targets for each action to allow for build custom tasks. This is consistent with Microsoft's existing Team Build targets. - Moved the path to $(MSBuildExtensionsPath)\Windows Installer XML\Wix.targets (c:\program files\MsBuild\Windows Installer XML) to be consistent with MsBuild standards. The wixtasks.dll and wix.targets files should both be installed to this location. To use it, you simply create an MsBuild project file (such as the MsBuild.proj attached) and pass that to MsBuild. Michael Luke [EMAIL PROTECTED] wrote: > Quick piece of information. The MSBuild tasks were written by > somebody quickly and just handed to us. There hasn't been any more > maintenance on the code since then. At this point in time, I expect > you know more about how MSBuild works than anyone on the core WiX > development team. Your bugs and suggestions would be much > appreciated. > > > > > > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Francis > Kam Sent: Thursday, May 11, 2006 3:52 PM > To: Michael F. Collins, III > Cc: WiX-users > Subject: Re: [WiX-users] MSBuild Tasks > > > > Thanks for the reply. I've modified the wix.targets for multiple > output support and it seems to be working fine. I'm rather > inexperienced with MSBuild, so maybe I'm just missing something, but > isn't the only way to get an array of strings to use item groups > instead of properties? You really should be able to define more than > one preprocessor variable from the commandline and it seems to me the > only way is to change DefineConstants to an item group. I've done > this with minimal negative side-effects so far. Anyhow, it's good to > see I'm not crazy, and this is a path that others have considered and > followed before me. > > > > Just in case someone else is interested, what I ended up doing for > multiple output support was changing CompileObjOutput to an ItemGroup, > and then including: > > > @(Compile->'$(IntermediateOutputPath)%(filename)$(IntermediateExt)') > > The Compile target's output of course then becomes: > > @(CompileObjOutput) > > Then I changed OutputFile in the call to Candle in that Compile target > to: > > $(IntermediateOutputPath) > > Instances of $(CompileObjOutput) in the other targets were changed to > @(CompileObjOutput) as well. > > > > -Francis - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickl
Re: [WiX-users] MSBuild Tasks
Would it be possible for this version of wix.targets to be adopted by the team as the one that is currently distributed doesn't work with multiple wsx files? Neil PS Thanks Michael Luke you saved me lots of time! -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Michael Luke Sent: 12 May 2006 09:22 To: [EMAIL PROTECTED]; 'Francis Kam'; 'Michael F. Collins, III' Cc: 'WiX-users' Subject: RE: [WiX-users] MSBuild Tasks Hi Rob, I made lots of changes to the MSBuild wix.targets a while back to fix a few bugs, but got stymied by the (to me) ridiculous requirement of downloading a pdf, printing it out, filling it in in ink and posting it thousands of miles to Seattle, just so I could submit the changes to the project. I've worked on many open source projects, and this is the first one I've seen with such a requirement. Anyway, I'm not going to sign and post the contributor's agreement, because it's way too much hassle. Attached is the modified .targets file, and I relinquish all rights blah di blah for my changes. This .targets file fixes the following issues: - Made incremental builds work correctly (a task will only run if source files have changed) - Allowed multiple wxs files to be used in one msi - Added BeforeXXX and AfterXXX targets for each action to allow for build custom tasks. This is consistent with Microsoft's existing Team Build targets. - Moved the path to $(MSBuildExtensionsPath)\Windows Installer XML\Wix.targets (c:\program files\MsBuild\Windows Installer XML) to be consistent with MsBuild standards. The wixtasks.dll and wix.targets files should both be installed to this location. To use it, you simply create an MsBuild project file (such as the MsBuild.proj attached) and pass that to MsBuild. Michael Luke [EMAIL PROTECTED] wrote: > Quick piece of information. The MSBuild tasks were written by > somebody quickly and just handed to us. There hasn't been any more > maintenance on the code since then. At this point in time, I expect > you know more about how MSBuild works than anyone on the core WiX > development team. Your bugs and suggestions would be much > appreciated. > > > > > > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Francis > Kam Sent: Thursday, May 11, 2006 3:52 PM > To: Michael F. Collins, III > Cc: WiX-users > Subject: Re: [WiX-users] MSBuild Tasks > > > > Thanks for the reply. I've modified the wix.targets for multiple > output support and it seems to be working fine. I'm rather > inexperienced with MSBuild, so maybe I'm just missing something, but > isn't the only way to get an array of strings to use item groups > instead of properties? You really should be able to define more than > one preprocessor variable from the commandline and it seems to me the > only way is to change DefineConstants to an item group. I've done > this with minimal negative side-effects so far. Anyhow, it's good to > see I'm not crazy, and this is a path that others have considered and > followed before me. > > > > Just in case someone else is interested, what I ended up doing for > multiple output support was changing CompileObjOutput to an ItemGroup, > and then including: > > > @(Compile->'$(IntermediateOutputPath)%(filename)$(IntermediateExt)') > > The Compile target's output of course then becomes: > > @(CompileObjOutput) > > Then I changed OutputFile in the call to Candle in that Compile target > to: > > $(IntermediateOutputPath) > > Instances of $(CompileObjOutput) in the other targets were changed to > @(CompileObjOutput) as well. > > > > -Francis MsBuild.proj Description: MsBuild.proj wix.targets Description: wix.targets - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users