Bugs item #1634186, was opened at 2007-01-12 16:33
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=642714&aid=1634186&group_id=105970

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: msbuild
Group: v2.0
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Matt Ward (mrward)
Assigned to: Nobody/Anonymous (nobody)
Summary: Wix.targets - Compiling multiple .wxs files into a .wixlib

Initial Comment:
1) Do not seem to be able to compile multiple WiX files (.wxs) into a single 
package (.msi) with the wix.targets file from WiX 2.0.4820 or 4908. You see a 
candle error:

candle.exe : error CNDL0001: cannot specify more than one source file with 
single output file.  Either specify an output directory for the -out argument 
by ending the argument with a '\' or remove the -out argument to have the 
source files compiled to the current directory.

2) Unable to build WiX libraries (.wixlib) with wix.targets version 2.0.4820. 
The .wixlib is not generated.

To fix 1):

Modify the wix.targets (2.0.4820) file as shown below. The xml below was taken 
from the wix.targets in WiX 3.0.

From:

    <CompileObjOutput Condition=" '$(CompileObjOutput)' == '' And 
'$(NoObjOutputDefault)' != 'true' 
">$(IntermediateOutputPath)$(OutputName)$(IntermediateExt)</CompileObjOutput><!--
 Example, obj\Debug\MySetup.wixobj -->

To:

    <CompileObjOutput Condition="$(CompileObjOutput) == 
''">@(Compile->'$(IntermediateOutputPath)%(Filename)$(IntermediateExt)')</CompileObjOutput>
 <!-- Example, obj\Debug\MySetup.wixobj -->

The NoObjOutputDefault check should probably be included in the condition above.

From:

    <Target
        Name="Compile"
        Inputs="@(Compile);$(MSBuildAllProjects)"
        Outputs="$(CompileObjOutput)"
        DependsOnTargets="$(CompileDependsOn)">

To:

    <Target
        Name="Compile"
        Inputs="@(Compile);$(MSBuildAllProjects)"
        Outputs="$(IntermediateOutputPath)%(Compile.Filename)$(IntermediateExt)"
        DependsOnTargets="$(CompileDependsOn)"
        Condition="@(Compile) != ''">
        
        
To fix 2):

Modify the wix.targets file as shown below (again the xml was taken from the 
wix.targets in WiX 3).

From:

<BuildDependsOn>PrepareForBuild;Compile;Link</BuildDependsOn>

To:

<BuildDependsOn>PrepareForBuild;Compile;Link;Lib</BuildDependsOn>


----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=642714&aid=1634186&group_id=105970

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-devs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-devs

Reply via email to