From f7445a6aea8d54d3e385d0388e281cebf8020126 Mon Sep 17 00:00:00 2001 From: Nick Bolton Date: Fri, 7 Mar 2014 19:41:08 +0000 Subject: [PATCH] changed installer from nsis to wix - attempting to fix "synwinxt.dll in use" error on upgrade. --- ext/build/toolchain.py | 47 +++++++++++++--- res/banner.bmp | Bin 0 -> 85896 bytes res/dialog.bmp | Bin 0 -> 461816 bytes src/setup/win32/Include.wxi | 20 +++++++ src/setup/win32/Product.wxs | 97 ++++++++++++++++++++++++++++++++ src/setup/win32/synergy.sln | 26 +++++++++ src/setup/win32/synergy.wixproj | 31 ++++++++++ 7 files changed, 213 insertions(+), 8 deletions(-) create mode 100644 res/banner.bmp create mode 100644 res/dialog.bmp create mode 100644 src/setup/win32/Include.wxi create mode 100644 src/setup/win32/Product.wxs create mode 100644 src/setup/win32/synergy.sln create mode 100644 src/setup/win32/synergy.wixproj diff --git a/ext/build/toolchain.py b/ext/build/toolchain.py index 5f78361a..245e8372 100644 --- a/ext/build/toolchain.py +++ b/ext/build/toolchain.py @@ -407,7 +407,7 @@ class InternalCommands: else: for target in targets: if generator.startswith('Visual Studio'): - self.run_vcbuild(generator, target) + self.run_vcbuild(generator, target, self.sln_filepath()) elif generator == 'Xcode': cmd = self.xcodebuild_cmd + ' -configuration ' + target.capitalize() self.runBuildCommand(cmd, target) @@ -560,12 +560,12 @@ class InternalCommands: # special case for version 10, use new /target:clean if generator.startswith('Visual Studio 10'): for target in targets: - self.run_vcbuild(generator, target, '/target:clean') + self.run_vcbuild(generator, target, self.sln_filepath(), '/target:clean') # any other version of visual studio, use /clean elif generator.startswith('Visual Studio'): for target in targets: - self.run_vcbuild(generator, target, '/clean') + self.run_vcbuild(generator, target, self.sln_filepath(), '/clean') else: cmd = '' @@ -685,7 +685,8 @@ class InternalCommands: elif type == 'win': if sys.platform == 'win32': - self.distNsis(vcRedistDir, qtDir) + #self.distNsis(vcRedistDir, qtDir) + self.distWix() else: package_unsupported = True @@ -771,6 +772,33 @@ class InternalCommands: err = os.system(cmd) self.restore_chdir() + def distWix(self): + generator = self.getGeneratorFromConfig().cmakeName + + arch = 'x86' + if generator.endswith('Win64'): + arch = 'x64' + + version = self.getVersionFromCmake() + args = "/p:DefineConstants=\"Version=%s\"" % version + + self.run_vcbuild(generator, 'release', 'synergy.sln', args, 'src/setup/win32/') + + filename = "%s-%s-Windows-%s.msi" % ( + self.project, + version, + arch) + + old = "bin/Release/synergy.msi" + new = "bin/Release/%s" % (filename) + + try: + os.remove(new) + except OSError: + pass + + os.rename(old, new) + def distNsis(self, vcRedistDir, qtDir): if vcRedistDir == '': @@ -872,7 +900,7 @@ class InternalCommands: elif type == 'win': # get platform based on last generator used - ext = 'exe' + ext = 'msi' generator = self.getGeneratorFromConfig().cmakeName if generator.find('Win64') != -1: platform = 'Windows-x64' @@ -1167,7 +1195,7 @@ class InternalCommands: return path - def run_vcbuild(self, generator, mode, args=''): + def run_vcbuild(self, generator, mode, solution, args='', dir=''): import platform # os_bits should be loaded with '32bit' or '64bit' @@ -1189,6 +1217,7 @@ class InternalCommands: else: # target = 32bit vcvars_platform = 'x86' # 32/64bit OS building 32bit app config_platform = 'Win32' + if mode == 'release': config = 'Release' else: @@ -1197,14 +1226,16 @@ class InternalCommands: if generator.startswith('Visual Studio 10'): cmd = ('@echo off\n' 'call "%s" %s \n' + 'cd "%s"\n' 'msbuild /nologo %s /p:Configuration="%s" /p:Platform="%s" "%s"' - ) % (self.get_vcvarsall(generator), vcvars_platform, args, config, config_platform, self.sln_filepath()) + ) % (self.get_vcvarsall(generator), vcvars_platform, dir, args, config, config_platform, solution) else: config = config + '|' + config_platform cmd = ('@echo off\n' 'call "%s" %s \n' + 'cd "%s"\n' 'vcbuild /nologo %s "%s" "%s"' - ) % (self.get_vcvarsall(generator), vcvars_platform, args, self.sln_filepath(), config) + ) % (self.get_vcvarsall(generator), vcvars_platform, dir, args, solution, config) # Generate a batch file, since we can't use environment variables directly. temp_bat = self.getBuildDir() + r'\vcbuild.bat' diff --git a/res/banner.bmp b/res/banner.bmp new file mode 100644 index 0000000000000000000000000000000000000000..f5838d857ed2559b208458787c3977aba575d97f GIT binary patch literal 85896 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 literal 0 HcmV?d00001 diff --git a/src/setup/win32/Include.wxi b/src/setup/win32/Include.wxi new file mode 100644 index 00000000..457a19fc --- /dev/null +++ b/src/setup/win32/Include.wxi @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/setup/win32/Product.wxs b/src/setup/win32/Product.wxs new file mode 100644 index 00000000..7b32b6e7 --- /dev/null +++ b/src/setup/win32/Product.wxs @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + NOT LEGACY_UNINSTALL_EXISTS + + + + + + NOT Installed + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/setup/win32/synergy.sln b/src/setup/win32/synergy.sln new file mode 100644 index 00000000..d4490568 --- /dev/null +++ b/src/setup/win32/synergy.sln @@ -0,0 +1,26 @@ + +Microsoft Visual Studio Solution File, Format Version 11.00 +# Visual Studio 2010 +Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "synergy", "synergy.wixproj", "{D4BA9F39-6A35-4C8F-9CB2-67FCBE5CAB17}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {D4BA9F39-6A35-4C8F-9CB2-67FCBE5CAB17}.Debug|x86.ActiveCfg = Debug|x86 + {D4BA9F39-6A35-4C8F-9CB2-67FCBE5CAB17}.Debug|x86.Build.0 = Debug|x86 + {D4BA9F39-6A35-4C8F-9CB2-67FCBE5CAB17}.Debug|x64.ActiveCfg = Debug|x64 + {D4BA9F39-6A35-4C8F-9CB2-67FCBE5CAB17}.Debug|x64.Build.0 = Debug|x64 + {D4BA9F39-6A35-4C8F-9CB2-67FCBE5CAB17}.Release|x86.ActiveCfg = Release|x86 + {D4BA9F39-6A35-4C8F-9CB2-67FCBE5CAB17}.Release|x86.Build.0 = Release|x86 + {D4BA9F39-6A35-4C8F-9CB2-67FCBE5CAB17}.Release|x64.ActiveCfg = Release|x64 + {D4BA9F39-6A35-4C8F-9CB2-67FCBE5CAB17}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/src/setup/win32/synergy.wixproj b/src/setup/win32/synergy.wixproj new file mode 100644 index 00000000..ef098810 --- /dev/null +++ b/src/setup/win32/synergy.wixproj @@ -0,0 +1,31 @@ + + + + 3.8 + {d4ba9f39-6a35-4c8f-9cb2-67fcbe5cab17} + 2.0 + synergy + Package + $(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets + $(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets + ..\..\..\bin\$(Configuration)\ + ..\..\..\build\wix\obj\$(Configuration)\ + + + + $(WixExtDir)\WixFirewallExtension.dll + WixFirewallExtension + + + $(WixExtDir)\WixUtilExtension.dll + WixUtilExtension + + + C:\Program Files (x86)\WiX Toolset v3.8\bin\WixUIExtension.dll + WixUIExtension + + + + + + \ No newline at end of file