WiX plugin files and directories

Developer
Sep 3, 2009 at 9:37 PM

Hi Chris.  I put together an integration test for the new outputDirectory configuration param in the WiX plugin and have some questions.

I found it somewhat non-intuitive that you have to do this:

        <configuration>

          <sourceFiles>

            <sourceFile>IT005.wxs</sourceFile>

          </sourceFiles>

          <outputDirectory>target</outputDirectory>

          <objectFiles>

            <objectFile>target/IT005.wixobj</objectFile>

          </objectFiles>

          <outputFile>target/IT005.msi</outputFile>

        </configuration>

If I specify an outputDirectory to use with candle, shouldn't light's objectFile param already know that's where the object file will be?
And having specified an outputDirectory, why do I have to repeat it in the outputFile param?
I was thinking of making outputDirectory default to target\wix, (which you could change if you want,) and then having the rest of the goals just assume that's where things are.
I think outputDirectory was added for the candle goal, but light has the same -o command line switch available, so I wonder if we need candleOutputDirectory and lightOutputDirectory.

What do you think?
-- 
Wendy 
Sep 11, 2009 at 5:57 PM

Wendy,

The outputFile is needed incase you have more than one wixobj file.  The directory part of it can be removed, that was just quick and dirty by me to get it working quickly and test.  But if you have multiple wixobj files you need to tell light to compile them to one msi and name it. 

For ultimate flexiblity it would be cool to have candleOutputDirectory and lightOutputDirectory and a param called something like lightOutputFileName?  Something like that, let me know what you think?

Chris

Sep 11, 2009 at 6:00 PM

I forgot to mention that it might be a good idea to just have a parameter called outputDirectory that overrides candleOutputDirectory and lightOutputDirectory so you don't have to specify one of each if you don't want to.  Might be getting a little complex though?

Chris