Re: [HEADS UP] Improved python package support ahead

2013-09-24 Thread Marcus von Appen
On, Sat Sep 21, 2013, Marcus von Appen wrote:


> Two new port Makefile knobs are to be committed to the ports tree in a
> couple of days or few weeks.
>
> PYDISTUTILS_AUTOPLIST
>
> This knob will enable the creation of an automatic package list similar
> to the linux rpm ports and rubygems. It will work for the majority
> packages that do not install files outside of the site-packages and
> include directories for python. Ports installing e.g. binaries
> might need some additional care, since there is a small regression for
> directories within BSD.local.dist.

The regression should be fixed within the latest update of
http://people.freebsd.org/~mva/python_mod_plist.diff.

The local tree under ${PREFIX} should be respected for most of the
cases. Since the conversion to PYDISTUTILS_AUTOPLIST has to be done
individually on a per-port basis, issues with certain ports can be fixed
on demand later on.

If there are no concerns, both knobs will be committed tomorrow or the
day after.

Cheers
Marcus


pgpdaPdYCTJ0a.pgp
Description: PGP signature


[HEADS UP] Improved python package support ahead

2013-09-21 Thread Marcus von Appen
Two new port Makefile knobs are to be committed to the ports tree in a
couple of days or few weeks.

PYDISTUTILS_AUTOPLIST

This knob will enable the creation of an automatic package list similar
to the linux rpm ports and rubygems. It will work for the majority
packages that do not install files outside of the site-packages and
include directories for python. Ports installing e.g. binaries
might need some additional care, since there is a small regression for
directories within BSD.local.dist.
The knob supports the traditional distutils as well as easy_install on
all currently supported python versions.
You can mix contents of an existing pkg-plist (e.g. if the port installs
additional documentation) with the automatic results.

PYTHON_PY3K_PLIST_HACK

Several ports currently install python scripts without using the typical
python way of doing things (e.g. devel/glib20), but which are
byte-compiled. To enable proper support for python 3.2+ within the
package lists, this knob will replace the contents of the existing
pkg-plist (e.g. share/port/foo.pyc, share/port/foo.pyo) with the proper
values. It's based on the plist include hack existing in
devel/py-virtualenv, which is currently used by various ports.

Both knobs will improve the situation for python packages to be built
for Python 3.x as default version. This will not solve all problems at
an instant, but reduces the wrong plist entries being created, if you
use python3.x as DEFAULT_PYTHON_VERSION.

The patch itself can be retrieved from
http://people.freebsd.org/~mva/python_mod_plist.diff

Cheers
Marcus


pgpdhrAQxsdVq.pgp
Description: PGP signature