1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-01 05:45:45 +00:00

lang/pypy: update to 2.5.1

Changes:
 * Merge pypy-devel into pypy
 * Drop pypy-devel (was intended to track pypy-current but no automated
   process was implemented)
 * Drop upstreamed patches

PR:		199790
This commit is contained in:
David Naylor 2015-05-18 18:56:27 +00:00
parent ad5a689c8e
commit d762c9d1e9
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=386702
24 changed files with 61 additions and 4505 deletions

1
MOVED
View File

@ -7582,3 +7582,4 @@ archivers/lz4|archivers/liblz4|2015-05-08|Superseded by archivers/liblz4
deskutils/libopensync-plugin-python||2015-05-09|Has expired: Unfetchable, devices are not produced anymore
deskutils/msynctool||2015-05-09|Has expired: Unfetchable, devices are not produced anymore
devel/ruby-flexmock|devel/rubygem-flexmock|2015-05-10|Rename to match our rubygems naming
lang/pypy-devel|lang/pypy|2015-05-17|Superseded by lang/pypy

View File

@ -244,7 +244,6 @@
SUBDIR += py-mx-base
SUBDIR += py-prolog
SUBDIR += pypy
SUBDIR += pypy-devel
SUBDIR += pypy3-devel
SUBDIR += python
SUBDIR += python-doc-html

View File

