@@ -3239,7 +3239,7 @@ option(ENGINEPRIME "Support for library export to Denon Engine Prime" ON)
32393239if (ENGINEPRIME)
32403240 # libdjinterop does not currently have a stable ABI, so we fetch sources for a specific tag, build here, and link
32413241 # statically. This situation should be reviewed once libdjinterop hits version 1.x.
3242- set (LIBDJINTEROP_VERSION 0.27.0 )
3242+ set (LIBDJINTEROP_VERSION 0.27.1 )
32433243 # Look whether an existing installation of libdjinterop matches the required version.
32443244 find_package (DjInterop ${LIBDJINTEROP_VERSION} EXACT CONFIG )
32453245 if (NOT DjInterop_FOUND)
@@ -3302,7 +3302,7 @@ if(ENGINEPRIME)
33023302 "https://github.com/xsco/libdjinterop/archive/refs/tags/${LIBDJINTEROP_VERSION} .tar.gz"
33033303 "https://launchpad.net/~xsco/+archive/ubuntu/djinterop/+sourcefiles/libdjinterop/${LIBDJINTEROP_VERSION} -0ubuntu1/libdjinterop_${LIBDJINTEROP_VERSION} .orig.tar.gz"
33043304 URL_HASH
3305- SHA256=c4e73bf3907fd45be1c9767bcd9f367cbb7c279b4fe047bf2216bc92ae3d1668
3305+ SHA256=4c7393ab70b7c92374557e72c86f650bea73ba50e59f6e5a683c69038cc7ea48
33063306 DOWNLOAD_DIR "${CMAKE_CURRENT_BINARY_DIR } /downloads"
33073307 DOWNLOAD_NAME "libdjinterop-${LIBDJINTEROP_VERSION} .tar.gz"
33083308 PREFIX "libdjinterop-${LIBDJINTEROP_VERSION} "
@@ -5386,6 +5386,8 @@ set(
53865386 "${CMAKE_CURRENT_SOURCE_DIR } /packaging/CPackDebInstall.cmake"
53875387)
53885388
5389+ # Use WiX toolset version >= 4.0 for building Windows installers.
5390+ set (CPACK_WIX_VERSION 4)
53895391set (CPACK_WIX_UPGRADE_GUID "921DC99C-4DCF-478D-B950-50685CB9E6BE" )
53905392set (
53915393 CPACK_WIX_LICENSE_RTF
@@ -5424,6 +5426,24 @@ if(WIN32)
54245426 )
54255427 endif ()
54265428
5429+ # Build the custom action DLL for cross-scope upgrade detection.
5430+ # Old Mixxx (<=2.5) was installed per-user due to a CPack bug (CMP0172).
5431+ # The standard FindRelatedProducts skips per-user products when the
5432+ # current install is per-machine. The custom action calls scope-agnostic
5433+ # MsiEnumRelatedProducts() to detect and mark the old installation for
5434+ # removal by RemoveExistingProducts.
5435+ add_subdirectory (packaging/wix )
5436+ set (CPACK_WIX_INSTALL_SCOPE "perMachine" )
5437+ file (
5438+ GENERATE OUTPUT
5439+ "${CMAKE_CURRENT_BINARY_DIR } /packaging/wix/MixxxUpgradePatch.xml"
5440+ INPUT "${CMAKE_CURRENT_SOURCE_DIR } /packaging/wix/MixxxUpgradePatch.xml.in"
5441+ )
5442+ set (
5443+ CPACK_WIX_PATCH_FILE
5444+ "${CMAKE_CURRENT_BINARY_DIR } /packaging/wix/MixxxUpgradePatch.xml"
5445+ )
5446+
54275447 # uses CMAKE_PROJECT_VERSION
54285448 configure_file (packaging/wix/LICENSE.rtf.in packaging/wix/LICENSE.rtf @ONLY )
54295449endif ()
0 commit comments