[cmake-developers] [CMake 0015433]: CPack WIX creates incorrect .wixobj filenames for CPACK_WIX_EXTRA_SOURCES

Mantis Bug Tracker mantis at public.kitware.com
Fri Mar 6 08:08:54 EST 2015


The following issue has been SUBMITTED. 
====================================================================== 
http://public.kitware.com/Bug/view.php?id=15433 
====================================================================== 
Reported By:                Mark Stijnman
Assigned To:                
====================================================================== 
Project:                    CMake
Issue ID:                   15433
Category:                   CPack
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     new
====================================================================== 
Date Submitted:             2015-03-06 08:08 EST
Last Modified:              2015-03-06 08:08 EST
====================================================================== 
Summary:                    CPack WIX creates incorrect .wixobj filenames for
CPACK_WIX_EXTRA_SOURCES
Description: 
When using CPACK_WIX_EXTRA_SOURCES with filenames like MyProject.fragment1.wxs
and MyProject.fragment2.wxs, in both cases the filename generated for the
.wixobj file for the candle command is MyProject.wixobj, stripping both
extensions. When you do this, the light command will therefore be trying to link
MyProject.wixobj twice, leading to duplicate definition errors. 


Steps to Reproduce: 
Run the attached minimal test case, which includes two fragments that each
define a single property, 'Fragment1Prop' and 'Fragment2Prop'. When you build
the PACKAGE target, it will fail with an error "error LGHT0091 : Duplicate
symbol 'Property:Fragment2Prop' found."

Additional Information: 
The solution is to change the call to
cmSystemTools::GetFilenameWithoutExtension, in cmCPackWIXGenerator.cxx, line
274, to a call to cmSystemTools::GetFilenameWithoutLastExtension.

A workaround currently is to just use a different naming convention, like
MyProject_fragment1.wxs. 
====================================================================== 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2015-03-06 08:08 Mark Stijnman  New Issue                                    
2015-03-06 08:08 Mark Stijnman  File Added: testcase.zip                     
======================================================================



More information about the cmake-developers mailing list