From c9b9d9f5152b2ec16e88c0b235d50420c52b41de Mon Sep 17 00:00:00 2001 From: Vladislav Vaintroub Date: Thu, 7 Feb 2019 16:46:39 +0100 Subject: [PATCH] MDEV-18506 MSI can't be built if MFC package is not installed with Visual Studio candle.exe's preprocessor flags (-dHaveUpgradeWizard=0 -DHaveInnodb=1) were not passed correctly to EXECUTE_PROCESS Fix is to make a list out of the EXTRA_WIX_PREPROCESSOR_FLAGS string, and use the preprocessor flags list in EXECUTE_PROCESS. --- win/packaging/create_msi.cmake.in | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/win/packaging/create_msi.cmake.in b/win/packaging/create_msi.cmake.in index fceea041676..0dfac8db6fd 100644 --- a/win/packaging/create_msi.cmake.in +++ b/win/packaging/create_msi.cmake.in @@ -401,9 +401,10 @@ IF("$ENV{EXTRA_LIGHT_ARGS}") ENDIF() FILE(REMOVE mysql_server.wixobj extra.wixobj) +STRING(REPLACE " " ";" EXTRA_WIX_PREPROCESSOR_FLAGS_LIST ${EXTRA_WIX_PREPROCESSOR_FLAGS}) EXECUTE_PROCESS( COMMAND ${CANDLE_EXECUTABLE} - ${EXTRA_WIX_PREPROCESSOR_FLAGS} + ${EXTRA_WIX_PREPROCESSOR_FLAGS_LIST} ${CANDLE_ARCH} -ext WixUtilExtension -ext WixFirewallExtension @@ -413,7 +414,7 @@ EXECUTE_PROCESS( EXECUTE_PROCESS( COMMAND ${CANDLE_EXECUTABLE} ${CANDLE_ARCH} - ${EXTRA_WIX_PREPROCESSOR_FLAGS} + ${EXTRA_WIX_PREPROCESSOR_FLAGS_LIST} -ext WixUtilExtension -ext WixFirewallExtension ${CMAKE_CURRENT_BINARY_DIR}/extra.wxs