|
@@ -0,0 +1,47 @@
|
|
|
+# HG changeset patch
|
|
|
+# User Bill Gianopoulos <wgianopoulos@gmail.com>
|
|
|
+# Date 1672420338 0
|
|
|
+# Fri Dec 30 12:12:18 2022 -0500
|
|
|
+Bug 9999999 - permit specifying 2019 and 2022 for --with-visual-studio-version.
|
|
|
+
|
|
|
+diff --git a/build/moz.configure/toolchain.configure b/build/moz.configure/toolchain.configure
|
|
|
+--- a/build/moz.configure/toolchain.configure
|
|
|
++++ b/build/moz.configure/toolchain.configure
|
|
|
+@@ -527,17 +527,17 @@ def get_vc_paths(topsrcdir):
|
|
|
+ )
|
|
|
+ tools_path = os.path.join(path, r"VC\Tools\MSVC", tools_version)
|
|
|
+ yield (Version(install["installationVersion"]), tools_path)
|
|
|
+
|
|
|
+
|
|
|
+ option(
|
|
|
+ "--with-visual-studio-version",
|
|
|
+ nargs=1,
|
|
|
+- choices=("2017",),
|
|
|
++ choices=("2017", "2019", "2022",),
|
|
|
+ when=host_is_windows,
|
|
|
+ help="Select a specific Visual Studio version to use",
|
|
|
+ )
|
|
|
+
|
|
|
+
|
|
|
+ @depends_if("--with-visual-studio-version", when=host_is_windows)
|
|
|
+ def vs_version(value):
|
|
|
+ return value[0]
|
|
|
+@@ -597,17 +597,17 @@ def vc_compiler_paths_for_version(host,
|
|
|
+ elif host.kernel != "WINNT":
|
|
|
+ # Don't try to do anything when VC_PATH is not set on cross-compiles.
|
|
|
+ return
|
|
|
+ else:
|
|
|
+ all_versions = sorted(get_vc_paths(env.topsrcdir), key=itemgetter(0))
|
|
|
+ if not all_versions:
|
|
|
+ return
|
|
|
+ if vs_version:
|
|
|
+- vs_major_version = {"2017": 15}[vs_version]
|
|
|
++ vs_major_version = {"2017": 15, "2019": 16, "2022": 17}[vs_version]
|
|
|
+ versions = [d for (v, d) in all_versions if v.major == vs_major_version]
|
|
|
+ if not versions:
|
|
|
+ die("Visual Studio %s could not be found!" % vs_version)
|
|
|
+ path = versions[0]
|
|
|
+ else:
|
|
|
+ # Choose the newest version.
|
|
|
+ path = all_versions[-1][1]
|
|
|
+ host_dir = {
|