summaryrefslogtreecommitdiffstats
path: root/Modules/Internal/CPack/CPackWIX.cmake
blob: 4fdf17cca3bebea008c285a1169404d00e142782 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
# file LICENSE.rst or https://cmake.org/licensing for details.

if(NOT CPACK_WIX_ROOT)
  string(REPLACE "\\" "/" CPACK_WIX_ROOT "$ENV{WIX}")
endif()

if(CPACK_WIX_VERSION VERSION_GREATER_EQUAL 4)
  find_program(CPACK_WIX_EXECUTABLE NAMES wix
    PATHS "${CPACK_WIX_ROOT}" PATH_SUFFIXES "bin")
  if(NOT CPACK_WIX_EXECUTABLE)
    message(FATAL_ERROR "Could not find the 'wix' executable.")
  endif()

  if(NOT DEFINED CPACK_WIX_INSTALL_SCOPE)
    set(CPACK_WIX_INSTALL_SCOPE "perMachine")
  endif()
else()
  find_program(CPACK_WIX_CANDLE_EXECUTABLE candle
    PATHS "${CPACK_WIX_ROOT}" PATH_SUFFIXES "bin")
  if(NOT CPACK_WIX_CANDLE_EXECUTABLE)
    message(FATAL_ERROR "Could not find the WiX candle executable.")
  endif()

  find_program(CPACK_WIX_LIGHT_EXECUTABLE light
    PATHS "${CPACK_WIX_ROOT}" PATH_SUFFIXES "bin")
  if(NOT CPACK_WIX_LIGHT_EXECUTABLE)
    message(FATAL_ERROR "Could not find the WiX light executable.")
  endif()

  if(NOT DEFINED CPACK_WIX_INSTALL_SCOPE)
    set(CPACK_WIX_INSTALL_SCOPE "NONE")
  endif()
endif()