diff options
author | Brad King <brad.king@kitware.com> | 2013-12-19 15:13:47 (GMT) |
---|---|---|
committer | CMake Topic Stage <kwrobot@kitware.com> | 2013-12-19 15:13:47 (GMT) |
commit | eb20fab73673c6a3cbcc705c6d22a27ab54740d8 (patch) | |
tree | 1efd207038ab71a1400d82ac93d454de1e30309a /Modules | |
parent | 3b00ff84d2759567564fd81b9d28ea6b952ec22e (diff) | |
parent | 8632233a2fc0e27106977a820b6b439e72b45383 (diff) | |
download | CMake-eb20fab73673c6a3cbcc705c6d22a27ab54740d8.zip CMake-eb20fab73673c6a3cbcc705c6d22a27ab54740d8.tar.gz CMake-eb20fab73673c6a3cbcc705c6d22a27ab54740d8.tar.bz2 |
Merge topic 'wix-fragment-injection'
8632233 CPackWiX: allow customization of generated WiX sources
Diffstat (limited to 'Modules')
-rw-r--r-- | Modules/CPackWIX.cmake | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/Modules/CPackWIX.cmake b/Modules/CPackWIX.cmake index 237c5bc..d9e0ba7 100644 --- a/Modules/CPackWIX.cmake +++ b/Modules/CPackWIX.cmake @@ -116,6 +116,57 @@ # If this variable is not set, the default MSI template included with CMake # will be used. # +# .. variable:: CPACK_WIX_PATCH_FILE +# +# Optional XML file with fragments to be inserted into generated WiX sources +# +# This optional variable can be used to specify an XML file that the +# WiX generator will use to inject fragments into its generated +# source files. +# +# Patch files understood by the CPack WiX generator +# roughly follow this RELAX NG compact schema: +# +# .. code-block:: none +# +# start = CPackWiXPatch +# +# CPackWiXPatch = element CPackWiXPatch { CPackWiXFragment* } +# +# CPackWiXFragment = element CPackWiXFragment +# { +# attribute Id { string }, +# fragmentContent* +# } +# +# fragmentContent = element * - CPackWiXFragment +# { +# (attribute * { text } | text | fragmentContent)* +# } +# +# Currently fragments can be injected into most +# Component, File and Directory elements. +# +# The following example illustrates how this works. +# +# Given that the WiX generator creates the following XML element: +# +# .. code-block:: xml +# +# <Component Id="CM_CP_applications.bin.my_libapp.exe" Guid="*"/> +# +# The following XML patch file may be used to inject an Environment element +# into it: +# +# .. code-block:: xml +# +# <CPackWiXPatch> +# <CPackWiXFragment Id="CM_CP_applications.bin.my_libapp.exe"> +# <Environment Id="MyEnvironment" Action="set" +# Name="MyVariableName" Value="MyVariableValue"/> +# </CPackWiXFragment> +# </CPackWiXPatch> +# # .. variable:: CPACK_WIX_EXTRA_SOURCES # # Extra WiX source files |