-
Notifications
You must be signed in to change notification settings - Fork 0
Referenced WiX libraries are not always passed to wix.exe (inconsistency with identical projects) #63
Description
HeatWave Version
1.0.4
Visual Studio Version
17.9.6
Repro Steps
- Clone https://gitlab.com/tortoisegit/tortoisegit/
- Checkout the wix-4 branch
- Open src\TortoiseGit.sln, select Release configuration and Win32 platform
- Build Languages\Lang_fr.wixproj and Languages\Lang_de.wixproj
Diff the wixproj files (Lang_de.wixproj, Lang_fr.wixproj, WiXProj.common.props), there are no significant differences.
Actual Result
Some of the Language pack MSI files build correctly, e.g. Lang_de, but some of them don't, e.g. Lang_fr.
For the Lang_fr language pack msi wix repots lots of errors such as D:\TortoiseGit\Languages\LanguagePack.wxs(60): error WIX0094: The identifier 'WixUI:WixUI_ErrorProgressText' could not be found. Ensure you have typed the reference correctly and that all the necessary inputs are provided to the linker. [D:\TortoiseGit\Languages\Lang_fr.wixproj].
When building using msbuild you get more information and can see that for Lang_de the Wix library is correctly passed to wix.exe (note the -ext parameter):
C:\Users\USERNAME\.nuget\packages\wixtoolset.sdk\4.0.5\tools\net472\x86\wix.exe build -platform x86 -out obj\Win32\Release-Langs-MSI\TortoiseGit-LanguagePack-de.msi -outputType Package -pdb obj\Win32\Release-Langs-MSI\TortoiseGit-LanguagePack-de.wixpdb -pdbType full -culture de-DE -d TSVNHelpFile=0 -d TMergeHelpFile=0 -d COUNTRYID=1031 -d LANGNATIVE=German -d SPELL=1 -d "DevEnvDir=C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\\" -d Configuration=Release-Langs-MSI -d OutDir=bin\Win32\Release-Langs-MSI\ -d InstallerPlatform=x86 -d Platform=Win32 -d ProjectDir=D:\TortoiseGit\Languages\ -d ProjectExt=.wixproj -d ProjectFileName=Lang_de.wixproj -d ProjectName=Lang_de -d ProjectPath=D:\TortoiseGit\Languages\Lang_de.wixproj -d TargetDir=D:\TortoiseGit\Languages\bin\Win32\Release-Langs-MSI\ -d TargetExt=.msi -d TargetFileName=TortoiseGit-LanguagePack-de.msi -d TargetName=TortoiseGit-LanguagePack-de -d TargetPath=D:\TortoiseGit\Languages\bin\Win32\Release-Langs-MSI\TortoiseGit-LanguagePack-de.msi -ext C:\Users\USERNAME\.nuget\packages\wixtoolset.ui.wixext\4.0.5\wixext4\WixToolset.UI.wixext.dll -intermediatefolder obj\Win32\Release-Langs-MSI\ -trackingfile obj\Win32\Release-Langs-MSI\Lang_de.wixproj.BindTracking-de-DE.txt -nologo -sw1008 LanguagePack.wxs WixUI_LanguagePacks.wxs
For Lang_fr no -ext parameter is passed to wix.exe:
C:\Users\USERNAME\.nuget\packages\wixtoolset.sdk\4.0.5\tools\net472\x86\wix.exe build -platform x86 -out obj\Win32\Release-Langs-MSI\TortoiseGit-LanguagePack-fr.msi -outputType Package -pdb obj\Win32\Release-Langs-MSI\TortoiseGit-LanguagePack-fr.wixpdb -pdbType full -culture fr-FR -d TSVNHelpFile=0 -d TMergeHelpFile=0 -d COUNTRYID=1036 -d LANGNATIVE=French -d SPELL=1 -d "DevEnvDir=C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\\" -d Configuration=Release-Langs-MSI -d OutDir=bin\Win32\Release-Langs-MSI\ -d InstallerPlatform=x86 -d Platform=Win32 -d ProjectDir=D:\TortoiseGit\Languages\ -d ProjectExt=.wixproj -d ProjectFileName=Lang_fr.wixproj -d ProjectName=Lang_fr -d ProjectPath=D:\TortoiseGit\Languages\Lang_fr.wixproj -d TargetDir=D:\TortoiseGit\Languages\bin\Win32\Release-Langs-MSI\ -d TargetExt=.msi -d TargetFileName=TortoiseGit-LanguagePack-fr.msi -d TargetName=TortoiseGit-LanguagePack-fr -d TargetPath=D:\TortoiseGit\Languages\bin\Win32\Release-Langs-MSI\TortoiseGit-LanguagePack-fr.msi -intermediatefolder obj\Win32\R elease-Langs-MSI\ -trackingfile obj\Win32\Release-Langs-MSI\Lang_fr.wixproj.BindTracking-fr-FR.txt -nologo -sw1008 LanguagePack.wxs WixUI_LanguagePacks.wxs
Expected Result
All language pack MSI files build and the referenced WiX libraries are honored for all WiXProjects.
