diff options
author | David Cole <david.cole@kitware.com> | 2012-04-21 15:33:58 (GMT) |
---|---|---|
committer | David Cole <david.cole@kitware.com> | 2012-04-21 15:36:25 (GMT) |
commit | aa8acea3982582cb8e20f69ec897aed6dd31a0a5 (patch) | |
tree | aaf0b0aff66400c21890bb98da4f9f710b9a8d36 | |
parent | 2809379f15617fac97c6328e4241cab3212ee5ab (diff) | |
download | CMake-aa8acea3982582cb8e20f69ec897aed6dd31a0a5.zip CMake-aa8acea3982582cb8e20f69ec897aed6dd31a0a5.tar.gz CMake-aa8acea3982582cb8e20f69ec897aed6dd31a0a5.tar.bz2 |
CPack/NSIS: Add CPACK_NSIS_EXTRA_PREINSTALL_COMMANDS (#13085)
Allows custom NSIS commands to run prior to any installation
actions. Projects that need to run an uninstaller first,
especially one from a non-NSIS previous revision of a project
that is NOW using CPack and NSIS, may do so by putting custom
NSIS commands into this variable.
Inspired-by: David Golub
-rw-r--r-- | Modules/CPackNSIS.cmake | 14 | ||||
-rw-r--r-- | Modules/NSIS.template.in | 1 |
2 files changed, 12 insertions, 3 deletions
diff --git a/Modules/CPackNSIS.cmake b/Modules/CPackNSIS.cmake index 5e2ba17..66c33a8 100644 --- a/Modules/CPackNSIS.cmake +++ b/Modules/CPackNSIS.cmake @@ -31,13 +31,21 @@ ##end # ##variable -# CPACK_NSIS_EXTRA_INSTALL_COMMANDS - Extra NSIS commands that will -# be added to the install Section. +# CPACK_NSIS_EXTRA_PREINSTALL_COMMANDS - Extra NSIS commands that +# will be added to the beginning of the install Section, before your +# install tree is available on the target system. +##end +# +##variable +# CPACK_NSIS_EXTRA_INSTALL_COMMANDS - Extra NSIS commands that +# will be added to the end of the install Section, after your +# install tree is available on the target system. ##end # ##variable # CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS - Extra NSIS commands that will -# be added to the uninstall Section. +# be added to the uninstall Section, before your install tree is +# removed from the target system. ##end # ##variable diff --git a/Modules/NSIS.template.in b/Modules/NSIS.template.in index 819cc5c..e7edead 100644 --- a/Modules/NSIS.template.in +++ b/Modules/NSIS.template.in @@ -637,6 +637,7 @@ Section "-Core installation" ;Use the entire tree produced by the INSTALL target. Keep the ;list of directories here in sync with the RMDir commands below. SetOutPath "$INSTDIR" + @CPACK_NSIS_EXTRA_PREINSTALL_COMMANDS@ @CPACK_NSIS_FULL_INSTALL@ ;Store installation folder |