annotate uwsginl-plugin-lang-pypy3/Makefile @ 176:9f86d2b1b802

Prepare for new patch-level pl8, using the GH tag for 2.0.28 from 20241026
author Franz Glasner <fzglas.hg@dom66.de>
date Sun, 09 Mar 2025 00:36:08 +0100
parents f73cf640674a
children ba30d09e5481
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
77
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
1 # Created by: Franz Glasner <freebsd-dev@dom66.de>
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
2
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
3 PORTNAME= ${UWSGI_NAME}-plugin-lang-pypy3
138
0591ef28d649 Update port version to 2.1.pl5 (GH tag 4f7a47b7e058481ff1b327a2767093399a58b364 as of 20220921)
Franz Glasner <fzglas.hg@dom66.de>
parents: 132
diff changeset
4 #DISTVERSION= 2.0.20
176
9f86d2b1b802 Prepare for new patch-level pl8, using the GH tag for 2.0.28 from 20241026
Franz Glasner <fzglas.hg@dom66.de>
parents: 172
diff changeset
5 PORTVERSION= 2.1.pl8.g${MYGH_TAG_DATE}
77
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
6 CATEGORIES= www python
89
40e8d1ee1651 Use current GitHub head of trunk with master ports py3 and pypy3 also.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 88
diff changeset
7 # Use GitHub id for now (before official 2.1); see below
40e8d1ee1651 Use current GitHub head of trunk with master ports py3 and pypy3 also.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 88
diff changeset
8 #MASTER_SITES= https://projects.unbit.it/downloads/
40e8d1ee1651 Use current GitHub head of trunk with master ports py3 and pypy3 also.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 88
diff changeset
9 #DISTNAME= uwsgi-${DISTVERSION}
77
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
10
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
11 MAINTAINER= freebsd-dev@dom66.de
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
12 COMMENT= Language plugin for PyPy 3
143
8bb446cd21c1 Put the WWW information into the Makefiles for plugins also
Franz Glasner <fzglas.hg@dom66.de>
parents: 141
diff changeset
13 WWW= https://projects.unbit.it/uwsgi/
77
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
14
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
15 LICENSE= GPLv2-WITH-LINKING-EXCEPTION
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
16 LICENSE_GROUPS= FSF GPL OSI
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
17 LICENSE_NAME= GPLv2 with linking exception
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
18 LICENSE_FILE= ${WRKSRC}/LICENSE
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
19 LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
20
172
f73cf640674a Build PyPy language plugins for pl7: pypy3, pypy39 and pypy310
Franz Glasner <fzglas.hg@dom66.de>
parents: 163
diff changeset
21 FLAVORS= pypy3 pypy39 pypy310
f73cf640674a Build PyPy language plugins for pl7: pypy3, pypy39 and pypy310
Franz Glasner <fzglas.hg@dom66.de>
parents: 163
diff changeset
22 FLAVOR?= pypy310
158
661720cf51a3 Begin flavorizing of the pypy3 plugin to also handle PyPy3.9.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 143
diff changeset
23
661720cf51a3 Begin flavorizing of the pypy3 plugin to also handle PyPy3.9.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 143
diff changeset
24 PKGNAMEPREFIX= ${FLAVOR}-
661720cf51a3 Begin flavorizing of the pypy3 plugin to also handle PyPy3.9.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 143
diff changeset
25
77
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
26 BUILD_DEPENDS+= ${UWSGI_NAME}==${PORTVERSION}:www/uwsginl
172
f73cf640674a Build PyPy language plugins for pl7: pypy3, pypy39 and pypy310
Franz Glasner <fzglas.hg@dom66.de>
parents: 163
diff changeset
27 BUILD_DEPENDS+= ${PYPY_PACKAGE}>=7:lang/${PYPY_PACKAGE}
77
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
28 RUN_DEPENDS+= ${UWSGI_NAME}==${PORTVERSION}:www/uwsginl
172
f73cf640674a Build PyPy language plugins for pl7: pypy3, pypy39 and pypy310
Franz Glasner <fzglas.hg@dom66.de>
parents: 163
diff changeset
29 RUN_DEPENDS+= ${PYPY_PACKAGE}>=7:lang/${PYPY_PACKAGE}
77
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
30
141
aa65e876b77d Include CPE information into plugin builds also
Franz Glasner <fzglas.hg@dom66.de>
parents: 140
diff changeset
31 USES= cpe gettext-runtime pkgconfig
aa65e876b77d Include CPE information into plugin builds also
Franz Glasner <fzglas.hg@dom66.de>
parents: 140
diff changeset
32 CPE_VENDOR= unbit
77
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
33
89
40e8d1ee1651 Use current GitHub head of trunk with master ports py3 and pypy3 also.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 88
diff changeset
34 .include "${.CURDIR}/../uwsginl/Makefile.gh"
40e8d1ee1651 Use current GitHub head of trunk with master ports py3 and pypy3 also.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 88
diff changeset
35
90
3e92a10a2c96 For the PyPy3-plugin: use the proper shared library name for FreeBSD: libpypy3-co.so.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 89
diff changeset
36 EXTRA_PATCHES= ${.CURDIR}/files/extra
3e92a10a2c96 For the PyPy3-plugin: use the proper shared library name for FreeBSD: libpypy3-co.so.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 89
diff changeset
37
77
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
38 PLIST_FILES= ${PLUGIN_DIR}/${PLUGIN_FILENAME}
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
39
158
661720cf51a3 Begin flavorizing of the pypy3 plugin to also handle PyPy3.9.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 143
diff changeset
40 .if ${FLAVOR} == pypy3
661720cf51a3 Begin flavorizing of the pypy3 plugin to also handle PyPy3.9.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 143
diff changeset
41 PLUGIN_NAME= pypy3
172
f73cf640674a Build PyPy language plugins for pl7: pypy3, pypy39 and pypy310
Franz Glasner <fzglas.hg@dom66.de>
parents: 163
diff changeset
42 PYPY_PACKAGE= pypy310
f73cf640674a Build PyPy language plugins for pl7: pypy3, pypy39 and pypy310
Franz Glasner <fzglas.hg@dom66.de>
parents: 163
diff changeset
43 PYPY_EXECUTABLE= pypy3.10
f73cf640674a Build PyPy language plugins for pl7: pypy3, pypy39 and pypy310
Franz Glasner <fzglas.hg@dom66.de>
parents: 163
diff changeset
44 PYPY_LDLIBRARY= libpypy3.10-c.so
f73cf640674a Build PyPy language plugins for pl7: pypy3, pypy39 and pypy310
Franz Glasner <fzglas.hg@dom66.de>
parents: 163
diff changeset
45 PYPY_LIBDIR= lib/pypy3.10
158
661720cf51a3 Begin flavorizing of the pypy3 plugin to also handle PyPy3.9.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 143
diff changeset
46 .elif ${FLAVOR} == pypy39
661720cf51a3 Begin flavorizing of the pypy3 plugin to also handle PyPy3.9.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 143
diff changeset
47 PLUGIN_NAME= pypy39
172
f73cf640674a Build PyPy language plugins for pl7: pypy3, pypy39 and pypy310
Franz Glasner <fzglas.hg@dom66.de>
parents: 163
diff changeset
48 PYPY_PACKAGE= pypy39
f73cf640674a Build PyPy language plugins for pl7: pypy3, pypy39 and pypy310
Franz Glasner <fzglas.hg@dom66.de>
parents: 163
diff changeset
49 PYPY_EXECUTABLE= pypy3.9
158
661720cf51a3 Begin flavorizing of the pypy3 plugin to also handle PyPy3.9.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 143
diff changeset
50 PYPY_LDLIBRARY= libpypy3.9-c.so
661720cf51a3 Begin flavorizing of the pypy3 plugin to also handle PyPy3.9.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 143
diff changeset
51 PYPY_LIBDIR= lib/pypy3.9
172
f73cf640674a Build PyPy language plugins for pl7: pypy3, pypy39 and pypy310
Franz Glasner <fzglas.hg@dom66.de>
parents: 163
diff changeset
52 .elif ${FLAVOR} == pypy310
f73cf640674a Build PyPy language plugins for pl7: pypy3, pypy39 and pypy310
Franz Glasner <fzglas.hg@dom66.de>
parents: 163
diff changeset
53 PLUGIN_NAME= pypy310
f73cf640674a Build PyPy language plugins for pl7: pypy3, pypy39 and pypy310
Franz Glasner <fzglas.hg@dom66.de>
parents: 163
diff changeset
54 PYPY_PACKAGE= pypy310
f73cf640674a Build PyPy language plugins for pl7: pypy3, pypy39 and pypy310
Franz Glasner <fzglas.hg@dom66.de>
parents: 163
diff changeset
55 PYPY_EXECUTABLE= pypy3.10
f73cf640674a Build PyPy language plugins for pl7: pypy3, pypy39 and pypy310
Franz Glasner <fzglas.hg@dom66.de>
parents: 163
diff changeset
56 PYPY_LDLIBRARY= libpypy3.10-c.so
f73cf640674a Build PyPy language plugins for pl7: pypy3, pypy39 and pypy310
Franz Glasner <fzglas.hg@dom66.de>
parents: 163
diff changeset
57 PYPY_LIBDIR= lib/pypy3.10
158
661720cf51a3 Begin flavorizing of the pypy3 plugin to also handle PyPy3.9.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 143
diff changeset
58 .endif
661720cf51a3 Begin flavorizing of the pypy3 plugin to also handle PyPy3.9.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 143
diff changeset
59
661720cf51a3 Begin flavorizing of the pypy3 plugin to also handle PyPy3.9.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 143
diff changeset
60 CFLAGS+= -DPYPY_LDLIBRARY="${PYPY_LDLIBRARY}" -DPYPY_LIBDIR="${PYPY_LIBDIR}" -DPYPY_PLUGIN_NAME="${PLUGIN_NAME}"
661720cf51a3 Begin flavorizing of the pypy3 plugin to also handle PyPy3.9.
Franz Glasner <f.glasner@feldmann-mg.com>
parents: 143
diff changeset
61
140
bbc009daf3c0 Remove direct use of "/usr/local" and replace by "${LOCALBASE}"
Franz Glasner <fzglas.hg@dom66.de>
parents: 138
diff changeset
62 MAKE_ENV+= UWSGI_PROFILE_OVERRIDE="plugin_build_dir=${STAGEDIR}${PREFIX}/${PLUGIN_DIR};plugin_dir=${PREFIX}/${PLUGIN_DIR}" PYTHON=${LOCALBASE}/bin/pypy3
77
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
63
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
64 DESCR= pkg-descr
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
65
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
66 UWSGI_NAME= uwsginl
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
67 UWSGI_PATH= ${LOCALBASE}/bin/${UWSGI_NAME}
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
68 PLUGIN_DIR= lib/${UWSGI_NAME}/plugins
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
69
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
70 # Where to find the sources for the plugin (defaults to plugins/${PLUGIN_NAME})
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
71 PLUGIN_SOURCE= plugins/pypy
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
72 # The complete basename of the plugin
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
73 PLUGIN_FILENAME= ${PLUGIN_NAME}_plugin.so
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
74
88
098130d0f0f0 All plugins by default use the PATCHDIR of the uwsginl binary.
Franz Glasner <fzglas.hg@dom66.de>
parents: 77
diff changeset
75 # Use the PATCHDIR of the binary executable by default
098130d0f0f0 All plugins by default use the PATCHDIR of the uwsginl binary.
Franz Glasner <fzglas.hg@dom66.de>
parents: 77
diff changeset
76 PATCHDIR?= ${.CURDIR}/../uwsginl/files
098130d0f0f0 All plugins by default use the PATCHDIR of the uwsginl binary.
Franz Glasner <fzglas.hg@dom66.de>
parents: 77
diff changeset
77
162
620a0992bf93 FIX: The exported symbol from a plugin really needs to match the name of the plugin
Franz Glasner <fzglas.hg@dom66.de>
parents: 160
diff changeset
78 .if ${PLUGIN_NAME} != pypy3 && ${PLUGIN_NAME} != pypy38
620a0992bf93 FIX: The exported symbol from a plugin really needs to match the name of the plugin
Franz Glasner <fzglas.hg@dom66.de>
parents: 160
diff changeset
79 post-patch:
620a0992bf93 FIX: The exported symbol from a plugin really needs to match the name of the plugin
Franz Glasner <fzglas.hg@dom66.de>
parents: 160
diff changeset
80 ${REINPLACE_CMD} -i '' -e 's/pypy3_plugin/${PLUGIN_NAME}_plugin/g' ${WRKSRC}/${PLUGIN_SOURCE}/pypy_setup.py
620a0992bf93 FIX: The exported symbol from a plugin really needs to match the name of the plugin
Franz Glasner <fzglas.hg@dom66.de>
parents: 160
diff changeset
81 .endif
620a0992bf93 FIX: The exported symbol from a plugin really needs to match the name of the plugin
Franz Glasner <fzglas.hg@dom66.de>
parents: 160
diff changeset
82
77
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
83 do-configure:
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
84 @${DO_NADA}
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
85
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
86 do-build:
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
87 @${MKDIR} ${STAGEDIR}${PREFIX}/${PLUGIN_DIR}
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
88 @(cd ${BUILD_WRKSRC}; ${SETENV} ${MAKE_ENV} ${UWSGI_PATH} --build-plugin "${PLUGIN_SOURCE} ${PLUGIN_NAME}")
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
89
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
90 do-install:
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
91 ${INSTALL_LIB} ${BUILD_WRKSRC}/${PLUGIN_FILENAME} ${STAGEDIR}${PREFIX}/${PLUGIN_DIR}
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
92
278470dc420d Provide a "pypy3"-plugin project and make the PyPy-plugin compile properly on FreeBSD.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
93 .include <bsd.port.mk>