summaryrefslogtreecommitdiffstats
path: root/cmake/modules/FindWiX.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake/modules/FindWiX.cmake')
-rw-r--r--cmake/modules/FindWiX.cmake44
1 files changed, 44 insertions, 0 deletions
diff --git a/cmake/modules/FindWiX.cmake b/cmake/modules/FindWiX.cmake
new file mode 100644
index 0000000..ad8e576
--- /dev/null
+++ b/cmake/modules/FindWiX.cmake
@@ -0,0 +1,44 @@
+#
+# - Find Wix executables
+# Find the candle and light command
+#
+# MAKEWIX_EXECUTABLE - path to the candle utility.
+# CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS - System runtime DLLs
+
+set(_PF86 "PROGRAMFILES(x86)")
+
+# According to
+# https://stackoverflow.com/questions/2375322/variable-for-wix-bin-directory-path
+# and
+# https://weblogs.sqlteam.com/mladenp/2010/02/23/wix-3-tutorial-generating-filedirectory-fragments-with-heat.exe/
+# WiX binaries are in $ENV{WIX}/bin.
+
+# Find candle
+find_program(WIX_CANDLE_EXECUTABLE candle
+ PATH
+ "$ENV{WIX}/bin"
+ "$ENV{PROGRAMFILES}/WiX Toolset v3.11/bin"
+ "$ENV{${_PF86}}/WiX Toolset v3.11/bin"
+ "$ENV{PROGRAMW6432}/WiX Toolset v3.11/bin"
+ DOC "Path to the WiX candle utility."
+)
+
+# Find light
+find_program(WIX_LIGHT_EXECUTABLE light
+ PATH
+ "$ENV{WIX}/bin"
+ "$ENV{PROGRAMFILES}/WiX Toolset v3.11/bin"
+ "$ENV{${_PF86}}/WiX Toolset v3.11/bin"
+ "$ENV{PROGRAMW6432}/WiX Toolset v3.11/bin"
+ DOC "Path to the WiX light utility."
+)
+
+# Find heat
+find_program(WIX_HEAT_EXECUTABLE heat
+ PATH
+ "$ENV{WIX}/bin"
+ "$ENV{PROGRAMFILES}/WiX Toolset v3.11/bin"
+ "$ENV{${_PF86}}/WiX Toolset v3.11/bin"
+ "$ENV{PROGRAMW6432}/WiX Toolset v3.11/bin"
+ DOC "Path to the WiX heat utility."
+)