Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 30 Jun 2026 09:03:44 +0000
From:      Nicola Vitale <nivit@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 3b7f6b8abf96 - main - devel/py-pathtools: Fix build on Python 3.12+
Message-ID:  <6a438670.3961b.170e7965@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by nivit:

URL: https://cgit.FreeBSD.org/ports/commit/?id=3b7f6b8abf96acdc47ef24016766b7fe9544a49b

commit 3b7f6b8abf96acdc47ef24016766b7fe9544a49b
Author:     Nicola Vitale <nivit@FreeBSD.org>
AuthorDate: 2026-06-30 08:50:22 +0000
Commit:     Nicola Vitale <nivit@FreeBSD.org>
CommitDate: 2026-06-30 08:50:22 +0000

    devel/py-pathtools: Fix build on Python 3.12+
    
    - The patch provided [1] comes from
    
    https://github.com/gorakhargosh/pathtools/issues/13
    
    and it is already used by other projects: e.g.
    
    https://salsa.debian.org/python-team/packages/python-pathtools/-/blob/debian/master/debian/patches/python-3.12-support.patch?ref_type=heads
    
    - Convert port to PEP517
    - Pet portclippy
    
    PR:             294676 [1]
---
 devel/py-pathtools/Makefile             | 13 ++++++++-----
 devel/py-pathtools/files/patch-setup.py | 25 +++++++++++++++++++++++++
 2 files changed, 33 insertions(+), 5 deletions(-)

diff --git a/devel/py-pathtools/Makefile b/devel/py-pathtools/Makefile
index 4cd3ef25b399..93367c244817 100644
--- a/devel/py-pathtools/Makefile
+++ b/devel/py-pathtools/Makefile
@@ -11,19 +11,22 @@ WWW=		https://github.com/gorakhargosh/pathtools
 
 LICENSE=	MIT
 
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}setuptools>=63.1:devel/py-setuptools \
+		${PYTHON_PKGNAMEPREFIX}wheel>=0.47:devel/py-wheel
+
 USES=		python
-USE_PYTHON=	distutils autoplist
+USE_PYTHON=	autoplist pep517
+
+DOCSDIR=	${PREFIX}/share/doc/${PKGNAMEPREFIX}${PORTNAME}
 
 NO_ARCH=	yes
 
+PORTDOCS=	*
+
 OPTIONS_DEFINE=	DOCS
 
 DOCS_BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}sphinx>=0,1:textproc/py-sphinx@${PY_FLAVOR}
 
-DOCSDIR=	${PREFIX}/share/doc/${PKGNAMEPREFIX}${PORTNAME}
-
-PORTDOCS=	*
-
 post-build-DOCS-on:
 	@(cd ${WRKSRC}/docs ; ${MAKE} SPHINXBUILD=sphinx-build-${PYTHON_VER} html)
 
diff --git a/devel/py-pathtools/files/patch-setup.py b/devel/py-pathtools/files/patch-setup.py
new file mode 100644
index 000000000000..6b16ec5b441f
--- /dev/null
+++ b/devel/py-pathtools/files/patch-setup.py
@@ -0,0 +1,25 @@
+--- setup.py.orig	2011-08-25 09:25:25 UTC
++++ setup.py
+@@ -22,11 +22,20 @@ import os
+ # THE SOFTWARE.
+ 
+ import os
+-import imp
++import importlib.util
++import importlib.machinery
+ from setuptools import setup
+ 
+ PKG_DIR = 'pathtools'
+-version = imp.load_source('version',
++
++def load_source(modname, filename):
++    loader = importlib.machinery.SourceFileLoader(modname, filename)
++    spec = importlib.util.spec_from_file_location(modname, filename, loader=loader)
++    module = importlib.util.module_from_spec(spec)
++    loader.exec_module(module)
++    return module
++
++version = load_source('version',
+                           os.path.join(PKG_DIR, 'version.py'))
+ 
+ def read_file(filename):


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6a438670.3961b.170e7965>