Mercurial > hgrepos > FreeBSD > ports > PyPy
view bsd.pypy.cffi.mk @ 25:ee6885d5bdcb
Allow to build CFFI extensions for PyPy3.7 also.
PyPy3.7 has the same directory layout as PyPy2.7.
PyPy3.8 has a new layout which is more similar to CPython.
NOTE: PyPy3.9 will also name its shared library implementation with a version information
in it. This will allow side-by-side installations.
| author | Franz Glasner <f.glasner@feldmann-mg.com> |
|---|---|
| date | Wed, 05 Oct 2022 17:22:18 +0200 |
| parents | 246c2f328231 |
| children | 6cddc8f64f05 |
line wrap: on
line source
# NOTE: Also includes bsd.pypy.mk and (indirectly) bsd.port.pre.mk PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} DISTFILES= BUILD_DEPENDS+= ${PYTHON_IMPL}:lang/${PYTHON_IMPL} RUN_DEPENDS+= ${PYTHON_IMPL}:lang/${PYTHON_IMPL} CFFI_MODULE?= _${PORTNAME} FLAVORS= pypy pypy3 FLAVOR?= ${FLAVORS:[1]} PYTHON_IMPL= ${FLAVOR} PYTHON_PORTVERSION= ${DISTVERSION} PYTHON_PKGNAMEPREFIX= ${PYTHON_IMPL}- PYTHON_CMD= ${LOCALBASE}/bin/${PYTHON_IMPL} .include "${.CURDIR}/../../lang/pypy/bsd.pypy.mk" .if ${FLAVOR} == pypy || ${PORT_OPTIONS:MFORPYIMPL37} PLIST_FILES= ${PYPY_DIR}/lib_pypy/${CFFI_MODULE}_cffi.${PYPY_CFFI_VER}.so .else # pypy3 PLIST_FILES= ${PYPY_DIR}/lib/${PYTHON_IMPL_MINOR}/${CFFI_MODULE}_cffi.${PYPY_CFFI_VER}.so .endif do-build: .if ${FLAVOR} == pypy || ${PORT_OPTIONS:MFORPYIMPL37} ${CP} ${LOCALBASE}/${PYPY_DIR}/lib_pypy/${CFFI_MODULE}_build.py ${WRKDIR}/${PORTNAME}.py .else # newer pypy3 ${CP} ${LOCALBASE}/${PYPY_DIR}/lib/${PYTHON_IMPL_MINOR}/${CFFI_MODULE}_build.py ${WRKDIR}/${PORTNAME}.py .endif (cd ${WRKDIR}; \ ${PYTHON_CMD} -c "from ${PORTNAME} import ${CFFI_NAME} as ffi; ffi.compile('${WRKDIR}');") do-install: .if ${FLAVOR} == pypy || ${PORT_OPTIONS:MFORPYIMPL37} ${MKDIR} ${STAGEDIR}${PREFIX}/${PYPY_DIR}/lib_pypy/`dirname ${CFFI_MODULE}`/ ${INSTALL_LIB} ${WRKDIR}/${CFFI_MODULE}_cffi.${PYPY_CFFI_VER}.so ${STAGEDIR}${PREFIX}/${PYPY_DIR}/lib_pypy/`dirname ${CFFI_MODULE}`/ .else # newer pypy3 ${MKDIR} ${STAGEDIR}${PREFIX}/${PYPY_DIR}/lib/${PYTHON_IMPL_MINOR}/`dirname ${CFFI_MODULE}`/ ${INSTALL_LIB} ${WRKDIR}/${CFFI_MODULE}_cffi.${PYPY_CFFI_VER}.so ${STAGEDIR}${PREFIX}/${PYPY_DIR}/lib/${PYTHON_IMPL_MINOR}/`dirname ${CFFI_MODULE}`/ .endif
