소스 검색

Merge topic 'wix-root-description'

e29bfbf2 CPackWIX: Support custom title and description for the root feature
Brad King 9 년 전
부모
커밋
7b65e49529
3개의 변경된 파일26개의 추가작업 그리고 1개의 파일을 삭제
  1. 7 0
      Help/release/dev/wix-root-description.rst
  2. 11 0
      Modules/CPackWIX.cmake
  3. 8 1
      Source/CPack/WiX/cmCPackWIXGenerator.cxx

+ 7 - 0
Help/release/dev/wix-root-description.rst

@@ -0,0 +1,7 @@
+wix-root-description
+--------------------
+
+* The CPack WIX generator now supports
+  :variable:`CPACK_WIX_ROOT_FEATURE_TITLE` and
+  :variable:`CPACK_WIX_ROOT_FEATURE_DESCRIPTION` to allow the specification
+  of a custom title and description for the root feature element.

+ 11 - 0
Modules/CPackWIX.cmake

@@ -237,6 +237,17 @@
 #  * ARPURLUPDATEINFO - Update information URL
 #  * ARPHELPTELEPHONE - Help and support telephone number
 #  * ARPSIZE - Size (in kilobytes) of the application
+#
+# .. variable:: CPACK_WIX_ROOT_FEATURE_TITLE
+#
+# Sets the name of the root install feature in the WIX installer. Same as
+# CPACK_COMPONENT_<compName>_DISPLAY_NAME for components.
+#
+# .. variable:: CPACK_WIX_ROOT_FEATURE_DESCRIPTION
+#
+# Sets the description of the root install feature in the WIX installer. Same as
+# CPACK_COMPONENT_<compName>_DESCRIPTION for components.
+#
 
 #=============================================================================
 # Copyright 2014-2015 Kitware, Inc.

+ 8 - 1
Source/CPack/WiX/cmCPackWIXGenerator.cxx

@@ -464,7 +464,14 @@ bool cmCPackWIXGenerator::CreateWiXSourceFiles()
     return false;
   }
 
-  featureDefinitions.AddAttribute("Title", cpackPackageName);
+  std::string featureTitle = cpackPackageName;
+  if (const char* title = GetOption("CPACK_WIX_ROOT_FEATURE_TITLE")) {
+    featureTitle = title;
+  }
+  featureDefinitions.AddAttribute("Title", featureTitle);
+  if (const char* desc = GetOption("CPACK_WIX_ROOT_FEATURE_DESCRIPTION")) {
+    featureDefinitions.AddAttribute("Description", desc);
+  }
   featureDefinitions.AddAttribute("Level", "1");
   this->Patch->ApplyFragment("#PRODUCTFEATURE", featureDefinitions);