changeset 23:d16a4f379bbc

Employ makefile options to determine the Python version to build for (3.7, 3.8, 3.9) on PyPy3
author Franz Glasner <fzglas.hg@dom66.de>
date Wed, 05 Oct 2022 09:39:24 +0200
parents 53cc14af362c
children d2d396c79e9f
files bsd.pypy.mk
diffstat 1 files changed, 27 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/bsd.pypy.mk	Tue Oct 04 18:31:44 2022 +0200
+++ b/bsd.pypy.mk	Wed Oct 05 09:39:24 2022 +0200
@@ -13,14 +13,29 @@
 PLIST_SUB+=	PYPY_DIR=${PYPY_DIR} PYPY_CFFI_VER=${PYPY_CFFI_VER}
 
 .if ${PYTHON_IMPL} == pypy
+
 DISTVERSION=	7.3.9
 PY_VERSION_SHORT=	2.7
 PYPY_CFFI_VER=	${PYTHON_IMPL}-73
+
 .else # ${PYTHON_IMPL} == pypy3
+
 DISTVERSION=	7.3.9
-PY_VERSION_SHORT=	3.8
 PYPY_CFFI_VER=	${PYTHON_IMPL_NODOT}-pp${DISTVERSION:S|.||:C|\..*||}-${OPSYS:tl}${OSREL:C|\..*||}
-PLIST_SUB+=	PYTHON_IMPL_MINOR=${PYTHON_IMPL_MINOR}
+PLIST_SUB+=	PYTHON_IMPL_MINOR=${PYTHON_IMPL_MINOR} PY_VERSION_SHORT=${PY_VERSION_SHORT}
+
+OPTIONS_SINGLE+=	FORPYIMPL
+
+OPTIONS_SINGLE_FORPYIMPL	=	FORPYIMPL37 FORPYIMPL38 FORPYIMPL39
+
+FORPYIMPL_DESC=		Required Python compatibility
+FORPYIMPL37_DESC=	Build for compat to Python 3.7
+FORPYIMPL38_DESC=	Build for compat to Python 3.8
+FORPYIMPL39_DESC=	Build for compat to Python 3.9
+
+OPTIONS_SUB=		yes
+OPTIONS_DEFAULT+=	FORPYIMPL38
+
 .endif
 
 PY_VERSION_NODOT=       ${PY_VERSION_SHORT:S/.//}
@@ -28,3 +43,13 @@
 PYTHON_IMPL_NODOT=	pypy${PY_VERSION_NODOT}
 
 .include <bsd.port.pre.mk>
+
+.if ${PORT_OPTIONS:MFORPYIMPL37}
+PY_VERSION_SHORT=	3.7
+.endif
+.if ${PORT_OPTIONS:MFORPYIMPL38}#
+PY_VERSION_SHORT=	3.8
+.endif
+.if ${PORT_OPTIONS:MFORPYIMPL39}
+PY_VERSION_SHORT=	3.9
+.endif