- turn devel/py-twisted into a meta port.
- Update USE_TWISTED{,_BUILD,_RUN} in bsd.python.mk:
* Remove flow, pair, xish, which are deprecated
(but still update them to latest release in the tree)
* Remove USE_TWISTED=13 (no port uses this)
* Fix typos in twisted components _DEPENDS
PR: ports/130001
Submitted by: lwhsu
Approved by: maintainer timeout
Python 2.6 will be the next default python version when enough
testings of consumer ports are done. The new "2to3" program is
renamed to 2to3-2.6 and 2to3-3.0 for each version, respectively.
Repo-copied by: marcus
targets.
* Use /rescue/sh for index builds instead of /bin/sh, when it exists.
The former is statically linked and faster to execute, which becomes
significant when executing it tens of thousands of times. This
trick can be used with other recursive targets by passing in
__MAKE_SHELL.
* Get rid of make variable assignments that use != command invocations
in the critical path, using several methods:
- rewriting logic to use shell or make builtins instead of external command executions
- macroizing commands and executing them in the targets where they
are needed instead of with every invocation of make
- precomputing the results of invariant commands in
bsd.port.subdir.mk and passing them in explicitly to child makes,
and using this to avoid recalculation in all the children. NB: the
commands are still run one per top-level subdirectory but this
does not currently seem to be a major issue. They could be moved
further up into the top-level Makefile at the cost of some
cleanliness.
- Committers are strongly discouraged from adding further "bare" !=
assignments to the ports tree, even in their own ports. One of
the above strategies should be used to avoid future bloat.
* Rewrite the core 'describe' target to work entirely within a single
shell process using only builtin commands. The old version is
retained as a backup for use on systems older than 603104, which
does not have the make :u modifier. This cuts down the number of
processes executed during the course of a 'make index' by an order
of magnitude, and we are essentially now amortized to the minimum of
a single make + sh instance per port, plus whatever commands the
port makefile itself executes (which are usually unnecessary and
bogus).
* Less validation of the WWW: target is performed; this can become
policed at a port level by portlint. Specifically we look at the
second word of the first line beginning with "WWW:" in pkg-descr,
and append "http://" to it unless it already begins with "http://",
"https://" or "ftp://". Thanks to dougb for the idea of how to
extract WWW: using shell builtins.
* Use the "true" shell builtin instead of echo > /dev/null for a
measurable decrease in CPU use.
* Add a note about dubious escaping strategy in bsd.port.subdir.mk
* Minor change in output of 'make describe': it no longer strips
trailing CR characters from pkg-descr files with MSDOS CR/LF
termination. Instead the makeindex perl script that post-processes
make describe into the INDEX is tweaked to strip on input.
The bottom line is that on my test hardware INDEX builds are now
faster by more than a factor of 2 and with a reduction in system time
by a factor of 4-8 depending on configuration.
- Fix typo on comment about SZOPEBASEDIR and ZOPEBASEDIR [2]
- Fix type on Zope 2.10 support [3]
- Add a workaround for package building of ports using easy_install
on jail environments [4]
PR: 116278 [1], 116428 [2], 116520 [3]
Submitted by: Marcus von Appen <mva@sysfault.org> [1],
nakaji [2], Christian Ullrich <chris@chrullrich.net> [3]
Reported by: sat [4]
bsd.commands.mk and can be easily reused within the infrastructure.
- Revert old DESTDIR implementation.
- Add a new, fully chrooted DESTDIR implementation as bsd.destdir.mk.
Sponsored by: Google Summer of Code 2007
Approved by: portmgr (pav)
- Add significantly better support in bsd.python.mk for working with
Python Eggs and the easy_install system
Tested by: pointyhat runs
Approved by: pav (portmgr)
Most work by: perky
Thanks to: pav
- add a PYCTYPES dependency macro to bsd.python.mk to unbreak ctypes using
ports on Python 2.5 [2]
- Update two of the four ports using ctypes to this macro [3]
PR: 104587 [1]
Submitted by: Marcus von Appen <mva@sysfault.org> [1]
Approved by: portmgr (pav, linimon) [2], myself [3]
Ports using Py-Numeric should be aware that it is considered deprecated
in favor of NumPy.
PR: 105544
Submitted by: Diane Bruce <db@db.net>
Approved by: maintainer timeout, python@ (self)
period. Python 2.5 brought a vast range of incompatibility to a
large number of ports, so the python@ team will do more basic
compatibility work in a private repository and merge it later.
Sorry for the inconvenience.
Approved by: portmgr (kris)
- Now, lang/python is just a meta-port which depends on lang/python25.
- And all versions of Python ports have short version identifier in its
package name; python25-2.5, python24-2.4.3 and etc.
- Also you must upgrade all python modules after lang/python updated,
cd /usr/ports/lang/python && make upgrade-site-packages
- Give maintainership of Python ports to the new python@ group which
includes me, alexbl@ and others.
This commit should largele be a NOOP as it only adds support
for DESTDIR undefined. This does allow us to start testing
ports with DESTDIR set, but this is as of yet not supported.
Although this has been extensively tested on pointyhat, this
is a very intrusive change and some cases may have been
overlooked. Please contact Gabor and me if you find any.
PR: 100555
Submitted by: gabor
Sponsored by: Google Summer of Code 2006
- USE_ZOPE now gets USE_PYTHON-like version syntax to use in
Zope product ports Makefiles to limit range of supported
Zope versions.
- "yes" for choosing default (2.7).
- 2.8+ for 2.8 and any of higher versions.
- -2.8 in case of the Zope product isn't ready for Zope 3.
- 2.8-3.1 if the product isn't compatible with Python 2.3.
- ZOPE_VERSION is to use in command line argument or
/etc/make.conf. This accepts one of 2.7 2.8 and 3.1
currently.
PR: 87476
Requested by: Filippo Natali <filippo.natali@gmail.com>
- Allow to override a command passing to distutils using
PYDISTUTILS_{CONFIGURE,BUILD,INSTALL}_TARGET [2]
- Allow to specify BUILD/RUN dependency separatedly. [3]
- Replace shell executions with regex replacement on bsd.python.mk. [3]
- Remove thread serialization from socket.getaddrinfo() on FreeBSD 5.3
and later versions because we've got thread-safe implementation. [4]
- Add a workaround to avoid curses.h problem of FreeBSD base.
PR: 86685 [1]
Submitted by: Soeren Straarup <xride@x12.dk> [1],
lioux [2], vsevolod [3], sobomax [4]
Obtained from: Python CVS [4]
This brings USE_TWISTED options which works like USE_GNOME
to python ports. [1]
- Fill comment about USE_ZOPE. [1]
- Fix some mixed usage of tab and space.
PR: 82445 [1]
Submitted by: Vsevolod Stakhov <vsevolod@highsecure.ru> [1]
dependency on many python versions. This fixes a problem that Zope
product ports depend on both of Python 2.3 and 2.4 if they use not
only Zope itself but also 3rd party Python modules.
Submitted by: Filippo Natali <filippo.natali@widestore.net>
ORIGIN" problem when a python extension module is needed by not
only a Zope product but also non-Zope python application. And
there's no known good solution yet.
PR: 75013
Submitted by: Filippo Natali <filippo@widestore.net>