diff --git a/Misc/NEWS.d/next/Build/2023-02-02-23-43-46.gh-issue-101522.lnUDta.rst b/Misc/NEWS.d/next/Build/2023-02-02-23-43-46.gh-issue-101522.lnUDta.rst
new file mode 100644
index 00000000000..2e7f9029e9e
--- /dev/null
+++ b/Misc/NEWS.d/next/Build/2023-02-02-23-43-46.gh-issue-101522.lnUDta.rst
@@ -0,0 +1,2 @@
+Allow overriding Windows dependencies versions and paths using MSBuild
+properties.
diff --git a/PCbuild/python.props b/PCbuild/python.props
index 971c1490d9f..57360e57bab 100644
--- a/PCbuild/python.props
+++ b/PCbuild/python.props
@@ -56,23 +56,32 @@
..\\..
..\\..\\..
+
-
- $(EXTERNALS_DIR)
+
+
+ $(EXTERNALS_DIR)
$([System.IO.Path]::GetFullPath(`$(PySourcePath)externals`))
$(ExternalsDir)\
- $(ExternalsDir)sqlite-3.39.4.0\
- $(ExternalsDir)bzip2-1.0.8\
- $(ExternalsDir)xz-5.2.5\
- $(ExternalsDir)libffi-3.4.3\
- $(ExternalsDir)libffi-3.4.3\$(ArchName)\
- $(libffiOutDir)include
- $(ExternalsDir)openssl-1.1.1s\
- $(ExternalsDir)openssl-bin-1.1.1s\$(ArchName)\
- $(opensslOutDir)include
- $(ExternalsDir)\nasm-2.11.06\
- $(ExternalsDir)\zlib-1.2.13\
-
+
+
+
+
+
+ $(ExternalsDir)sqlite-3.39.4.0\
+ $(ExternalsDir)bzip2-1.0.8\
+ $(ExternalsDir)xz-5.2.5\
+ $(ExternalsDir)libffi-3.4.3\
+ $(libffiDir)$(ArchName)\
+ $(libffiOutDir)include
+ $(ExternalsDir)openssl-1.1.1s\
+ $(ExternalsDir)openssl-bin-1.1.1s\$(ArchName)\
+ $(opensslOutDir)include
+ $(ExternalsDir)\nasm-2.11.06\
+ $(ExternalsDir)\zlib-1.2.13\
+
+
+
_d
diff --git a/PCbuild/tcltk.props b/PCbuild/tcltk.props
index 7fd43e8279e..cd54b2567b2 100644
--- a/PCbuild/tcltk.props
+++ b/PCbuild/tcltk.props
@@ -2,22 +2,25 @@
- 8
- 6
- 12
- 1
- $(TclMajorVersion)
- $(TclMinorVersion)
- $(TclPatchLevel)
- $(TclRevision)
- 8
- 4
- 3
- 6
- $(ExternalsDir)tcl-core-$(TclMajorVersion).$(TclMinorVersion).$(TclPatchLevel).$(TclRevision)\
- $(ExternalsDir)tk-$(TkMajorVersion).$(TkMinorVersion).$(TkPatchLevel).$(TkRevision)\
- $(ExternalsDir)tix-$(TixMajorVersion).$(TixMinorVersion).$(TixPatchLevel).$(TixRevision)\
- $(ExternalsDir)tcltk-$(TclMajorVersion).$(TclMinorVersion).$(TclPatchLevel).$(TclRevision)\$(ArchName)\
+ 8.6.12.1
+ $(TclVersion)
+ 8.4.3.6
+ $([System.Version]::Parse($(TclVersion)).Major)
+ $([System.Version]::Parse($(TclVersion)).Minor)
+ $([System.Version]::Parse($(TclVersion)).Build)
+ $([System.Version]::Parse($(TclVersion)).Revision)
+ $([System.Version]::Parse($(TkVersion)).Major)
+ $([System.Version]::Parse($(TkVersion)).Minor)
+ $([System.Version]::Parse($(TkVersion)).Build)
+ $([System.Version]::Parse($(TkVersion)).Revision)
+ $([System.Version]::Parse($(TixVersion)).Major)
+ $([System.Version]::Parse($(TixVersion)).Minor)
+ $([System.Version]::Parse($(TixVersion)).Build)
+ $([System.Version]::Parse($(TixVersion)).Revision)
+ $(ExternalsDir)tcl-core-$(TclVersion)\
+ $(ExternalsDir)tk-$(TkVersion)\
+ $(ExternalsDir)tix-$(TixVersion)\
+ $(ExternalsDir)tcltk-$(TclVersion)\$(ArchName)\
$(tcltkDir)\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe
$(tcltkDir)\..\win32\bin\tclsh$(TclMajorVersion)$(TclMinorVersion)t.exe