From bb2cc41c4d11e64ef516ad99cf3272223608dc2a Mon Sep 17 00:00:00 2001 From: Federico Terzi Date: Wed, 24 Jun 2020 20:32:21 +0200 Subject: [PATCH] Include VC redist check in CI pipeline. Fix #336 --- packager.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/packager.py b/packager.py index 358f1f9..1f2c371 100644 --- a/packager.py +++ b/packager.py @@ -82,11 +82,24 @@ def build_windows(package_info): msvc_dirs = glob.glob("C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\*\\VC\\Redist\\MSVC\\*") print("Found Redists: ", msvc_dirs) + print("Determining best redist...") + if len(msvc_dirs) == 0: raise Exception("Cannot find redistributable dlls") - msvc_dir = msvc_dirs[-1] # Take the most recent version of the toolchain - print("Using: ",msvc_dir) + msvc_dir = None + + for curr_dir in msvc_dirs: + dll_files = glob.glob(curr_dir + "\\x64\\*CRT\\*.dll") + print("Found dlls", dll_files, "in", curr_dir) + if any("vcruntime140_1.dll" in x.lower() for x in dll_files): + msvc_dir = curr_dir + break + + if msvc_dir is None: + raise Exception("Cannot find redist with VCRUNTIME140_1.dll") + + print("Using: ", msvc_dir) dll_files = glob.glob(msvc_dir + "\\x64\\*CRT\\*.dll")