git: 15815dbdf84c - main - devel/py-setuptools-dso: New port: Setuptools extension to build non-python shared libraries

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Mon, 15 Jul 2024 07:19:30 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=15815dbdf84c10df5763bc920a0012f4d4fa42d9

commit 15815dbdf84c10df5763bc920a0012f4d4fa42d9
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2024-07-15 04:25:14 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2024-07-15 07:19:23 +0000

    devel/py-setuptools-dso: New port: Setuptools extension to build non-python shared libraries
---
 devel/Makefile                    |  1 +
 devel/py-setuptools-dso/Makefile  | 24 ++++++++++++++++++++++++
 devel/py-setuptools-dso/distinfo  |  3 +++
 devel/py-setuptools-dso/pkg-descr |  6 ++++++
 4 files changed, 34 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index f294e57bfe49..61ddcd70881d 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -5734,6 +5734,7 @@
     SUBDIR += py-setproctitle
     SUBDIR += py-setuptools
     SUBDIR += py-setuptools-declarative-requirements
+    SUBDIR += py-setuptools-dso
     SUBDIR += py-setuptools-gettext
     SUBDIR += py-setuptools-git
     SUBDIR += py-setuptools-git-versioning
diff --git a/devel/py-setuptools-dso/Makefile b/devel/py-setuptools-dso/Makefile
new file mode 100644
index 000000000000..461129cc9da5
--- /dev/null
+++ b/devel/py-setuptools-dso/Makefile
@@ -0,0 +1,24 @@
+PORTNAME=	setuptools-dso
+DISTVERSION=	2.10
+CATEGORIES=	devel python
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+DISTNAME=	${PORTNAME:S/-/_/}-${DISTVERSION}
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Setuptools extension to build non-python shared libraries
+WWW=		https://github.com/mdavidsaver/setuptools_dso
+
+LICENSE=	BSD3CLAUSE
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	${PY_SETUPTOOLS} \
+		${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS=	${PY_SETUPTOOLS}
+
+USES=		python
+USE_PYTHON=	pep517 autoplist pytest # 6 errors in tests, see https://github.com/mdavidsaver/setuptools_dso/issues/32
+
+NO_ARCH=	yes
+
+.include <bsd.port.mk>
diff --git a/devel/py-setuptools-dso/distinfo b/devel/py-setuptools-dso/distinfo
new file mode 100644
index 000000000000..5b11554d703c
--- /dev/null
+++ b/devel/py-setuptools-dso/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1721016870
+SHA256 (setuptools_dso-2.10.tar.gz) = b23019f5e9cec37bc5df3a9735b86ee3948ce7fb2fda42307ca0ba49625d1b44
+SIZE (setuptools_dso-2.10.tar.gz) = 20532
diff --git a/devel/py-setuptools-dso/pkg-descr b/devel/py-setuptools-dso/pkg-descr
new file mode 100644
index 000000000000..dda5160fbb77
--- /dev/null
+++ b/devel/py-setuptools-dso/pkg-descr
@@ -0,0 +1,6 @@
+setuptools extension for building non-Python Dynamic Shared Objects.
+
+This extension is an alternative to bundling externally built libraries
+in Python Wheel packages by providing the means to replace an external
+build system (eg. Makefile) so that non-python libraries to be built
+from source within the python ecosystem.