aboutsummaryrefslogtreecommitdiff
path: root/lang/pypy
diff options
context:
space:
mode:
authorDavid Naylor <dbn@FreeBSD.org>2017-04-09 10:06:05 +0000
committerDavid Naylor <dbn@FreeBSD.org>2017-04-09 10:06:05 +0000
commit35443a2327cfbc89c4870b5ffd89b81e19fd0d54 (patch)
tree3a7c37f99185cc36814dfa54b4c83a123b6725e7 /lang/pypy
parente20777a2c77172b2a0a4506a4acc3ec8e149f346 (diff)
downloadports-35443a2327cfbc89c4870b5ffd89b81e19fd0d54.tar.gz
ports-35443a2327cfbc89c4870b5ffd89b81e19fd0d54.zip
lang/pypy(3): update to 5.7.1
- add MIT/PSFL multi license - pass LDSHARED to make environment (work-around assumption around 'gcc') - add new dependency: pycparser (only required if python is translating) - removed patches merged upstream - add patch to remove '-flto' from cflags (base ld doesn't support LTO) - pypy: - add patch to fix bad assumption about 'gcc' (instead of 'cc') - pypy3: - update BUILD_WRKSRC and PYPY_CFFI_VER - only supports AMD64 ChangeLog: - PyPy2 updated to Python 2.7.13 - PyPy3 updated to Python 3.5.3 (beta): - Not all tests pass - Asyncio does work - PyPy2 supports C-extensions: NumPy, Cython and Pandas (amongst others) - CFFI updated to 1.10 - Many bug-fixes
Notes
Notes: svn path=/head/; revision=438096
Diffstat (limited to 'lang/pypy')
-rw-r--r--lang/pypy/Makefile17
-rw-r--r--lang/pypy/bsd.pypy.cffi.mk2
-rw-r--r--lang/pypy/distinfo6
-rw-r--r--lang/pypy/files/patch-lib-python_2.7_distutils_sysconfig__pypy.py18
-rw-r--r--lang/pypy/files/patch-rpython_translator_platform_posix.py13
-rw-r--r--lang/pypy/pkg-plist12
6 files changed, 54 insertions, 14 deletions
diff --git a/lang/pypy/Makefile b/lang/pypy/Makefile
index aa5c5cec31b4..9e1f831a4024 100644
--- a/lang/pypy/Makefile
+++ b/lang/pypy/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME?= pypy
-DISTVERSION?= 5.6.0 # Also update bsd.pypy.cffi.mk
+DISTVERSION?= 5.7.1 # Also update bsd.pypy.cffi.mk
CATEGORIES= lang python
MASTER_SITES= https://bitbucket.org/pypy/pypy/downloads/ http://buildbot.pypy.org/mirror/
DISTNAME?= ${PORTNAME}2-v${PORTVERSION}-src
@@ -10,6 +10,10 @@ DISTNAME?= ${PORTNAME}2-v${PORTVERSION}-src
MAINTAINER= python@FreeBSD.org
COMMENT= Fast, compliant implementation of the Python language
+LICENSE= MIT PSFL
+LICENSE_COMB= multi
+LICENSE_FILE_MIT= ${WRKSRC}/LICENSE
+
LIB_DEPENDS= libexpat.so:textproc/expat2 \
libffi.so:devel/libffi
TEST_DEPENDS= ${LOCALBASE}/${PYPY_DIR}/lib_pypy/_gdbm_cffi.${PYPY_CFFI_VER}.so:databases/pypy-gdbm \
@@ -37,9 +41,9 @@ OPTIONS_DEFAULT= PYTHON
OPTIONS_SLAVE= PYTHON
.endif
-ALL_TARGET= pypy-c
+ALL_TARGET= ${PORTNAME}-c
BUILD_WRKSRC?= ${WRKDIR}/build/usession-release-pypy2.7-v${PORTVERSION}-0/testing_1
-MAKE_ENV+= PYPY_LOCALBASE=${LOCALBASE}
+MAKE_ENV+= PYPY_LOCALBASE=${LOCALBASE} LDSHARED="${CC} -shared"
PACKAGE_ARGS?= --without-gdbm --without-sqlite3 --without-tk
USE_LDCONFIG= ${PREFIX}/${PYPY_DIR}/bin
USES= gettext-runtime gmake ssl tar:bzip2
@@ -50,6 +54,7 @@ PYPY_MINMEM_BUILD_DEPENDS= pypy:lang/pypy
.endif
PYPY_VARS= PYTHON_CMD=${LOCALBASE}/bin/pypy
PYPY_MINMEM_VARS= PYTHON_CMD="${SETENV} PYPY_GC_MAX_DELTA=200MB ${LOCALBASE}/bin/pypy --jit loop_longevity=300"
+PYTHON_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pycparser>=2.10:devel/py-pycparser
PYTHON_USES= python:2,build
DESCR= ${.CURDIR}/pkg-descr
@@ -78,10 +83,10 @@ pre-build:
fi
post-build:
- ${CP} ${BUILD_WRKSRC}/pypy-c ${BUILD_WRKSRC}/libpypy-c.so ${WRKSRC}/pypy/goal/
+ ${CP} ${BUILD_WRKSRC}/${PORTNAME}-c ${BUILD_WRKSRC}/lib${PORTNAME}-c.so ${WRKSRC}/pypy/goal/
do-install:
- ${SETENV} TMPDIR=${WRKDIR}/build \
+ ${SETENV} ${MAKE_ENV} TMPDIR=${WRKDIR}/build \
${PYTHON_CMD} ${WRKSRC}/pypy/tool/release/package.py --builddir ${WRKDIR}/build --archive-name ${PYPY_DIR} \
${PACKAGE_ARGS}
${EXTRACT_CMD} -C ${STAGEDIR}${PREFIX} -xf ${WRKDIR}/build/${PYPY_DIR}.tar.bz2
@@ -106,7 +111,7 @@ do-test:
${SETENV} ${MAKE_ENV} TMPDIR=${WRKDIR}/build PYTHONPATH=${WRKSRC} \
${WRKSRC}/pypy/goal/pypy-c regrtest.py -vvu all)
-pkg-plist: build
+pkg-plist: stage
${TAR} -tf ${WRKDIR}/build/${PYPY_DIR}.tar.bz2 > ${WRKDIR}/.plist-files-gen
${REINPLACE_CMD} -e 's|^${PYPY_DIR}|%%PYPY_DIR%%|g' \
-e 's|_${PYPY_BITS}_|_%%PYPY_BITS%%_|g' \
diff --git a/lang/pypy/bsd.pypy.cffi.mk b/lang/pypy/bsd.pypy.cffi.mk
index 612f97168d65..8cd499b72ad0 100644
--- a/lang/pypy/bsd.pypy.cffi.mk
+++ b/lang/pypy/bsd.pypy.cffi.mk
@@ -10,7 +10,7 @@ PLIST_FILES= %%PYPY_DIR%%/lib_pypy/${CFFI_MODULE}_cffi.%%PYPY_CFFI_VER%%.so
CFFI_MODULE?= _${PORTNAME}
-PYTHON_PORTVERSION?= 5.6.0
+PYTHON_PORTVERSION?= 5.7.1
PYTHON_PKGNAMEPREFIX= pypy-
PYTHON_CMD= ${LOCALBASE}/bin/pypy
diff --git a/lang/pypy/distinfo b/lang/pypy/distinfo
index c077fd1571e0..aa2853e55a50 100644
--- a/lang/pypy/distinfo
+++ b/lang/pypy/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1479534904
-SHA256 (pypy2-v5.6.0-src.tar.bz2) = 7411448045f77eb9e087afdce66fe7eafda1876c9e17aad88cf891f762b608b0
-SIZE (pypy2-v5.6.0-src.tar.bz2) = 18388539
+TIMESTAMP = 1491510301
+SHA256 (pypy2-v5.7.1-src.tar.bz2) = d01bee43c6df79f7bbc1149bb3e85f489491fb2358a6a1f9a7f0d6e07715832f
+SIZE (pypy2-v5.7.1-src.tar.bz2) = 18940413
diff --git a/lang/pypy/files/patch-lib-python_2.7_distutils_sysconfig__pypy.py b/lang/pypy/files/patch-lib-python_2.7_distutils_sysconfig__pypy.py
new file mode 100644
index 000000000000..2f228be3a635
--- /dev/null
+++ b/lang/pypy/files/patch-lib-python_2.7_distutils_sysconfig__pypy.py
@@ -0,0 +1,18 @@
+--- lib-python/2.7/distutils/sysconfig_pypy.py.orig 2017-04-06 19:44:56 UTC
++++ lib-python/2.7/distutils/sysconfig_pypy.py
+@@ -61,12 +61,12 @@ _config_vars = None
+ def _init_posix():
+ """Initialize the module as appropriate for POSIX systems."""
+ g = {}
+- g['CC'] = "gcc -pthread"
+- g['CXX'] = "g++ -pthread"
++ g['CC'] = "cc -pthread"
++ g['CXX'] = "c++ -pthread"
+ g['OPT'] = "-DNDEBUG -O2"
+ g['CFLAGS'] = "-DNDEBUG -O2"
+ g['CCSHARED'] = "-fPIC"
+- g['LDSHARED'] = "gcc -pthread -shared"
++ g['LDSHARED'] = "cc -pthread -shared"
+ g['SO'] = [s[0] for s in imp.get_suffixes() if s[2] == imp.C_EXTENSION][0]
+ g['AR'] = "ar"
+ g['ARFLAGS'] = "rc"
diff --git a/lang/pypy/files/patch-rpython_translator_platform_posix.py b/lang/pypy/files/patch-rpython_translator_platform_posix.py
new file mode 100644
index 000000000000..61c82e22d954
--- /dev/null
+++ b/lang/pypy/files/patch-rpython_translator_platform_posix.py
@@ -0,0 +1,13 @@
+FreeBSD's base ld(1) does not currently support plugins and is not compatible
+with clang's link-time optimisation.
+--- rpython/translator/platform/posix.py.orig 2017-03-19 19:55:48 UTC
++++ rpython/translator/platform/posix.py
+@@ -132,7 +132,7 @@ class BasePosix(Platform):
+
+ # xxx check which compilers accept this option or not
+ if not config or config.translation.gcrootfinder != 'asmgcc':
+- cflags = ('-flto',) + cflags
++ pass
+
+ m = GnuMakefile(path)
+ m.exe_name = path.join(exe_name.basename)
diff --git a/lang/pypy/pkg-plist b/lang/pypy/pkg-plist
index 0c82ef3c1e79..cc6de33a418b 100644
--- a/lang/pypy/pkg-plist
+++ b/lang/pypy/pkg-plist
@@ -22,6 +22,8 @@ bin/pypy
%%PYPY_DIR%%/include/code.h
%%PYPY_DIR%%/include/compile.h
%%PYPY_DIR%%/include/complexobject.h
+%%PYPY_DIR%%/include/cpyext_object.h
+%%PYPY_DIR%%/include/cpyext_unicodeobject.h
%%PYPY_DIR%%/include/datetime.h
%%PYPY_DIR%%/include/descrobject.h
%%PYPY_DIR%%/include/dictobject.h
@@ -548,8 +550,8 @@ bin/pypy
%%PYPY_DIR%%/lib-python/2.7/encodings/zlib_codec.py
%%PYPY_DIR%%/lib-python/2.7/ensurepip/__init__.py
%%PYPY_DIR%%/lib-python/2.7/ensurepip/__main__.py
-%%PYPY_DIR%%/lib-python/2.7/ensurepip/_bundled/pip-8.1.1-py2.py3-none-any.whl
-%%PYPY_DIR%%/lib-python/2.7/ensurepip/_bundled/setuptools-20.10.1-py2.py3-none-any.whl
+%%PYPY_DIR%%/lib-python/2.7/ensurepip/_bundled/pip-9.0.1-py2.py3-none-any.whl
+%%PYPY_DIR%%/lib-python/2.7/ensurepip/_bundled/setuptools-28.8.0-py2.py3-none-any.whl
%%PYPY_DIR%%/lib-python/2.7/ensurepip/_uninstall.py
%%PYPY_DIR%%/lib-python/2.7/filecmp.py
%%PYPY_DIR%%/lib-python/2.7/fileinput.py
@@ -769,7 +771,6 @@ bin/pypy
%%PYPY_DIR%%/lib-python/2.7/lib2to3/fixes/fix_asserts.py
%%PYPY_DIR%%/lib-python/2.7/lib2to3/fixes/fix_basestring.py
%%PYPY_DIR%%/lib-python/2.7/lib2to3/fixes/fix_buffer.py
-%%PYPY_DIR%%/lib-python/2.7/lib2to3/fixes/fix_callable.py
%%PYPY_DIR%%/lib-python/2.7/lib2to3/fixes/fix_dict.py
%%PYPY_DIR%%/lib-python/2.7/lib2to3/fixes/fix_except.py
%%PYPY_DIR%%/lib-python/2.7/lib2to3/fixes/fix_exec.py
@@ -1234,6 +1235,7 @@ bin/pypy
%%PYPY_DIR%%/lib-python/2.7/test/Sine-1000Hz-300ms.aif
%%PYPY_DIR%%/lib-python/2.7/test/__init__.py
%%PYPY_DIR%%/lib-python/2.7/test/_mock_backport.py
+%%PYPY_DIR%%/lib-python/2.7/test/allsans.pem
%%PYPY_DIR%%/lib-python/2.7/test/audiodata/pluck-pcm16.aiff
%%PYPY_DIR%%/lib-python/2.7/test/audiodata/pluck-pcm16.au
%%PYPY_DIR%%/lib-python/2.7/test/audiodata/pluck-pcm16.wav
@@ -1270,7 +1272,6 @@ bin/pypy
%%PYPY_DIR%%/lib-python/2.7/test/capath/99d0fa06.0
%%PYPY_DIR%%/lib-python/2.7/test/capath/ce7b8643.0
%%PYPY_DIR%%/lib-python/2.7/test/cfgparser.1
-%%PYPY_DIR%%/lib-python/2.7/test/check_soundcard.vbs
%%PYPY_DIR%%/lib-python/2.7/test/cjkencodings/big5-utf8.txt
%%PYPY_DIR%%/lib-python/2.7/test/cjkencodings/big5.txt
%%PYPY_DIR%%/lib-python/2.7/test/cjkencodings/big5hkscs-utf8.txt
@@ -1536,6 +1537,7 @@ bin/pypy
%%PYPY_DIR%%/lib-python/2.7/test/ssl_key.passwd.pem
%%PYPY_DIR%%/lib-python/2.7/test/ssl_key.pem
%%PYPY_DIR%%/lib-python/2.7/test/ssl_servers.py
+%%PYPY_DIR%%/lib-python/2.7/test/ssltests.py
%%PYPY_DIR%%/lib-python/2.7/test/string_tests.py
%%PYPY_DIR%%/lib-python/2.7/test/subprocessdata/sigchild_ignore.py
%%PYPY_DIR%%/lib-python/2.7/test/symlink_support.py
@@ -2102,6 +2104,7 @@ bin/pypy
%%PYPY_DIR%%/lib_pypy/_sqlite3_build.py
%%PYPY_DIR%%/lib_pypy/_structseq.py
%%PYPY_DIR%%/lib_pypy/_subprocess.py
+%%PYPY_DIR%%/lib_pypy/_sysconfigdata.py
%%PYPY_DIR%%/lib_pypy/_syslog_build.py
%%PYPY_DIR%%/lib_pypy/_syslog_cffi.%%PYPY_CFFI_VER%%.so
%%PYPY_DIR%%/lib_pypy/_testcapi.py
@@ -2147,6 +2150,7 @@ bin/pypy
%%PYPY_DIR%%/lib_pypy/cffi/cffi_opcode.py
%%PYPY_DIR%%/lib_pypy/cffi/commontypes.py
%%PYPY_DIR%%/lib_pypy/cffi/cparser.py
+%%PYPY_DIR%%/lib_pypy/cffi/error.py
%%PYPY_DIR%%/lib_pypy/cffi/ffiplatform.py
%%PYPY_DIR%%/lib_pypy/cffi/gc_weakref.py
%%PYPY_DIR%%/lib_pypy/cffi/lock.py