@ -1,290 +0,0 @@
# Created by: David Naylor <naylor.b.david@gmail.com>
# $FreeBSD$
PORTNAME= pypy
DISTVERSION= 2.5.0
CATEGORIES= lang python
MASTER_SITES= https://bitbucket.org/pypy/pypy/get/ LOCAL/dbn/pypy
PKGNAMESUFFIX= -devel
DISTNAME= release-${DISTVERSION}
DIST_SUBDIR= pypy
MAINTAINER= dbn@FreeBSD.org
COMMENT= Fast, compliant implementation of the Python language
LICENSE= MIT PSFL
LICENSE_COMB= multi
LIB_DEPENDS= libexpat.so:${PORTSDIR}/textproc/expat2 \
libffi.so:${PORTSDIR}/devel/libffi \
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)
PYPY_MINMEM_DESC= Use PyPy to translate (lowest memory usage)
PYINST= PyPy instances
SANDBOX_DESC= Translate a sandboxed pypy
TRANS_DESC= Translation method
.if !defined(PYPY_INST)
OPTIONS_GROUP= PYINST
OPTIONS_GROUP_PYINST= SANDBOX
.endif
LOCALBASE?= /usr/local
.if exists(${LOCALBASE}/bin/pypy)
OPTIONS_SINGLE= TRANS
OPTIONS_SINGLE_TRANS= PYTHON PYPY PYPY_MINMEM
OPTIONS_DEFAULT+= PYPY_MINMEM
.endif
CONFLICTS_INSTALL= pypy-[0-9]*
ALL_TARGET= ${PYPY_NAMES}
BUILD_WRKSRC= ${WRKDIR}
USES= compiler:c11 gettext iconv tar:bzip2
MAKEFILE= ${FILESDIR}/Makefile
PKGINSTALL= ${WRKDIR}/pkg-install
PKGDEINSTALL= ${WRKDIR}/pkg-deinstall
WRKSRC= ${WRKDIR}/pypy-pypy-10f1b29a2bd2
PYPY_VER= ${DISTVERSION:C|([0-9])\.([0-9]).*|\1.\2|}
PYTHON_IMPL_VER= 2.7
PYPY_LIBDIR= lib/${PORTNAME}-${PYPY_VER}
PYPY_INCLUDEDIR= include/${PORTNAME}-${PYPY_VER}
PYPYDIRS= lib-python/${PYTHON_IMPL_VER}:${PYPY_LIBDIR} \
lib_pypy:${PYPY_LIBDIR}/lib_pypy \
include:${PYPY_INCLUDEDIR}
PLIST_SUB+= PYPY_LIBDIR=${PYPY_LIBDIR} \
PYPY_INCLUDEDIR=${PYPY_INCLUDEDIR}
MAKE_ENV+= DISTVERSION=${DISTVERSION} PYTHON_CMD=${PYTHON_CMD} \
WRKSRC=${WRKSRC} PYPY_LOCALBASE=${LOCALBASE}
.include <bsd.port.options.mk>
.include "${MASTERDIR}/files/bsd.pypy.inst.mk"
.if ${PORT_OPTIONS:MPYPY} || defined(PYTHON_CMD)
PYTHON_CMD?= ${LOCALBASE}/bin/pypy
.elif ${PORT_OPTIONS:MPYPY_MINMEM}
PYTHON_CMD?= "${SETENV} PYPY_GC_MAX_DELTA=200MB ${LOCALBASE}/bin/pypy --jit loop_longevity=300"
.else
USES+= python:2,build
.endif
# List of PyPy instances
.if !defined(PYPY_INST)
PYPY_INST= DEFAULT
.if ${PORT_OPTIONS:MSANDBOX}
PYPY_INST+= SANDBOX
.endif
.endif # !defined(PYPY_INST)
MAKE_ENV+= PYPY_INST="${PYPY_INST}"
.for inst in ${PYPY_INST}
PYPY_NAMES+= ${PYPY_${inst}_NAME}
PYPY_PRIMARY?= ${PYPY_${inst}_NAME}
MAKE_ENV+= PYPY_${inst}_NAME="${PYPY_${inst}_NAME}" \
PYPY_${inst}_OBJSPACE_ARGS="${PYPY_${inst}_OBJSPACE_ARGS}" \
PYPY_${inst}_OPT="${PYPY_${inst}_OPT}" \
PYPY_${inst}_TRANSLATE_ARGS="${PYPY_${inst}_TRANSLATE_ARGS}"
# Check if the boehm GC will be used
.if ${PYPY_${inst}_OPT} == 0 || ${PYPY_${inst}_OPT} == 1 || ${PYPY_${inst}_OPT} == size
WITH_BOEHM_GC= yes
.endif
.endfor # inst in ${PYPY_INST}
.if defined(WITH_BOEHM_GC)
LIB_DEPENDS+= libgc.so:${PORTSDIR}/devel/boehm-gc
.endif
# Translate FreeBSD ARCH types to PyPy ARCH types
# Pypy officially only supports i386 and amd64, the other platforms are
# untested (and do not have jit support).
.if ${ARCH} == "i386"
PYPY_ARCH= x86_32
PYPY_JITTABLE= YES
PYPY_BITS= 32
.elif ${ARCH} == "amd64"
PYPY_ARCH= x86_64
PYPY_JITTABLE= YES
PYPY_BITS= 64
.elif ${ARCH} == "powerpc"
PYPY_ARCH= ppc_32
PYPY_BITS= 32
.elif ${ARCH} == "powerpc64"
PYPY_ARCH= ppc_64
PYPY_BITS= 64
.else
PYPY_ARCH= ${ARCH}
PYPY_BITS= 32
.endif
PLIST_SUB+= PYPY_ARCH="${PYPY_ARCH}"
PLIST_SUB+= PYPY_BITS="${PYPY_BITS}"
PLIST_SUB+= PYPY_VER="${PYPY_VER:C/\.//}"
.if !defined(PYPY_JITTABLE)
.for inst in ${PYPY_INST}
.if ${PYPY_${inst}_OPT} == jit
PYPY_${inst}_OPT= 2
.endif
.endfor # inst in ${PYPY_INST}
.endif # !defined(PYPY_JITTABLE)
# Translating requires a large amount of memory, with a two by two matrix
# requirement (bitness vs PYTHON_CMD). A more refined matrix is possible based
# on optimisation level however this assumes "jit" is the preferred optimisation
# level.
#
.if ${PYPY_ARCH:M*64}
. if ${PORT_OPTIONS:MPYPY}
# 64bit + pypy = 5.1 GiB
PYPY_TRANSLATION_MEMORY= 5347737
. elif ${PORT_OPTIONS:MPYPY_MINMEM}
# 64bit + pypy (minimum memory) = 3.2 GiB
PYPY_TRANSLATION_MEMORY= 3355443
. else
# 64bit + python = 4.8 GiB
PYPY_TRANSLATION_MEMORY= 5033164
. endif
# 64bit system += 366 MiB
PYPY_MINIMUM_MEMORY= $$((${PYPY_TRANSLATION_MEMORY} + 374784))
.else
. if ${PORT_OPTIONS:MPYPY}
# 32bit + pypy = 2.2GiB
PYPY_TRANSLATION_MEMORY= 2306867
. elif ${PORT_OPTIONS:MPYPY_MINMEM}
# 32bit + pypy (minimum memory) = 1.9GiB
PYPY_TRANSLATION_MEMORY= 1992294
. else
# 32bit + python = 2.5 GiB
PYPY_TRANSLATION_MEMORY= 2558588
. endif
# 32bit system += 168 MiB
PYPY_MINIMUM_MEMORY= $$((${PYPY_TRANSLATION_MEMORY} + 171787))
.endif
.if !defined(DISABLE_MAKE_JOBS) && ${PYPY_PRIMARY} != ${PYPY_NAMES}
PYPY_MEMORY_MULTIPLY= `echo ${PYPY_NAMES} | wc -w`
.else
PYPY_MEMORY_MULTIPLY= 1
.endif
PYPY_IGNORE_MEMORY= Memory checks non-fatal until revised figures are obtained.
PYPY_MEM_WARNING= \
${ECHO} "warn: this system has insufficient memory, expected at least $$((${PYPY_MINIMUM_MEMORY} / 1024 * ${PYPY_MEMORY_MULTIPLY} + 1))MiB RAM"
.if ${PORT_OPTIONS:MPYPY}
PYPY_MEM_WARNING+= ;\
${ECHO} "warn: PyPy is being used for translation, consider using Python or PyPy (minimum memory) as it uses less memory"
.elif ${PORT_OPTIONS:MPYTHON}
PYPY_MEM_WARNING+= ;\
${ECHO} "warn: Python is being used for translation, consider using PyPy (minimum memory) as it uses less memory"
.endif
.if ${PYPY_MEMORY_MULTIPLY} != 1
PYPY_MEM_WARNING+= ;\
${ECHO} "warn: consider using -DDISABLE_MAKE_JOBS to serialise builds and to conserve memory"
.endif
.if !defined(PYPY_IGNORE_MEMORY)
PYPY_MEM_WARNING+= ;\
${ECHO} "err: memory warnings are terminal, to overwrite this error define -DPYPY_IGNORE_MEMORY and try again"; \
exit 1
.else
PYPY_MEM_WARNING+= ;\
${ECHO} "warn: THIS SYSTEM MAY END UP SWAP THRASHING AD INFINITUM"
.endif
usage:
@${ECHO} "PyPy supports a large number of parameters and customisations. This port"
@${ECHO} "supports building multiple instances of PyPy, for example:"
@${ECHO} "PYPY_INST= SANDBOX CUSTOM"
@${ECHO} "PYPY_CUSTOM_NAME= pypy-custom"
@${ECHO} "PYPY_CUSTOM_TRANSLATE_ARGS= --gcrootfinder=shadowstack --gc=generation"
@${ECHO} "PYPY_CUSTOM_OPT= 0"
@${ECHO} "PYPY_CUSTOM_OBJSPACE_ARGS= --no-objspace-usepycfiles --objspace=thunk"
@${ECHO} "will produce two binaries named 'pypy-sandbox' (SANDBOX instance) and"
@${ECHO} "'pypy-custom' (CUSTOM instance)."
@${ECHO} "See for a list of parameters:"
@${ECHO} " http://readthedocs.org/docs/pypy/latest/config/index.html"
@${ECHO} "See for predefined instances:"
@${ECHO} " ${FILESDIR}/bsd.pypy.inst.mk"
@${ECHO}
@${ECHO} "On a fast machine PyPy takes around 45 minutes to translate and compile,"
@${ECHO} "however an average machine takes in excess of 4 hours, per instance."
pre-fetch:
@${ECHO} Please see http://wiki.FreeBSD.org/PyPy for more details on the port or 'make usage' for a summary
@if [ $$((`sysctl -n hw.physmem` / 1024)) -le $$((${PYPY_MINIMUM_MEMORY} * ${PYPY_MEMORY_MULTIPLY})) ]; then ${PYPY_MEM_WARNING}; fi
post-extract:
.for _path in ${PYPYDIRS}
${MKDIR} ${WRKDIR}/`${DIRNAME} ${_path:C/.*://}`
${LN} -s ${WRKSRC}/${_path:C/:.*//} ${WRKDIR}/${_path:C/.*://}
.endfor
${LN} -s ${WRKDIR}/lib ${WRKSRC}/lib
do-configure:
${SED} -e 's|%%PREFIX%%|${PREFIX}|g' \
-e 's|%%PYPY_NAMES%%|${PYPY_NAMES}|g' \
-e 's|%%PYPY_VER%%|${PYPY_VER}|g' \
${FILESDIR}/use.pypy > ${WRKDIR}/use.pypy
${CP} ${WRKDIR}/use.pypy ${PKGINSTALL}
${CP} ${WRKDIR}/use.pypy ${PKGDEINSTALL}
post-build:
# UPDATING: check pypy/tool/release/package.py for list of cffi modules
.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}
-${FIND} ${WRKDIR}/${_path:C/.*://}/ -type d | \
${XARGS} -n1 ${WRKDIR}/${PYPY_PRIMARY} -m compileall -fl
${FIND} ${WRKDIR}/${_path:C/.*://}/ -name '*.orig' -delete -or \
-name '*.bak' -delete -or \
-name '*.c' -delete -or \
-name '*.o' -delete
${FIND} ${WRKDIR}/${_path:C/.*://}/ -name __pycache__ | \
${XARGS} -n1 -I {} ${FIND} {} -depth 1 -type d | \
${XARGS} ${RM} -r
.endfor
do-install:
.for _path in ${PYPYDIRS}
${RM} -r ${STAGEDIR}${PREFIX}/${_path:C/.*://}
(cd ${WRKSRC}/${_path:C/:.*//}; ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/${_path:C/.*://})
.endfor
.for name in ${PYPY_NAMES:O}
${STRIP_CMD} ${WRKDIR}/${name}
${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}
@${WHICH} ${PYPY_${inst}_NAME} > /dev/null 2>&1 || (${ECHO} "Unable to find ${PYPY_${inst}_NAME}, please install port first!"; exit 1)
(cd ${WRKSRC}; ${PYPY_${inst}_NAME} pypy/test_all.py lib_pypy/pypy_test pypy/module)
.endfor
pkg-plist: build
${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' \
-e 's|_${PYPY_BITS}_|_%%PYPY_BITS%%_|g' \
-e 's|-${PYPY_VER:C/\.//}\.|-%%PYPY_VER%%.|g' \
${WRKDIR}/.plist-files-gen
${SORT} ${WRKDIR}/.plist-files-gen > ${WRKDIR}/pkg-plist
${CP} ${WRKDIR}/pkg-plist ${.CURDIR}/pkg-plist
.include <bsd.port.mk>

View File

@ -1,2 +0,0 @@
SHA256 (pypy/release-2.5.0.tar.bz2) = 8d644a55a3150cf3d18536c784e3410bb3f3438c1505000c4f761863bacedf88
SIZE (pypy/release-2.5.0.tar.bz2) = 14946228

View File

@ -1,45 +0,0 @@
# Build Makefile for lang/pypy
# $FreeBSD$
# Required environment variables
# - DISTVERSION
# - PYTHON_CMD
# - PYPY_INST
# - PYPY_${inst}_NAME
# - PYPY_${inst}_OBJSPACE_ARGS
# - PYPY_${inst}_OPT
# - PYPY_${inst}_TRANSLATE_ARGS
# - WRKSRC
CP?= cp
ECHO?= echo
MKDIR?= mkdir
RM?= rm
SED?= sed
SETENV?= env
TOUCH?= touch
REINPLACE_CMD?= ${SED} -i~
BUILDDIR= usession-release-${DISTVERSION}-0
.for inst in ${PYPY_INST}
${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}
${MKDIR} build_${PYPY_${inst}_NAME}
(cd ${WRKSRC}/pypy/goal; \
/usr/bin/time -l ${SETENV} TMPDIR=${.CURDIR}/build_${PYPY_${inst}_NAME} \
${PYTHON_CMD} ../../rpython/bin/rpython --source ${PYPY_${inst}_TRANSLATE_ARGS} -O${PYPY_${inst}_OPT} \
targetpypystandalone.py ${PYPY_${inst}_OBJSPACE_ARGS} )
${TOUCH} .done_translate_${PYPY_${inst}_NAME}
build_${PYPY_${inst}_NAME}/${BUILDDIR}/testing_1/pypy-c: .done_translate_${PYPY_${inst}_NAME}
${REINPLACE_CMD} -e 's|^%.o: %.c$$|.c.o:|g' build_${PYPY_${inst}_NAME}/${BUILDDIR}/testing_1/Makefile
/usr/bin/time -l ${MAKE} -C build_${PYPY_${inst}_NAME}/${BUILDDIR}/testing_1 pypy-c
.endfor

View File

@ -1,13 +0,0 @@
# PyPy instances
# See http://readthedocs.org/docs/pypy/latest/config/index.html for a list of
# options available. --gcrootfinder=asmgcc does not work under FreeBSD/amd64.
PYPY_DEFAULT_NAME?= pypy
PYPY_DEFAULT_TRANSLATE_ARGS?=
PYPY_DEFAULT_OPT?= jit
PYPY_DEFAULT_OBJSPACE_ARGS?=
PYPY_SANDBOX_NAME?= pypy-sandbox
PYPY_SANDBOX_TRANSLATE_ARGS?= --sandbox
PYPY_SANDBOX_OPT?= jit
PYPY_SANDBOX_OBJSPACE_ARGS?=

View File

@ -1,33 +0,0 @@
--- lib-python/2.7/distutils/command/install.py.orig 2012-07-15 10:10:18.000000000 +0200
+++ lib-python/2.7/distutils/command/install.py 2012-07-15 10:13:15.000000000 +0200
@@ -84,9 +84,9 @@
'data' : '$userbase',
},
'pypy': {
- 'purelib': '$base/site-packages',
- 'platlib': '$base/site-packages',
- 'headers': '$base/include',
+ 'purelib': '$base/lib/pypy-$pypy_version_short/site-packages',
+ 'platlib': '$platbase/lib/pypy-$pypy_version_short/site-packages',
+ 'headers': '$base/include/pypy-$pypy_version_short/$dist_name',
'scripts': '$base/bin',
'data' : '$base',
},
@@ -304,6 +304,7 @@
# about needing recursive variable expansion (shudder).
py_version = (string.split(sys.version))[0]
+ pypy_version = '%s.%s.%s' % sys.pypy_version_info[:3]
(prefix, exec_prefix) = get_config_vars('prefix', 'exec_prefix')
self.config_vars = {'dist_name': self.distribution.get_name(),
'dist_version': self.distribution.get_version(),
@@ -311,6 +312,9 @@
'py_version': py_version,
'py_version_short': py_version[0:3],
'py_version_nodot': py_version[0] + py_version[2],
+ 'pypy_version': pypy_version,
+ 'pypy_version_short': pypy_version[0:3],
+ 'pypy_version_nodot': pypy_version[0] + pypy_version[2],
'sys_prefix': prefix,
'prefix': prefix,
'sys_exec_prefix': exec_prefix,

View File

@ -1,22 +0,0 @@
--- lib-python/2.7/distutils/sysconfig_pypy.py.orig 2012-11-22 14:52:20.000000000 +0200
+++ lib-python/2.7/distutils/sysconfig_pypy.py 2012-11-27 17:59:44.000000000 +0200
@@ -15,7 +15,7 @@
def get_python_inc(plat_specific=0, prefix=None):
from os.path import join as j
- return j(sys.prefix, 'include')
+ return j(sys.prefix, 'include', 'pypy-%s.%s' % sys.pypy_version_info[:2])
def get_python_version():
"""Return a string containing the major and minor Python version,
@@ -42,8 +42,8 @@
if prefix is None:
prefix = PREFIX
if standard_lib:
- return os.path.join(prefix, "lib-python", get_python_version())
- return os.path.join(prefix, 'site-packages')
+ return os.path.join(prefix, 'lib', 'pypy-%s.%s' % sys.pypy_version_info[:2])
+ return os.path.join(prefix, 'lib', 'pypy-%s.%s' % sys.pypy_version_info[:2], 'site-packages')
_config_vars = None

View File

@ -1,40 +0,0 @@
--- lib-python/2.7/sysconfig.py.orig 2012-07-15 09:57:14.000000000 +0200
+++ lib-python/2.7/sysconfig.py 2012-07-15 10:03:25.000000000 +0200
@@ -27,12 +27,12 @@
'data' : '{base}',
},
'pypy': {
- 'stdlib': '{base}/lib-{implementation_lower}/{py_version_short}',
- 'platstdlib': '{base}/lib-{implementation_lower}/{py_version_short}',
- 'purelib': '{base}/lib-{implementation_lower}/{py_version_short}',
- 'platlib': '{base}/lib-{implementation_lower}/{py_version_short}',
- 'include': '{base}/include',
- 'platinclude': '{base}/include',
+ 'stdlib': '{base}/lib/pypy-{pypy_version_short}',
+ 'platstdlib': '{platbase}/lib/pypy-{pypy_version_short}',
+ 'purelib': '{base}/lib/pypy-{pypy_version_short}/site-packages',
+ 'platlib': '{platbase}/lib/pypy-{pypy_version_short}/site-packages',
+ 'include': '{base}/include/pypy-{pypy_version_short}',
+ 'platinclude': '{platbase}/include/pypy-{pypy_version_short}',
'scripts': '{base}/bin',
'data' : '{base}',
},
@@ -98,6 +98,8 @@
'scripts', 'data')
_PY_VERSION = sys.version.split()[0]
_PY_VERSION_SHORT = sys.version[:3]
+_PYPY_VERSION = '%s.%s.%s' % sys.pypy_version_info[:3]
+_PYPY_VERSION_SHORT = _PYPY_VERSION[:3]
_PY_VERSION_SHORT_NO_DOT = _PY_VERSION[0] + _PY_VERSION[2]
_PREFIX = os.path.normpath(sys.prefix)
_EXEC_PREFIX = os.path.normpath(sys.exec_prefix)
@@ -304,6 +306,9 @@
_CONFIG_VARS['py_version'] = _PY_VERSION
_CONFIG_VARS['py_version_short'] = _PY_VERSION_SHORT
_CONFIG_VARS['py_version_nodot'] = _PY_VERSION[0] + _PY_VERSION[2]
+ _CONFIG_VARS['pypy_version'] = _PYPY_VERSION
+ _CONFIG_VARS['pypy_version_short'] = _PYPY_VERSION_SHORT
+ _CONFIG_VARS['pypy_version_nodot'] = _PYPY_VERSION[0] + _PYPY_VERSION[2]
_CONFIG_VARS['base'] = _PREFIX
_CONFIG_VARS['platbase'] = _EXEC_PREFIX
_CONFIG_VARS['projectbase'] = _PROJECT_BASE

View File

@ -1,19 +0,0 @@
--- lib_pypy/_sqlite3.py.bak 2013-12-15 23:45:52.000000000 +0200
+++ lib_pypy/_sqlite3.py 2013-12-16 12:07:57.000000000 +0200
@@ -269,11 +269,14 @@
_ffi.cdef("int sqlite3_enable_load_extension(sqlite3 *db, int onoff);")
if sys.platform.startswith('freebsd'):
+ import os
+ import os.path
+ _localbase = os.environ.get('LOCALBASE', '/usr/local')
_lib = _ffi.verify("""
#include <sqlite3.h>
""", libraries=['sqlite3'],
- include_dirs=['/usr/local/include'],
- library_dirs=['/usr/local/lib']
+ include_dirs=[os.path.join(_localbase, 'include')],
+ library_dirs=[os.path.join(_localbase, 'lib')]
)
else:
_lib = _ffi.verify("""

View File

@ -1,31 +0,0 @@
--- 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

View File

@ -1,21 +0,0 @@
--- pypy/module/sys/initpath.py.orig 2012-11-27 18:15:02.000000000 +0200
+++ pypy/module/sys/initpath.py 2012-11-27 18:19:45.000000000 +0200
@@ -90,14 +90,13 @@
least contain a directory called ``lib-python/X.Y`` and another one called
``lib_pypy``. If they cannot be found, it raises OSError.
"""
- from pypy.module.sys.version import CPYTHON_VERSION
- dirname = '%d.%d' % (CPYTHON_VERSION[0],
- CPYTHON_VERSION[1])
- lib_python = os.path.join(prefix, 'lib-python')
+ from pypy.module.sys.version import PYPY_VERSION
+ dirname = 'pypy-%d.%d' % PYPY_VERSION[:2]
+ lib_python = os.path.join(prefix, 'lib')
python_std_lib = os.path.join(lib_python, dirname)
_checkdir(python_std_lib)
- lib_pypy = os.path.join(prefix, 'lib_pypy')
+ lib_pypy = os.path.join(python_std_lib, 'lib_pypy')
_checkdir(lib_pypy)
importlist = []

View File

@ -1,32 +0,0 @@
--- pypy/sandbox/pypy_interact.py.orig 2014-05-08 18:36:08.000000000 +0200
+++ pypy/sandbox/pypy_interact.py 2014-05-12 20:20:57.000000000 +0200
@@ -22,11 +22,14 @@
import sys, os
sys.path.insert(0, os.path.realpath(os.path.join(os.path.dirname(__file__), '..', '..')))
+from pypy.module.sys.version import PYPY_VERSION
from rpython.translator.sandbox.sandlib import SimpleIOSandboxedProc
from rpython.translator.sandbox.sandlib import VirtualizedSandboxedProc
from rpython.translator.sandbox.vfs import Dir, RealDir, RealFile
import pypy
LIB_ROOT = os.path.dirname(os.path.dirname(pypy.__file__))
+LIB_ROOT = os.path.join(LIB_ROOT, 'lib')
+LIB_ROOT = os.path.join(LIB_ROOT, 'pypy-%d.%d' % PYPY_VERSION[:2])
class PyPySandboxedProc(VirtualizedSandboxedProc, SimpleIOSandboxedProc):
argv0 = '/bin/pypy-c'
@@ -56,10 +59,10 @@
return Dir({
'bin': Dir({
'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'),
- exclude=exclude),
+ 'lib': Dir({
+ 'pypy-%d.%d' % PYPY_VERSION[:2] : RealDir(libroot,
+ exclude=exclude)
+ })
}),
'tmp': tmpdirnode,
})

View File

@ -1,28 +0,0 @@
--- ./rpython/config/support.py~ 2013-12-16 12:34:17.000000000 +0200
+++ ./rpython/config/support.py 2013-12-16 12:33:52.000000000 +0200
@@ -8,7 +8,9 @@
if os.environ.get('MAKEFLAGS'):
return 1 # don't override MAKEFLAGS. This will call 'make' without any '-j' option
if sys.platform == 'darwin':
- return darwin_get_cpu_count()
+ return sysctl_get_cpu_count('/usr/sbin/sysctl')
+ elif sys.platform.startswith('freebsd'):
+ return sysctl_get_cpu_count('/sbin/sysctl')
elif not sys.platform.startswith('linux'):
return 1 # implement me
try:
@@ -26,11 +28,10 @@
except:
return 1 # we really don't want to explode here, at worst we have 1
-def darwin_get_cpu_count(cmd = "/usr/sbin/sysctl hw.ncpu"):
+def sysctl_get_cpu_count(cmd, name='hw.ncpu'):
try:
- proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, shell=True)
- # 'hw.ncpu: 20'
- count = proc.communicate()[0].rstrip()[8:]
+ proc = subprocess.Popen([cmd, '-n', name], stdout=subprocess.PIPE)
+ count = proc.communicate()[0]
return int(count)
except (OSError, ValueError):
return 1

View File

@ -1,13 +0,0 @@
--- rpython/rtyper/tool/rffi_platform.py~ 2011-11-19 09:44:54.000000000 +0200
+++ rpython/rtyper/tool/rffi_platform.py 2011-11-23 20:17:30.000000000 +0200
@@ -805,7 +805,9 @@
includes=['gc.h']
else:
library_dir = ''
- libraries = ['gc', 'dl']
+ libraries = ['gc']
+ if platform.name != "freebsd":
+ libraries += ['dl']
includes=['gc/gc.h']
eci = ExternalCompilationInfo(
platform=platform,

View File

@ -1,28 +0,0 @@
#!/bin/sh
# $FreeBSD$
PREFIX=%%PREFIX%%
PYPY_NAMES="%%PYPY_NAMES%%"
PYPY_VER=%%PYPY_VER%%
if [ "$2" = "POST-INSTALL" ]
then
for name in $PYPY_NAMES
do
if [ ! -L $PREFIX/bin/$name ]
then
ln -s $name-$PYPY_VER $PREFIX/bin/$name
fi
done
elif [ "$2" = "POST-DEINSTALL" ] ; then
for name in $PYPY_NAMES
do
if [ -L $PREFIX/bin/$name ] && [ `readlink $PREFIX/bin/$name` = $name-$PYPY_VER ]
then
rm $PREFIX/bin/$name
fi
done
fi
exit 0

View File

@ -1,17 +0,0 @@
PyPy is a fast, compliant alternative implementation of the Python language
(2.7.1). It has several advantages and distinct features:
- Speed: thanks to its Just-in-Time compiler, Python programs often run faster
on PyPy.
- Memory usage: large, memory-hungry Python programs might end up taking less
space than they do in CPython.
- Compatibility: PyPy is highly compatible with existing python code. It
supports ctypes and can run popular python libraries like
twisted and django.
- Sandboxing: PyPy provides the ability to run untrusted code in a fully
secure way.
- Stackless: PyPy can be configured to run in stackless mode, providing
micro-threads for massive concurrency.
- As well as other features.
WWW: http://pypy.org

File diff suppressed because it is too large Load Diff

View File

@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= pypy
DISTVERSION= 2.4.0
DISTVERSION= 2.5.1
CATEGORIES= lang python
MASTER_SITES= https://bitbucket.org/pypy/pypy/get/ LOCAL/dbn/pypy
DISTNAME= release-${DISTVERSION}
@ -16,7 +16,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)
@ -43,7 +44,7 @@ USES= compiler:c11 gettext iconv tar:bzip2
MAKEFILE= ${FILESDIR}/Makefile
PKGINSTALL= ${WRKDIR}/pkg-install
PKGDEINSTALL= ${WRKDIR}/pkg-deinstall
WRKSRC= ${WRKDIR}/pypy-pypy-c6ad44ecf5d8
WRKSRC= ${WRKDIR}/pypy-pypy-e3d046c43451
PYPY_VER= ${DISTVERSION:C|([0-9])\.([0-9]).*|\1.\2|}
PYTHON_IMPL_VER= 2.7
@ -236,8 +237,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}
@ -254,7 +255,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}
@ -262,6 +263,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}
@ -270,10 +272,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' \

View File

@ -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.1.tar.bz2) = 32b33d407797f78d9453c81f2066c981501beddc17eaf8f7bcdc1798017bf03f
SIZE (pypy/release-2.5.1.tar.bz2) = 16509234

View File

@ -28,6 +28,7 @@ BUILDDIR= usession-release-${DISTVERSION}-0
${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}

View File

@ -1,19 +0,0 @@
--- lib_pypy/_sqlite3.py.bak 2013-12-15 23:45:52.000000000 +0200
+++ lib_pypy/_sqlite3.py 2013-12-16 12:07:57.000000000 +0200
@@ -269,11 +269,14 @@
_ffi.cdef("int sqlite3_enable_load_extension(sqlite3 *db, int onoff);")
if sys.platform.startswith('freebsd'):
+ import os
+ import os.path
+ _localbase = os.environ.get('LOCALBASE', '/usr/local')
_lib = _ffi.verify("""
#include <sqlite3.h>
""", libraries=['sqlite3'],
- include_dirs=['/usr/local/include'],
- library_dirs=['/usr/local/lib']
+ include_dirs=[os.path.join(_localbase, 'include')],
+ library_dirs=[os.path.join(_localbase, 'lib')]
)
else:
_lib = _ffi.verify("""

View File

@ -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'),

View File

@ -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
@ -953,6 +956,14 @@
%%PYPY_LIBDIR%%/encodings/uu_codec.pyc
%%PYPY_LIBDIR%%/encodings/zlib_codec.py
%%PYPY_LIBDIR%%/encodings/zlib_codec.pyc
%%PYPY_LIBDIR%%/ensurepip/__init__.py
%%PYPY_LIBDIR%%/ensurepip/__init__.pyc
%%PYPY_LIBDIR%%/ensurepip/__main__.py
%%PYPY_LIBDIR%%/ensurepip/__main__.pyc
%%PYPY_LIBDIR%%/ensurepip/_bundled/pip-1.5.6-py2.py3-none-any.whl
%%PYPY_LIBDIR%%/ensurepip/_bundled/setuptools-7.0-py2.py3-none-any.whl
%%PYPY_LIBDIR%%/ensurepip/_uninstall.py
%%PYPY_LIBDIR%%/ensurepip/_uninstall.pyc
%%PYPY_LIBDIR%%/filecmp.py
%%PYPY_LIBDIR%%/filecmp.pyc
%%PYPY_LIBDIR%%/fileinput.py
@ -1148,6 +1159,8 @@
%%PYPY_LIBDIR%%/idlelib/idle_test/test_calltips.pyc
%%PYPY_LIBDIR%%/idlelib/idle_test/test_config_name.py
%%PYPY_LIBDIR%%/idlelib/idle_test/test_config_name.pyc
%%PYPY_LIBDIR%%/idlelib/idle_test/test_configdialog.py
%%PYPY_LIBDIR%%/idlelib/idle_test/test_configdialog.pyc
%%PYPY_LIBDIR%%/idlelib/idle_test/test_delegator.py
%%PYPY_LIBDIR%%/idlelib/idle_test/test_delegator.pyc
%%PYPY_LIBDIR%%/idlelib/idle_test/test_formatparagraph.py
@ -1164,6 +1177,8 @@
%%PYPY_LIBDIR%%/idlelib/idle_test/test_pathbrowser.pyc
%%PYPY_LIBDIR%%/idlelib/idle_test/test_rstrip.py
%%PYPY_LIBDIR%%/idlelib/idle_test/test_rstrip.pyc
%%PYPY_LIBDIR%%/idlelib/idle_test/test_searchdialogbase.py
%%PYPY_LIBDIR%%/idlelib/idle_test/test_searchdialogbase.pyc
%%PYPY_LIBDIR%%/idlelib/idle_test/test_searchengine.py
%%PYPY_LIBDIR%%/idlelib/idle_test/test_searchengine.pyc
%%PYPY_LIBDIR%%/idlelib/idle_test/test_text.py
@ -1172,6 +1187,8 @@
%%PYPY_LIBDIR%%/idlelib/idle_test/test_textview.pyc
%%PYPY_LIBDIR%%/idlelib/idle_test/test_warning.py
%%PYPY_LIBDIR%%/idlelib/idle_test/test_warning.pyc
%%PYPY_LIBDIR%%/idlelib/idle_test/test_widgetredir.py
%%PYPY_LIBDIR%%/idlelib/idle_test/test_widgetredir.pyc
%%PYPY_LIBDIR%%/idlelib/idlever.py
%%PYPY_LIBDIR%%/idlelib/idlever.pyc
%%PYPY_LIBDIR%%/idlelib/keybindingDialog.py
@ -1275,6 +1292,8 @@
%%PYPY_LIBDIR%%/lib-tk/test/runtktests.pyc
%%PYPY_LIBDIR%%/lib-tk/test/test_tkinter/__init__.py
%%PYPY_LIBDIR%%/lib-tk/test/test_tkinter/__init__.pyc
%%PYPY_LIBDIR%%/lib-tk/test/test_tkinter/test_font.py
%%PYPY_LIBDIR%%/lib-tk/test/test_tkinter/test_font.pyc
%%PYPY_LIBDIR%%/lib-tk/test/test_tkinter/test_geometry_managers.py
%%PYPY_LIBDIR%%/lib-tk/test/test_tkinter/test_geometry_managers.pyc
%%PYPY_LIBDIR%%/lib-tk/test/test_tkinter/test_images.py
@ -1335,6 +1354,8 @@
%%PYPY_LIBDIR%%/lib2to3/fixes/__init__.pyc
%%PYPY_LIBDIR%%/lib2to3/fixes/fix_apply.py
%%PYPY_LIBDIR%%/lib2to3/fixes/fix_apply.pyc
%%PYPY_LIBDIR%%/lib2to3/fixes/fix_asserts.py
%%PYPY_LIBDIR%%/lib2to3/fixes/fix_asserts.pyc
%%PYPY_LIBDIR%%/lib2to3/fixes/fix_basestring.py
%%PYPY_LIBDIR%%/lib2to3/fixes/fix_basestring.pyc
%%PYPY_LIBDIR%%/lib2to3/fixes/fix_buffer.py
@ -1520,6 +1541,7 @@
%%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
%%PYPY_LIBDIR%%/lib_pypy/__pycache__/_cffi__gc44ee2dbx4b91c023.pypy-%%PYPY_VER%%.so
%%PYPY_LIBDIR%%/lib_pypy/_codecs_cn.py
%%PYPY_LIBDIR%%/lib_pypy/_codecs_cn.pyc
%%PYPY_LIBDIR%%/lib_pypy/_codecs_hk.py
@ -2493,6 +2515,8 @@
%%PYPY_LIBDIR%%/test/Sine-1000Hz-300ms.aif
%%PYPY_LIBDIR%%/test/__init__.py
%%PYPY_LIBDIR%%/test/__init__.pyc
%%PYPY_LIBDIR%%/test/_mock_backport.py
%%PYPY_LIBDIR%%/test/_mock_backport.pyc
%%PYPY_LIBDIR%%/test/audiodata/pluck-pcm16.aiff
%%PYPY_LIBDIR%%/test/audiodata/pluck-pcm16.au
%%PYPY_LIBDIR%%/test/audiodata/pluck-pcm16.wav
@ -2526,6 +2550,10 @@
%%PYPY_LIBDIR%%/test/badsyntax_nocaret.py
%%PYPY_LIBDIR%%/test/buffer_tests.py
%%PYPY_LIBDIR%%/test/buffer_tests.pyc
%%PYPY_LIBDIR%%/test/capath/4e1295a3.0
%%PYPY_LIBDIR%%/test/capath/5ed36f99.0
%%PYPY_LIBDIR%%/test/capath/6e88d7b8.0
%%PYPY_LIBDIR%%/test/capath/99d0fa06.0
%%PYPY_LIBDIR%%/test/cfgparser.1
%%PYPY_LIBDIR%%/test/check_soundcard.vbs
%%PYPY_LIBDIR%%/test/cjkencodings/big5-utf8.txt
@ -2734,6 +2762,7 @@
%%PYPY_LIBDIR%%/test/decimaltestdata/tointegral.decTest
%%PYPY_LIBDIR%%/test/decimaltestdata/tointegralx.decTest
%%PYPY_LIBDIR%%/test/decimaltestdata/xor.decTest
%%PYPY_LIBDIR%%/test/dh512.pem
%%PYPY_LIBDIR%%/test/doctest_aliases.py
%%PYPY_LIBDIR%%/test/doctest_aliases.pyc
%%PYPY_LIBDIR%%/test/double_const.py
@ -2766,7 +2795,11 @@
%%PYPY_LIBDIR%%/test/inspect_fodder.pyc
%%PYPY_LIBDIR%%/test/inspect_fodder2.py
%%PYPY_LIBDIR%%/test/inspect_fodder2.pyc
%%PYPY_LIBDIR%%/test/keycert.passwd.pem
%%PYPY_LIBDIR%%/test/keycert.pem
%%PYPY_LIBDIR%%/test/keycert2.pem
%%PYPY_LIBDIR%%/test/keycert3.pem
%%PYPY_LIBDIR%%/test/keycert4.pem
%%PYPY_LIBDIR%%/test/leakers/README.txt
%%PYPY_LIBDIR%%/test/leakers/__init__.py
%%PYPY_LIBDIR%%/test/leakers/__init__.pyc
@ -2782,6 +2815,8 @@
%%PYPY_LIBDIR%%/test/list_tests.pyc
%%PYPY_LIBDIR%%/test/lock_tests.py
%%PYPY_LIBDIR%%/test/lock_tests.pyc
%%PYPY_LIBDIR%%/test/make_ssl_certs.py
%%PYPY_LIBDIR%%/test/make_ssl_certs.pyc
%%PYPY_LIBDIR%%/test/mapping_tests.py
%%PYPY_LIBDIR%%/test/mapping_tests.pyc
%%PYPY_LIBDIR%%/test/math_testcases.txt
@ -2796,6 +2831,7 @@
%%PYPY_LIBDIR%%/test/pickletester.pyc
%%PYPY_LIBDIR%%/test/profilee.py
%%PYPY_LIBDIR%%/test/profilee.pyc
%%PYPY_LIBDIR%%/test/pycacert.pem
%%PYPY_LIBDIR%%/test/pyclbr_input.py
%%PYPY_LIBDIR%%/test/pyclbr_input.pyc
%%PYPY_LIBDIR%%/test/pydoc_mod.py
@ -2815,6 +2851,7 @@
%%PYPY_LIBDIR%%/test/relimport.pyc
%%PYPY_LIBDIR%%/test/reperf.py
%%PYPY_LIBDIR%%/test/reperf.pyc
%%PYPY_LIBDIR%%/test/revocation.crl
%%PYPY_LIBDIR%%/test/sample_doctest.py
%%PYPY_LIBDIR%%/test/sample_doctest.pyc
%%PYPY_LIBDIR%%/test/sample_doctest_no_docstrings.py
@ -2823,12 +2860,18 @@
%%PYPY_LIBDIR%%/test/sample_doctest_no_doctests.pyc
%%PYPY_LIBDIR%%/test/script_helper.py
%%PYPY_LIBDIR%%/test/script_helper.pyc
%%PYPY_LIBDIR%%/test/selfsigned_pythontestdotnet.pem
%%PYPY_LIBDIR%%/test/seq_tests.py
%%PYPY_LIBDIR%%/test/seq_tests.pyc
%%PYPY_LIBDIR%%/test/sgml_input.html
%%PYPY_LIBDIR%%/test/sha256.pem
%%PYPY_LIBDIR%%/test/sortperf.py
%%PYPY_LIBDIR%%/test/sortperf.pyc
%%PYPY_LIBDIR%%/test/ssl_cert.pem
%%PYPY_LIBDIR%%/test/ssl_key.passwd.pem
%%PYPY_LIBDIR%%/test/ssl_key.pem
%%PYPY_LIBDIR%%/test/ssl_servers.py
%%PYPY_LIBDIR%%/test/ssl_servers.pyc
%%PYPY_LIBDIR%%/test/string_tests.py
%%PYPY_LIBDIR%%/test/string_tests.pyc
%%PYPY_LIBDIR%%/test/subprocessdata/sigchild_ignore.py
@ -3072,6 +3115,8 @@
%%PYPY_LIBDIR%%/test/test_email_codecs.pyc
%%PYPY_LIBDIR%%/test/test_email_renamed.py
%%PYPY_LIBDIR%%/test/test_email_renamed.pyc
%%PYPY_LIBDIR%%/test/test_ensurepip.py
%%PYPY_LIBDIR%%/test/test_ensurepip.pyc
%%PYPY_LIBDIR%%/test/test_enumerate.py
%%PYPY_LIBDIR%%/test/test_enumerate.pyc
%%PYPY_LIBDIR%%/test/test_eof.py
@ -3834,3 +3879,4 @@
%%PYPY_LIBDIR%%/xmlrpclib.pyc
%%PYPY_LIBDIR%%/zipfile.py
%%PYPY_LIBDIR%%/zipfile.pyc
lib/libpypy-c.so