comparison lang/pypy2/Makefile.cffi.inc @ 155:26ce40621295

Build of pypy2/sqlite3 done
author Franz Glasner <fzglas.hg@dom66.de>
date Mon, 15 Jan 2024 09:12:00 +0100
parents 5e06b49e4471
children 1032e6ad3106
comparison
equal deleted inserted replaced
154:5e06b49e4471 155:26ce40621295
1 # NOTE: Also includes bsd.pypy.mk and (indirectly) bsd.port.pre.mk 1 # -*- mode: makefile -*-
2 # NOTE: Also includes bsd.port.pre.mk
2 3
3 PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} 4 PKGNAMEPREFIX= ${FLAVOR}-
4 DISTFILES= 5 DISTFILES=
5 6
6 BUILD_DEPENDS+= ${PYTHON_IMPL}:lang/${PYTHON_IMPL} 7 .if !defined(LICENSE)
7 RUN_DEPENDS+= ${PYTHON_IMPL}:lang/${PYTHON_IMPL} 8 LICENSE= MIT PSFL
9 LICENSE_COMB= multi
10 .endif
11
12 PYPY_DEFAULT_DISTVERSION?= 7.3.14
13
14 BUILD_DEPENDS+= ${PYPY_PYTHON_IMPL}:lang/${FLAVOR}
15 RUN_DEPENDS+= ${PYPY_PYTHON_IMPL}:lang/${FLAVOR}
8 16
9 CFFI_MODULE?= _${PORTNAME} 17 CFFI_MODULE?= _${PORTNAME}
10 18
11 FLAVORS= pypy pypy3 19 FLAVORS= pypy2
12 FLAVOR?= ${FLAVORS:[1]} 20 FLAVOR= ${FLAVORS:[1]}
13 21
14 PYTHON_IMPL= ${FLAVOR} 22 PYPY_PYTHON_IMPL= pypy2.7
15 PYTHON_PORTVERSION= ${DISTVERSION} 23 PYPY_PORTVERSION= ${DISTVERSION}
16 PYTHON_PKGNAMEPREFIX= ${PYTHON_IMPL}- 24 PYPY_CMD= ${LOCALBASE}/bin/${PYPY_PYTHON_IMPL}
17 PYTHON_CMD= ${LOCALBASE}/bin/${PYTHON_IMPL}
18 25
19 .include "${.CURDIR}/../../lang/pypy/bsd.pypy.mk" 26 PYPY_DIR= pypy-${DISTVERSION:C|([0-9]+)\.([0-9]+).*|\1.\2|}
27 PYPY_CFFI_VER= pypy-73
20 28
21 # 29 PLIST_FILES+= ${PYPY_DIR}/lib_pypy/${CFFI_MODULE}_cffi.${PYPY_CFFI_VER}.so
22 # Check that this port's build selected option FORPYIMPL39 or FORPYIMPL310
23 # is compatible to the corresponding build option of the installed pypy3.
24 #
25 .if ${FLAVOR} == pypy3 && exists(${LOCALBASE}/bin/pypy3)
26 _PYPY_SC_PLATSTDLIB= ${:!${LOCALBASE}/bin/pypy3 -c 'import sysconfig; print(sysconfig.get_path("platstdlib"))'!}
27 . if ${_PYPY_SC_PLATSTDLIB:T} != ${PYTHON_IMPL_MINOR}
28 IGNORE= Port option mismatch: must match FORPYIMPLxx of the installed lang/pypy3
29 . endif
30 .endif
31 30
32 .if ${FLAVOR} == pypy 31 .include <bsd.port.pre.mk>
33 PLIST_FILES= ${PYPY_DIR}/lib_pypy/${CFFI_MODULE}_cffi.${PYPY_CFFI_VER}.so
34 .else # pypy3
35 PLIST_FILES= ${PYPY_DIR}/lib/${PYTHON_IMPL_MINOR}/${CFFI_MODULE}_cffi.${PYPY_CFFI_VER}.so
36 .endif
37 32
38 do-build: 33 do-build:
39 .if ${FLAVOR} == pypy
40 ${CP} ${LOCALBASE}/${PYPY_DIR}/lib_pypy/${CFFI_MODULE}_build.py ${WRKDIR}/${PORTNAME}.py 34 ${CP} ${LOCALBASE}/${PYPY_DIR}/lib_pypy/${CFFI_MODULE}_build.py ${WRKDIR}/${PORTNAME}.py
41 .else # newer pypy3
42 ${CP} ${LOCALBASE}/${PYPY_DIR}/lib/${PYTHON_IMPL_MINOR}/${CFFI_MODULE}_build.py ${WRKDIR}/${PORTNAME}.py
43 .endif
44 (cd ${WRKDIR}; \ 35 (cd ${WRKDIR}; \
45 ${PYTHON_CMD} -c "from ${PORTNAME} import ${CFFI_NAME} as ffi; ffi.compile('${WRKDIR}');") 36 ${PYPY_CMD} -c "from ${PORTNAME} import ${FFI_MODULE_NAME} as ffi; ffi.compile('${WRKDIR}');")
46 37
47 do-install: 38 do-install:
48 .if ${FLAVOR} == pypy
49 ${MKDIR} ${STAGEDIR}${PREFIX}/${PYPY_DIR}/lib_pypy/`dirname ${CFFI_MODULE}`/ 39 ${MKDIR} ${STAGEDIR}${PREFIX}/${PYPY_DIR}/lib_pypy/`dirname ${CFFI_MODULE}`/
50 ${INSTALL_LIB} ${WRKDIR}/${CFFI_MODULE}_cffi.${PYPY_CFFI_VER}.so ${STAGEDIR}${PREFIX}/${PYPY_DIR}/lib_pypy/`dirname ${CFFI_MODULE}`/ 40 ${INSTALL_LIB} ${WRKDIR}/${CFFI_MODULE}_cffi.${PYPY_CFFI_VER}.so ${STAGEDIR}${PREFIX}/${PYPY_DIR}/lib_pypy/`dirname ${CFFI_MODULE}`/
51 .else # newer pypy3
52 ${MKDIR} ${STAGEDIR}${PREFIX}/${PYPY_DIR}/lib/${PYTHON_IMPL_MINOR}/`dirname ${CFFI_MODULE}`/
53 ${INSTALL_LIB} ${WRKDIR}/${CFFI_MODULE}_cffi.${PYPY_CFFI_VER}.so ${STAGEDIR}${PREFIX}/${PYPY_DIR}/lib/${PYTHON_IMPL_MINOR}/`dirname ${CFFI_MODULE}`/
54 .endif