Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F168265304
D58848.id184077.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
3 KB
Referenced Files
None
Subscribers
None
D58848.id184077.diff
View Options
diff --git a/devel/py-pyyaml/Makefile b/devel/py-pyyaml/Makefile
--- a/devel/py-pyyaml/Makefile
+++ b/devel/py-pyyaml/Makefile
@@ -1,5 +1,6 @@
PORTNAME= pyyaml
DISTVERSION= 6.0.3
+PORTREVISION= 1
CATEGORIES= devel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +13,7 @@
LICENSE_FILE= ${WRKSRC}/LICENSE
USES= cpe localbase python
-USE_PYTHON= autoplist concurrent cython distutils
+USE_PYTHON= autoplist concurrent cython pep517 pytest
OPTIONS_DEFINE= LIBYAML EXAMPLES
OPTIONS_DEFAULT=LIBYAML
@@ -22,23 +23,53 @@
.include <bsd.port.pre.mk>
+BUILD_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
+
.if ${PORT_OPTIONS:MLIBYAML}
-PYDISTUTILS_SETUP+= --with-libyaml
-PYDISTUTILS_BUILD_TARGET= build_ext
-PYDISTUTILS_BUILDARGS+= --include-dirs=${LOCALBASE}/include \
- --library-dirs=${LOCALBASE}/lib
+PEP517_BUILD_CONFIG_SETTING= --config-json '{"pyyaml_build_config": "{\"include_dirs\": [\"${LOCALBASE}/include\"], \"library_dirs\": [\"${LOCALBASE}/lib\"]}"}'
+MAKE_ENV+= PYYAML_FORCE_LIBYAML=1
.else
-PYDISTUTILS_SETUP+= --without-libyaml
+MAKE_ENV+= PYYAML_FORCE_LIBYAML=0
NO_ARCH= yes
.endif
+# setup.py's NAME is "PyYAML" (mixed-case), unlike PORTNAME; :tl on PORTNAME
+# would not reconstruct it, so it must be spelled out literally
+# incorporating the mixed-case portion of name normalisation
+# https://packaging.python.org/en/latest/specifications/name-normalization/
+# https://packaging.python.org/en/latest/specifications/binary-distribution-format/#escaping-and-unicode
+PYWHEEL_NAME= PyYAML
+
+PEP517_INSTALL_CMD= ${PYTHON_CMD} -m installer --destdir ${STAGEDIR} \
+ --prefix ${PREFIX} \
+ ${BUILD_WRKSRC}/dist/${PYWHEEL_NAME}-${DISTVERSION}*.whl
+
+do-install:
+ @${MKDIR} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
+ @cd ${INSTALL_WRKSRC} && ${SETENVI} ${WRK_ENV} ${MAKE_ENV} ${PEP517_INSTALL_CMD}
+ @${PYTHON_CMD} -B ${PORTSDIR}/Mk/Scripts/strip_RECORD.py \
+ ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/${PYWHEEL_NAME}-${DISTVERSION}*.dist-info/RECORD >> ${_PYTHONPKGLIST}
+ @${REINPLACE_CMD} \
+ -e '/\.pyc$$/d' \
+ -e 's|^|${PYTHONPREFIX_SITELIBDIR}/|' \
+ -e 's|^${PYTHONPREFIX_SITELIBDIR}/../../../etc/|etc/|' \
+ -e 's|^${PYTHONPREFIX_SITELIBDIR}/../../../bin/|bin/|' \
+ -e 's|^${PYTHONPREFIX_SITELIBDIR}/../../../include/|include/|' \
+ -e 's|^${PYTHONPREFIX_SITELIBDIR}/../../../lib/|lib/|' \
+ -e 's|^${PYTHONPREFIX_SITELIBDIR}/../../../libdata/|libdata/|' \
+ -e 's|^${PYTHONPREFIX_SITELIBDIR}/../../../libexec/|libexec/|' \
+ -e 's|^${PYTHONPREFIX_SITELIBDIR}/../../../man/|man/|' \
+ -e 's|^${PYTHONPREFIX_SITELIBDIR}/../../../sbin/|sbin/|' \
+ -e 's|^${PYTHONPREFIX_SITELIBDIR}/../../../share/|share/|' \
+ ${_PYTHONPKGLIST}
+ @cd ${STAGEDIR}${PREFIX} && ${FIND} lib -name '*.pyc' >> ${_PYTHONPKGLIST}
+
post-install-EXAMPLES-on:
@(cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}/)
post-install-LIBYAML-on:
@${STRIP_CMD} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/yaml/_yaml*.so
-do-test:
- @cd ${WRKSRC} && ${PYTHON_CMD} ${PYDISTUTILS_SETUP} test
-
.include <bsd.port.post.mk>
+
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Fri, Aug 28, 6:47 AM (43 m, 13 s)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
36805020
Default Alt Text
D58848.id184077.diff (3 KB)
Attached To
Mode
D58848: devel/py-pyyaml: Convert build to use PEP 517
Attached
Detach File
Event Timeline
Log In to Comment