svn commit: r378793 - in head/lang/pypy-devel: . files
David Naylor
dbn at FreeBSD.org
Tue Feb 10 18:50:54 UTC 2015
Author: dbn
Date: Tue Feb 10 18:50:52 2015
New Revision: 378793
URL: https://svnweb.freebsd.org/changeset/ports/378793
QAT: https://qat.redports.org/buildarchive/r378793/
Log:
pypy-devel: update to 2.5
Changes:
* Improved warmup time.
* Improved hitted code performance (+10% compared to v2.4).
* Passing objects between C and PyPy has been improved.
* Integrated numpy support gains GenericUfunc API.
* Dictionaries are ordered by default.
* More careful handling of errno.
Added:
head/lang/pypy-devel/files/patch-lib_pypy__gdbm.py (contents, props changed)
Modified:
head/lang/pypy-devel/Makefile
head/lang/pypy-devel/distinfo
head/lang/pypy-devel/files/Makefile
head/lang/pypy-devel/files/patch-pypy__sandbox__pypy_interactive.py
head/lang/pypy-devel/pkg-plist
Modified: head/lang/pypy-devel/Makefile
==============================================================================
--- head/lang/pypy-devel/Makefile Tue Feb 10 18:44:27 2015 (r378792)
+++ head/lang/pypy-devel/Makefile Tue Feb 10 18:50:52 2015 (r378793)
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= pypy
-DISTVERSION= 2.4.0
+DISTVERSION= 2.5.0
CATEGORIES= lang python
MASTER_SITES= https://bitbucket.org/pypy/pypy/get/ LOCAL/dbn/pypy
PKGNAMESUFFIX= -devel
@@ -17,7 +17,8 @@ LICENSE_COMB= multi
LIB_DEPENDS= libexpat.so:${PORTSDIR}/textproc/expat2 \
libffi.so:${PORTSDIR}/devel/libffi \
- libsqlite3.so:${PORTSDIR}/databases/sqlite3
+ libsqlite3.so:${PORTSDIR}/databases/sqlite3 \
+ libgdbm.so:${PORTSDIR}/databases/gdbm
PYTHON_DESC= Use Python-2.7 to translate (slowest)
PYPY_DESC= Use PyPy to translate (fastest, highest memory usage)
@@ -44,7 +45,7 @@ USES= compiler:c11 gettext iconv tar:bz
MAKEFILE= ${FILESDIR}/Makefile
PKGINSTALL= ${WRKDIR}/pkg-install
PKGDEINSTALL= ${WRKDIR}/pkg-deinstall
-WRKSRC= ${WRKDIR}/pypy-pypy-c6ad44ecf5d8
+WRKSRC= ${WRKDIR}/pypy-pypy-10f1b29a2bd2
PYPY_VER= ${DISTVERSION:C|([0-9])\.([0-9]).*|\1.\2|}
PYTHON_IMPL_VER= 2.7
@@ -237,8 +238,8 @@ do-configure:
post-build:
# UPDATING: check pypy/tool/release/package.py for list of cffi modules
-.for mod in _sqlite3 _curses syslog
- ${SETENV} ${MAKE_ENV} ${WRKDIR}/${PYPY_PRIMARY} -c 'import ${mod}'
+.for mod in _sqlite3 _curses syslog gdbm
+ ${SETENV} ${MAKE_ENV} LD_LIBRARY_PATH=${WRKDIR}:${LD_LIBRARY_PATH} ${WRKDIR}/${PYPY_PRIMARY} -c 'import ${mod}'
.endfor
${STRIP_CMD} ${WRKDIR}/${PYPY_LIBDIR}/lib_pypy/__pycache__/_cffi__*.pypy-${PYPY_VER:C/\.//}.so
.for _path in ${PYPYDIRS}
@@ -255,7 +256,7 @@ post-build:
do-install:
.for _path in ${PYPYDIRS}
- ${RM} -f ${STAGEDIR}${PREFIX}/${_path:C/.*://}
+ ${RM} -r ${STAGEDIR}${PREFIX}/${_path:C/.*://}
(cd ${WRKSRC}/${_path:C/:.*//}; ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/${_path:C/.*://})
.endfor
.for name in ${PYPY_NAMES:O}
@@ -263,6 +264,7 @@ do-install:
${INSTALL_PROGRAM} ${WRKDIR}/${name} ${STAGEDIR}${PREFIX}/bin/${name}-${PYPY_VER}
${ECHO} bin/${name}-${PYPY_VER} >> ${TMPPLIST}
.endfor
+ ${INSTALL_LIB} ${WRKDIR}/libpypy-c.so ${STAGEDIR}${PREFIX}/lib/
test: patch
.for inst in ${PYPY_INST}
@@ -271,10 +273,11 @@ test: patch
.endfor
pkg-plist: build
- ${RM} -f ${WRKDIR}/.plist-files-gen ${WRKDIR}/.plist-dirs-gen
+ ${RM} ${WRKDIR}/.plist-files-gen ${WRKDIR}/.plist-dirs-gen
.for path in ${PYPYDIRS}
cd ${WRKDIR} && ${FIND} ${path:C/.*://}/ -type f >> ${WRKDIR}/.plist-files-gen
.endfor
+ ${ECHO} lib/libpypy-c.so >> ${WRKDIR}/.plist-files-gen
${REINPLACE_CMD} -e 's|^${PYPY_LIBDIR}|%%PYPY_LIBDIR%%|g' \
-e 's|^${PYPY_INCLUDEDIR}|%%PYPY_INCLUDEDIR%%|g' \
-e 's|${PYPY_ARCH}|%%PYPY_ARCH%%|g' \
Modified: head/lang/pypy-devel/distinfo
==============================================================================
--- head/lang/pypy-devel/distinfo Tue Feb 10 18:44:27 2015 (r378792)
+++ head/lang/pypy-devel/distinfo Tue Feb 10 18:50:52 2015 (r378793)
@@ -1,2 +1,2 @@
-SHA256 (pypy/release-2.4.0.tar.bz2) = 7e0dec2c40106f20f002121bdabb71939915254fb91bd55b01434e4b994113d2
-SIZE (pypy/release-2.4.0.tar.bz2) = 15390145
+SHA256 (pypy/release-2.5.0.tar.bz2) = 8d644a55a3150cf3d18536c784e3410bb3f3438c1505000c4f761863bacedf88
+SIZE (pypy/release-2.5.0.tar.bz2) = 14946228
Modified: head/lang/pypy-devel/files/Makefile
==============================================================================
--- head/lang/pypy-devel/files/Makefile Tue Feb 10 18:44:27 2015 (r378792)
+++ head/lang/pypy-devel/files/Makefile Tue Feb 10 18:50:52 2015 (r378793)
@@ -28,6 +28,7 @@ BUILDDIR= usession-release-${DISTVERSION
${PYPY_${inst}_NAME}: build_${PYPY_${inst}_NAME}/${BUILDDIR}/testing_1/pypy-c
${CP} build_${PYPY_${inst}_NAME}/${BUILDDIR}/testing_1/pypy-c \
${PYPY_${inst}_NAME}
+ -${CP} build_${PYPY_${inst}_NAME}/${BUILDDIR}/testing_1/libpypy-c.so .
.done_translate_${PYPY_${inst}_NAME}:
${RM} -rf build_${PYPY_${inst}_NAME}
Added: head/lang/pypy-devel/files/patch-lib_pypy__gdbm.py
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/lang/pypy-devel/files/patch-lib_pypy__gdbm.py Tue Feb 10 18:50:52 2015 (r378793)
@@ -0,0 +1,31 @@
+--- lib_pypy/gdbm.py.orig 2015-02-10 20:14:29.243203718 +0200
++++ lib_pypy/gdbm.py 2015-02-10 20:17:23.235080307 +0200
+@@ -1,4 +1,4 @@
+-import cffi, os
++import cffi, os, sys
+
+ ffi = cffi.FFI()
+ ffi.cdef('''
+@@ -37,9 +37,19 @@
+ ''')
+
+ try:
+- lib = ffi.verify('''
+- #include "gdbm.h"
+- ''', libraries=['gdbm'])
++ if sys.platform.startswith('freebsd'):
++ import os.path
++ _localbase = os.environ.get('LOCALBASE', '/usr/local')
++ lib = ffi.verify('''
++ #include "gdbm.h"
++ ''', libraries=['gdbm'],
++ include_dirs=[os.path.join(_localbase, 'include')],
++ library_dirs=[os.path.join(_localbase, 'lib')]
++ )
++ else:
++ lib = ffi.verify('''
++ #include "gdbm.h"
++ ''', libraries=['gdbm'])
+ except cffi.VerificationError as e:
+ # distutils does not preserve the actual message,
+ # but the verification is simple enough that the
Modified: head/lang/pypy-devel/files/patch-pypy__sandbox__pypy_interactive.py
==============================================================================
--- head/lang/pypy-devel/files/patch-pypy__sandbox__pypy_interactive.py Tue Feb 10 18:44:27 2015 (r378792)
+++ head/lang/pypy-devel/files/patch-pypy__sandbox__pypy_interactive.py Tue Feb 10 18:50:52 2015 (r378793)
@@ -18,7 +18,7 @@
@@ -56,10 +59,10 @@
return Dir({
'bin': Dir({
- 'pypy-c': RealFile(self.executable),
+ 'pypy-c': RealFile(self.executable, mode=0111),
- 'lib-python': RealDir(os.path.join(libroot, 'lib-python'),
- exclude=exclude),
- 'lib_pypy': RealDir(os.path.join(libroot, 'lib_pypy'),
Modified: head/lang/pypy-devel/pkg-plist
==============================================================================
--- head/lang/pypy-devel/pkg-plist Tue Feb 10 18:44:27 2015 (r378792)
+++ head/lang/pypy-devel/pkg-plist Tue Feb 10 18:50:52 2015 (r378793)
@@ -24,8 +24,11 @@
%%PYPY_INCLUDEDIR%%/methodobject.h
%%PYPY_INCLUDEDIR%%/missing.h
%%PYPY_INCLUDEDIR%%/modsupport.h
+%%PYPY_INCLUDEDIR%%/numpy/__multiarray_api.h
%%PYPY_INCLUDEDIR%%/numpy/arrayobject.h
+%%PYPY_INCLUDEDIR%%/numpy/ndarraytypes.h
%%PYPY_INCLUDEDIR%%/numpy/npy_3kcompat.h
+%%PYPY_INCLUDEDIR%%/numpy/npy_common.h
%%PYPY_INCLUDEDIR%%/numpy/old_defines.h
%%PYPY_INCLUDEDIR%%/object.h
%%PYPY_INCLUDEDIR%%/patchlevel.h
@@ -1517,6 +1520,7 @@
%%PYPY_LIBDIR%%/lib2to3/tests/test_util.pyc
%%PYPY_LIBDIR%%/lib_pypy/__init__.py
%%PYPY_LIBDIR%%/lib_pypy/__init__.pyc
+%%PYPY_LIBDIR%%/lib_pypy/__pycache__/_cffi__g134d2a74x4a412aa3.pypy-%%PYPY_VER%%.so
%%PYPY_LIBDIR%%/lib_pypy/__pycache__/_cffi__g29b85a97xace1544d.pypy-%%PYPY_VER%%.so
%%PYPY_LIBDIR%%/lib_pypy/__pycache__/_cffi__g5ebcbb41x576c1bb2.pypy-%%PYPY_VER%%.so
%%PYPY_LIBDIR%%/lib_pypy/__pycache__/_cffi__g82f9edffx359e5476.pypy-%%PYPY_VER%%.so
@@ -3834,3 +3838,4 @@
%%PYPY_LIBDIR%%/xmlrpclib.pyc
%%PYPY_LIBDIR%%/zipfile.py
%%PYPY_LIBDIR%%/zipfile.pyc
+lib/libpypy-c.so
More information about the svn-ports-all
mailing list