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 f9dd872a93a..1f9b0e77363 100644
--- a/PCbuild/python.props
+++ b/PCbuild/python.props
@@ -52,23 +52,32 @@
$(PySourcePath)PCbuild\$(ArchName)\
$(BuildPath)\
$(BuildPath)instrumented\
-
-
- $(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.3.0\
- $(ExternalsDir)libffi-3.3.0\$(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.3.0\
+ $(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 16dc35d45eb..6ff152970c7 100644
--- a/PCbuild/tcltk.props
+++ b/PCbuild/tcltk.props
@@ -2,22 +2,26 @@
- 8
- 6
- 12
- 0
- $(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.0
+ $(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)\
+
tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).dll
tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).lib