* [ptxdist] [PATCH] python3-numpy: fix building with setuptools >= 74.0.0
@ 2025-12-16 15:28 Markus Heidelberg via ptxdist
0 siblings, 0 replies; only message in thread
From: Markus Heidelberg via ptxdist @ 2025-12-16 15:28 UTC (permalink / raw)
To: ptxdist; +Cc: Markus Heidelberg
Fixes these errors:
ModuleNotFoundError: No module named 'distutils.msvccompiler'
Signed-off-by: Markus Heidelberg <m.heidelberg@cab.de>
---
Is this an acceptable fix? The example on the NumPy website works.
Later I found this fix:
https://github.com/numpy/numpy/commit/1cc02cc6710384c52e1082a33d1617504eaed296
But there was no fix for the second build error, so I kept my solution.
...istutils.msvccompiler-in-setuptools-.patch | 45 +++++++++++++++++++
patches/numpy-1.26.4/series | 3 +-
2 files changed, 47 insertions(+), 1 deletion(-)
create mode 100644 patches/numpy-1.26.4/0002-handle-missing-distutils.msvccompiler-in-setuptools-.patch
diff --git a/patches/numpy-1.26.4/0002-handle-missing-distutils.msvccompiler-in-setuptools-.patch b/patches/numpy-1.26.4/0002-handle-missing-distutils.msvccompiler-in-setuptools-.patch
new file mode 100644
index 000000000..c24cff9f9
--- /dev/null
+++ b/patches/numpy-1.26.4/0002-handle-missing-distutils.msvccompiler-in-setuptools-.patch
@@ -0,0 +1,45 @@
+From: Markus Heidelberg <m.heidelberg@cab.de>
+Date: Tue, 16 Dec 2025 11:50:00 +0100
+Subject: [PATCH] handle missing distutils.msvccompiler in setuptools >= 74.0.0
+
+distutils._msvccompiler exists, but only provides the MSVCCompiler
+class, not the get_build_version function.
+
+Signed-off-by: Markus Heidelberg <m.heidelberg@cab.de>
+---
+ numpy/distutils/mingw32ccompiler.py | 4 +++-
+ numpy/distutils/msvccompiler.py | 2 +-
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/numpy/distutils/mingw32ccompiler.py b/numpy/distutils/mingw32ccompiler.py
+index 4763f41ad326..f504d8b6223d 100644
+--- a/numpy/distutils/mingw32ccompiler.py
++++ b/numpy/distutils/mingw32ccompiler.py
+@@ -24,13 +24,15 @@
+
+ import distutils.cygwinccompiler
+ from distutils.unixccompiler import UnixCCompiler
+-from distutils.msvccompiler import get_build_version as get_build_msvc_version
+ from distutils.errors import UnknownFileError
+ from numpy.distutils.misc_util import (msvc_runtime_library,
+ msvc_runtime_version,
+ msvc_runtime_major,
+ get_build_architecture)
+
++def get_build_msvc_version():
++ return None
++
+ def get_msvcr_replacement():
+ """Replacement for outdated version of get_msvcr from cygwinccompiler"""
+ msvcr = msvc_runtime_library()
+diff --git a/numpy/distutils/msvccompiler.py b/numpy/distutils/msvccompiler.py
+index 2b93221baac8..5e2a030404da 100644
+--- a/numpy/distutils/msvccompiler.py
++++ b/numpy/distutils/msvccompiler.py
+@@ -1,5 +1,5 @@
+ import os
+-from distutils.msvccompiler import MSVCCompiler as _MSVCCompiler
++from distutils._msvccompiler import MSVCCompiler as _MSVCCompiler
+
+ from .system_info import platform_bits
+
diff --git a/patches/numpy-1.26.4/series b/patches/numpy-1.26.4/series
index a493ac227..57cb0bc5b 100644
--- a/patches/numpy-1.26.4/series
+++ b/patches/numpy-1.26.4/series
@@ -1,4 +1,5 @@
# generated by git-ptx-patches
#tag:base --start-number 1
0001-use-path-from-environment-only-for-library_dirs.patch
-# d9bc0f9a910e0d311ad4c7761b8f6062 - git-ptx-patches magic
+0002-handle-missing-distutils.msvccompiler-in-setuptools-.patch
+# 3e55650c70507297b27d494f0e36c7d4 - git-ptx-patches magic
--
2.43.0
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2025-12-16 15:29 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-12-16 15:28 [ptxdist] [PATCH] python3-numpy: fix building with setuptools >= 74.0.0 Markus Heidelberg via ptxdist
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox