Browse Source

WiX: Add the build directory to IncludeSearchPaths for candle.exe

CPack creates cpack_variables.wxi in the build directory. In the WiX
template it can be used by <?include "cpack_variables.wxi"?> because
the template is configured into main.wxs in the build directory.
Because the extra source files are in the source directory it was necessary to use
<?include "$(sys.CURRENTDIR)_CPack_Packages\win32\WIX\cpack_variables.wxi"?>.
This requires knowledge about the build directory structure and
is avoided by this change by adding the build directory to the IncludeSearchPaths.
Lars Schmertmann 7 years ago
parent
commit
f2134169f6
1 changed files with 4 additions and 0 deletions
  1. 4 0
      Source/CPack/WiX/cmCPackWIXGenerator.cxx

+ 4 - 0
Source/CPack/WiX/cmCPackWIXGenerator.cxx

@@ -100,6 +100,10 @@ bool cmCPackWIXGenerator::RunCandleCommand(std::string const& sourceFile,
     command << " -ext " << QuotePath(ext);
   }
 
+  if (sourceFile.rfind(this->CPackTopLevel, 0) != 0) {
+    command << " " << QuotePath("-I" + this->CPackTopLevel);
+  }
+
   AddCustomFlags("CPACK_WIX_CANDLE_EXTRA_FLAGS", command);
 
   command << " " << QuotePath(sourceFile);