Since r558913 Python 3.8 incorporates BPO-42604 [1] which changed the
shared libs naming scheme. This means "EXT_SUFFIX" is now derived from
SOABI and yields with Python 3.8 to ".cpython-38.so" instead of ".so".
The affected ports strip the libaries in the "post-install" target via
hardcoded path(s) and the build fails at the end because the new extension
is not expected at this place.
Remedy the issue by adding wildcards to these paths. This should also
prepare the ports for future Python releases, which will use the new shared
libs naming scheme.
[1] https://bugs.python.org/issue42604
PR: 252057
Reported by: John Kennedy
Reviewed by: fluffy, koobs
Approved by: koobs (python)
Ports using USE_PYTHON=distutils are now flavored. They will
automatically get flavors (py27, py34, py35, py36) depending on what
versions they support.
There is also a USE_PYTHON=flavors for ports that do not use distutils
but need FLAVORS to be set. A USE_PYTHON=noflavors can be set if
using distutils but flavors are not wanted.
A new USE_PYTHON=optsuffix that will add PYTHON_PKGNAMESUFFIX has been
added to cope with Python ports that did not have the Python
PKGNAMEPREFIX but are flavored.
USES=python now also exports a PY_FLAVOR variable that contains the
current python flavor. It can be used in dependency lines when the
port itself is not python flavored. For example, deskutils/calibre.
By default, all the flavors are generated. To only generate flavors
for the versions in PYTHON2_DEFAULT and PYTHON3_DEFAULT, define
BUILD_DEFAULT_PYTHON_FLAVORS in your make.conf.
In all the ports with Python dependencies, the *_DEPENDS entries MUST
end with the flavor so that the framework knows which to build/use.
This is done by appending '@${PY_FLAVOR}' after the origin (or
@${FLAVOR} if in a Python module with Python flavors, as the content
will be the same). For example:
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR}
PR: 223071
Reviewed by: portmgr, python
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D12464
the 32 ports that still use it. Bump PORTREVISION on their dependent
ports except the ones that depend on these:
audio/libogg
audio/libvorbis
devel/pcre
ftp/curl
graphics/jpeg
graphics/libart_lgpl
graphics/tiff
textproc/expat2
textproc/libxslt
In these cases the same trick as in the recent gettext update is used.
The ports install a symlink with the old library version. When enough
of their dependent ports have had regular updates the remaining ones can
get a PORTREVISION bump and the links can be removed.
Also remove the devel/pcre dependency from USE_GNOME=glib20. It causes
over 2200 packages to depend on devel/pcre while less than 200 actually
link with it. The glib20 package still depends on devel/pcre so this
should not make a difference for ports with USE_GNOME=glib20. Also,
libdata/pkgconfig/glib-2.0.pc lists pcre as a private library so
USE_GNOME=glib20 should not propagate it.
PR: 195724
Exp-run by: antoine
Approved by: portmgr (antoine)
OPTIONS_DEFINE. This policy has been implemented only recently that's why we
have many ports violating this policy.
This patch adds the default options specified in the Porter's Handbook to
OPTIONS_DEFINE where they are being used. Ports maintained by
gnome@FreeBSD.org, kde@FreeBSD.org and x11@FreeBSD.org have been excluded.
Approved by: portmgr (bapt)
supports almost the complete functionality of liblo, allowing
you to send and receive OSC messages using a nice and simple
Python API.
Also included are the command line utilities send_osc and
dump_osc.
WWW: http://das.nasophon.de/pyliblo/
PR: ports/130975
Submitted by: Wen Heping <wenheping at gmail.com>