aboutsummaryrefslogtreecommitdiff
path: root/Mk
diff options
context:
space:
mode:
authorPo-Chuan Hsieh <sunpoet@FreeBSD.org>2023-02-05 18:16:47 +0000
committerPo-Chuan Hsieh <sunpoet@FreeBSD.org>2023-02-05 18:16:47 +0000
commitde6965254c3a007efcf697c3d455b54d2aeb2383 (patch)
treea11140f37e080730e179fc2414c9ed5b4d65316c /Mk
parent973f951b648a14fa1e415a0be0b151ccdd11d6f5 (diff)
downloadports-de6965254c3a007efcf697c3d455b54d2aeb2383.tar.gz
ports-de6965254c3a007efcf697c3d455b54d2aeb2383.zip
Mk/Uses/python.mk: Fix USE_PYTHON=pep517: always compile and install bytecode
- While I'm here, use long options for easier reading [1][2] - Bump PORTREVISION of dependent ports (USE_PYTHON=pep517) for package change It fixes build_fs_violation of dependent ports in poudriere (with -t flag). It is also the default behavior of installer [2]. from py-sphinx log: =>> Checking for staging violations... done =>> Error: Filesystem touched during stage (files must install to ${STAGEDIR}): extra: usr/local/lib/python3.9/site-packages/importlib_metadata/__pycache__ =>> Cleaning up wrkdir from installer documentation: --compile-bytecode Possible choices: 0, 1, 2 generate bytecode for the specified optimization level(s) (default=0, 1) --no-compile-bytecode don’t generate bytecode for installed modules Default: False With hat: python Reference: https://pypa-build.readthedocs.io/en/stable/ [1] https://installer.pypa.io/en/stable/cli/installer/ [2]
Diffstat (limited to 'Mk')
-rw-r--r--Mk/Uses/python.mk15
1 files changed, 8 insertions, 7 deletions
diff --git a/Mk/Uses/python.mk b/Mk/Uses/python.mk
index 8ac80fcacd76..6c6c5415c9cc 100644
--- a/Mk/Uses/python.mk
+++ b/Mk/Uses/python.mk
@@ -179,13 +179,13 @@
# default: ${PYDISTUTILS_PKGNAME:C/[^A-Za-z0-9.]+/_/g}-${PYDISTUTILS_PKGVERSION:C/[^A-Za-z0-9.]+/_/g}-py${PYTHON_VER}.egg-info
#
# PEP517_BUILD_CMD - Command sequence for a PEP-517 build frontend that builds a wheel.
-# default: ${PYTHON_CMD} -m build -n -w
+# default: ${PYTHON_CMD} -m build --no-isolation --wheel
#
# PEP517_BUILD_DEPEND - Port needed to execute ${PEP517_BUILD_CMD}.
# default: ${PYTHON_PKGNAMEPREFIX}build>0:devel/py-build@${PY_FLAVOR}
#
# PEP517_INSTALL_CMD - Command sequence for a PEP-517 install frontend that installs a wheel.
-# default: ${PYTHON_CMD} -m installer -d ${STAGEDIR} --no-compile-bytecode ${BUILD_WRKSRC}/dist/${PORTNAME:C/[-_]+/_/g}-${PORTVERSION}-*.whl
+# default: ${PYTHON_CMD} -m installer --destdir ${STAGEDIR} ${BUILD_WRKSRC}/dist/${PORTNAME:C|[-_]+|_|g}-${PORTVERSION}-*.whl
#
# PEP517_INSTALL_DEPEND - Port needed to execute ${PEP517_INSTALL_CMD}.
# default: ${PYTHON_PKGNAMEPREFIX}installer>0:devel/py-installer@${PY_FLAVOR}
@@ -656,10 +656,10 @@ PYDISTUTILS_EGGINFO?= ${PYDISTUTILS_PKGNAME:C/[^A-Za-z0-9.]+/_/g}-${PYDISTUTILS_
PYDISTUTILS_EGGINFODIR?=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
# PEP-517 support
-PEP517_BUILD_CMD?= ${PYTHON_CMD} -m build -n -w
-PEP517_BUILD_DEPEND?= ${PYTHON_PKGNAMEPREFIX}build>0:devel/py-build@${PY_FLAVOR}
-PEP517_INSTALL_CMD?= ${PYTHON_CMD} -m installer -d ${STAGEDIR} --no-compile-bytecode ${BUILD_WRKSRC}/dist/${PORTNAME:C/[-_]+/_/g}-${PORTVERSION}-*.whl
-PEP517_INSTALL_DEPEND?= ${PYTHON_PKGNAMEPREFIX}installer>0:devel/py-installer@${PY_FLAVOR}
+PEP517_BUILD_CMD?= ${PYTHON_CMD} -m build --no-isolation --wheel
+PEP517_BUILD_DEPEND?= ${PYTHON_PKGNAMEPREFIX}build>=0:devel/py-build@${PY_FLAVOR}
+PEP517_INSTALL_CMD?= ${PYTHON_CMD} -m installer --destdir ${STAGEDIR} ${BUILD_WRKSRC}/dist/${PORTNAME:C/[-_]+/_/g}-${PORTVERSION}-*.whl
+PEP517_INSTALL_DEPEND?= ${PYTHON_PKGNAMEPREFIX}installer>=0:devel/py-installer@${PY_FLAVOR}
# nose support
. if defined(_PYTHON_FEATURE_NOSE)
@@ -858,7 +858,8 @@ do-install:
@${SED} -e 's|^|${PYTHONPREFIX_SITELIBDIR}/|' \
-e 's|^${PYTHONPREFIX_SITELIBDIR}/../../../bin/|bin/|' \
-e 's|\,.*$$||' \
- ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/${PORTNAME:C/[-_]+/_/g}-${PORTVERSION}.dist-info/RECORD >> ${_PYTHONPKGLIST}
+ ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/${PORTNAME:C|[-_]+|_|g}-${PORTVERSION}.dist-info/RECORD >> ${_PYTHONPKGLIST}
+ @cd ${STAGEDIR}${PREFIX} && ${FIND} lib -name '*.pyc' >> ${_PYTHONPKGLIST}
. endif
. endif # defined(_PYTHON_FEATURE_PEP517)