20
20
# along with this program; if not, write to the Free Software
21
21
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
22
22
23
- IF (NOT WIN32 )
24
- RETURN ()
25
- ENDIF ()
26
-
27
- # Need an extra indirection to access ENV(ProgramFiles(x86))
28
- SET (MYENV "ProgramFiles(x86)" )
29
-
30
- # Look in various paths for 'heat.exe'
31
- # Different installations have different layouts.
32
- # Not really necessary to use V3.8 but keep backward compatibility just in case.
33
- IF (MSVC_VERSION LESS 1900 )
34
- FOREACH (path
35
- "$ENV{ProgramFiles} /WiX Toolset V3.8"
36
- "$ENV{ProgramFiles} /WiX Toolset V3.8/bin"
37
- "$ENV{${MYENV} }/WiX Toolset V3.8"
38
- "$ENV{${MYENV} }/WiX Toolset V3.8/bin" )
39
- FIND_PATH (WIX_DIR heat.exe "${path} " )
40
- MESSAGE (STATUS "WIX_DIR ${WIX_DIR} path ${path} " )
41
- IF (WIX_DIR )
42
- BREAK ()
43
- ENDIF ()
44
- ENDFOREACH ()
45
- ELSE ()
46
- FOREACH (path
47
- "$ENV{ProgramFiles} /WiX Toolset V3.10"
48
- "$ENV{ProgramFiles} /WiX Toolset V3.10/bin"
49
- "$ENV{${MYENV} }/WiX Toolset V3.10"
50
- "$ENV{${MYENV} }/WiX Toolset V3.10/bin" )
51
- FIND_PATH (WIX_DIR heat.exe "${path} " )
52
- MESSAGE (STATUS "WIX_DIR ${WIX_DIR} path ${path} " )
53
- IF (WIX_DIR )
54
- BREAK ()
55
- ENDIF ()
56
- ENDFOREACH ()
23
+ # First we look for "wix.exe" using the CMake variable WIX_DIR, second using the
24
+ # environment variable WIX, and then we add "$ENV{USERPROFILE}\\.dotnet\\tools"
25
+ # to the PATH before searching the other default locations
26
+ IF (NOT WIX_DIR AND "$ENV{WIX} " )
27
+ SET (WIX_DIR "$ENV{WIX} " )
57
28
ENDIF ()
58
-
59
- # Finally, look in environment
60
- IF (NOT WIX_DIR )
61
- FIND_PATH (WIX_DIR heat.exe "$ENV{WIX} " )
62
- MESSAGE (STATUS "WIX_DIR ${WIX_DIR} looked at $ENV{WIX} " )
29
+ FIND_PATH (WIX_DIR wix.exe "$ENV{USERPROFILE} \\ .dotnet\\ tools" )
30
+
31
+ IF (NOT _WIX_DIR_CHECKED )
32
+ SET (_WIX_DIR_CHECKED 1 CACHE INTERNAL "" )
33
+ IF (WIX_DIR )
34
+ MESSAGE (STATUS "WIX_DIR ${WIX_DIR} " )
35
+ ELSE ()
36
+ MESSAGE (STATUS "Cannot find \" wix.exe\" , installer project will not be generated" )
37
+ ENDIF ()
63
38
ENDIF ()
64
39
65
40
IF (NOT WIX_DIR )
66
- IF (NOT _WIX_DIR_CHECKED )
67
- SET (_WIX_DIR_CHECKED 1 CACHE INTERNAL "" )
68
- MESSAGE (STATUS "Cannot find wix 3, installer project will not be generated" )
69
- ENDIF ()
70
41
RETURN ()
71
42
ENDIF ()
72
43
73
- FIND_PROGRAM (HEAT_EXECUTABLE heat ${WIX_DIR} )
74
- FIND_PROGRAM (CANDLE_EXECUTABLE candle ${WIX_DIR} )
75
- FIND_PROGRAM (LIGHT_EXECUTABLE light ${WIX_DIR} )
44
+ FIND_PROGRAM (WIX_EXECUTABLE wix ${WIX_DIR} )
76
45
77
46
# WiX wants the license text as rtf; if there is no rtf license,
78
47
# we create a fake one from the plain text LICENSE file.
@@ -92,9 +61,9 @@ SET(CPACK_WIX_CONFIG ${CMAKE_CURRENT_SOURCE_DIR}/CPackWixConfig.cmake)
92
61
SET (CPACK_WIX_INCLUDE "${CMAKE_CURRENT_BINARY_DIR} /mysql_server_extra.wxs;${CMAKE_CURRENT_SOURCE_DIR} /custom_ui.wxs" )
93
62
94
63
IF (CMAKE_SIZEOF_VOID_P EQUAL 8 )
95
- SET (WixWin64 " Win64='yes '" )
64
+ SET (WixWin64 " Bitness='always64 '" )
96
65
ELSE ()
97
- SET (WixWin64 " Win64='no '" )
66
+ SET (WixWin64 " Bitness='always32 '" )
98
67
ENDIF ()
99
68
100
69
IF ("${VERSION} " MATCHES "-ndb-" )
@@ -111,21 +80,13 @@ IF("${VERSION}" MATCHES "-ndb-")
111
80
MESSAGE (STATUS "DISPLAY_PATCH_VERSION: ${DISPLAY_PATCH_VERSION} " )
112
81
ENDIF ()
113
82
114
- #CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/mysql_server_extra.wxs.in
115
- # ${CMAKE_CURRENT_BINARY_DIR}/mysql_server_extra.wxs)
116
-
117
- ADD_CUSTOM_TARGET (
118
- configure_mysql_server_extra
119
- COMMAND ${CMAKE_COMMAND}
120
- -DINPUT_FILE=${CMAKE_CURRENT_SOURCE_DIR}/mysql_server_extra.wxs.in
121
- -DOUTPUT_FILE=${CMAKE_CURRENT_BINARY_DIR}/mysql_server_extra.wxs
122
- -DMAJOR_VERSION=${MAJOR_VERSION}
123
- -DMINOR_VERSION=${MINOR_VERSION}
124
- -DWixWin64=${WixWin64}
125
- -P ${CMAKE_CURRENT_SOURCE_DIR} /configure_file.cmake
126
- )
83
+ CONFIGURE_FILE (
84
+ ${CMAKE_CURRENT_SOURCE_DIR} /mysql_server_extra.wxs.in
85
+ ${CMAKE_CURRENT_BINARY_DIR} /mysql_server_extra.wxs
86
+ @ONLY )
127
87
128
- CONFIGURE_FILE (${CMAKE_CURRENT_SOURCE_DIR} /create_msi.cmake.in
88
+ CONFIGURE_FILE (
89
+ ${CMAKE_CURRENT_SOURCE_DIR} /create_msi.cmake.in
129
90
${CMAKE_CURRENT_BINARY_DIR} /create_msi.cmake
130
91
@ONLY )
131
92
@@ -151,7 +112,6 @@ ADD_CUSTOM_TARGET(
151
112
${CONFIG_PARAM}
152
113
-P ${CMAKE_CURRENT_BINARY_DIR} /create_msi.cmake
153
114
)
154
- ADD_DEPENDENCIES (MSI configure_mysql_server_extra )
155
115
156
116
IF (TARGET remove_INFO_SRC_from_bs )
157
117
ADD_DEPENDENCIES (MSI remove_INFO_SRC_from_bs )
0 commit comments