summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVladislav Vaintroub <wlad@montyprogram.com>2012-05-04 03:51:30 +0200
committerVladislav Vaintroub <wlad@montyprogram.com>2012-05-04 03:51:30 +0200
commite3ffaed1474971b656a3c77dc1d2605a5dbf02f6 (patch)
tree4e6d26242c8dfc365c1b0ab3c79650c5b686d335
parentd231dc8f59221166eea13a6580bbcc8c0c755855 (diff)
downloadmariadb-git-e3ffaed1474971b656a3c77dc1d2605a5dbf02f6.tar.gz
support same version upgrade for MSI
-rw-r--r--cmake/mysql_version.cmake8
-rw-r--r--win/packaging/create_msi.cmake.in3
-rw-r--r--win/packaging/mysql_server.wxs.in8
3 files changed, 12 insertions, 7 deletions
diff --git a/cmake/mysql_version.cmake b/cmake/mysql_version.cmake
index 5f60cb68101..76cd7995ed1 100644
--- a/cmake/mysql_version.cmake
+++ b/cmake/mysql_version.cmake
@@ -126,10 +126,12 @@ ENDIF()
IF(MSVC)
# Tiny version is used to identify the build, it can be set with cmake -DTINY_VERSION=<number>
# to bzr revno for example (in the CI builds)
- SET(TINY_VERSION "0" CACHE INTERNAL "")
+ IF(NOT TINY_VERSION)
+ SET(TINY_VERSION "0")
+ ENDIF()
GET_FILENAME_COMPONENT(MYSQL_CMAKE_SCRIPT_DIR ${CMAKE_CURRENT_LIST_FILE} PATH)
-
+
SET(FILETYPE VFT_APP)
CONFIGURE_FILE(${MYSQL_CMAKE_SCRIPT_DIR}/versioninfo.rc.in
${CMAKE_BINARY_DIR}/versioninfo_exe.rc)
@@ -137,7 +139,7 @@ IF(MSVC)
SET(FILETYPE VFT_DLL)
CONFIGURE_FILE(${MYSQL_CMAKE_SCRIPT_DIR}/versioninfo.rc.in
${CMAKE_BINARY_DIR}/versioninfo_dll.rc)
-
+
FUNCTION(ADD_VERSION_INFO target target_type sources_var)
IF("${target_type}" MATCHES "SHARED" OR "${target_type}" MATCHES "MODULE")
SET(rcfile ${CMAKE_BINARY_DIR}/versioninfo_dll.rc)
diff --git a/win/packaging/create_msi.cmake.in b/win/packaging/create_msi.cmake.in
index d02791d3b9f..a8ca35906e8 100644
--- a/win/packaging/create_msi.cmake.in
+++ b/win/packaging/create_msi.cmake.in
@@ -8,6 +8,7 @@ SET(VERSION "@VERSION@")
SET(MAJOR_VERSION "@MAJOR_VERSION@")
SET(MINOR_VERSION "@MINOR_VERSION@")
SET(PATCH_VERSION "@PATCH_VERSION@")
+SET(TINY_VERSION "@TINY_VERSION@")
SET(CMAKE_SIZEOF_VOID_P @CMAKE_SIZEOF_VOID_P@)
SET(MANUFACTURER "@MANUFACTURER@")
SET(WIXCA_LOCATION "@WIXCA_LOCATION@")
@@ -421,7 +422,7 @@ EXECUTE_PROCESS(
EXECUTE_PROCESS(
COMMAND ${LIGHT_EXECUTABLE} -ext WixUIExtension -ext WixUtilExtension
- -ext WixFirewallExtension
+ -ext WixFirewallExtension -sice:ICE61
mysql_server.wixobj extra.wixobj -out ${CPACK_PACKAGE_FILE_NAME}.msi
${EXTRA_LIGHT_ARGS}
)
diff --git a/win/packaging/mysql_server.wxs.in b/win/packaging/mysql_server.wxs.in
index 82c17d7577c..79fde801cf5 100644
--- a/win/packaging/mysql_server.wxs.in
+++ b/win/packaging/mysql_server.wxs.in
@@ -4,7 +4,7 @@
Id="*"
UpgradeCode="@CPACK_WIX_UPGRADE_CODE@"
Name="@CPACK_WIX_PACKAGE_NAME@"
- Version="@MAJOR_VERSION@.@MINOR_VERSION@.@PATCH_VERSION@"
+ Version="@MAJOR_VERSION@.@MINOR_VERSION@.@PATCH_VERSION@.@TINY_VERSION@"
Language="1033"
Manufacturer="@MANUFACTURER@">
@@ -26,14 +26,16 @@
<UpgradeVersion
Minimum="@MAJOR_VERSION@.@MINOR_VERSION@.0"
IncludeMinimum="yes"
- Maximum="@MAJOR_VERSION@.@MINOR_VERSION@.@PATCH_VERSION@"
+ Maximum="@MAJOR_VERSION@.@MINOR_VERSION@.@PATCH_VERSION@.@TINY_VERSION@"
+ IncludeMaximum="yes"
Property="OLDERVERSIONBEINGUPGRADED"
MigrateFeatures="yes"
/>
<?endif?>
<UpgradeVersion
- Minimum="@MAJOR_VERSION@.@MINOR_VERSION@.@PATCH_VERSION@"
+ Minimum="@MAJOR_VERSION@.@MINOR_VERSION@.@PATCH_VERSION@.@TINY_VERSION@"
Maximum="@MAJOR_VERSION@.@MINOR_VERSION@.999"
+ IncludeMinimum="no"
OnlyDetect="yes"
Property="NEWERVERSIONDETECTED" />
</Upgrade>