diff options
author | dbn <dbn@FreeBSD.org> | 2017-04-09 18:06:05 +0800 |
---|---|---|
committer | dbn <dbn@FreeBSD.org> | 2017-04-09 18:06:05 +0800 |
commit | fd506cae64a2fd431bc3c820b7f86546074cf2ad (patch) | |
tree | 3a7c37f99185cc36814dfa54b4c83a123b6725e7 /lang/pypy | |
parent | 98de65339954ee156eafe5d0c5a7d6e031ee3256 (diff) | |
download | freebsd-ports-gnome-fd506cae64a2fd431bc3c820b7f86546074cf2ad.tar.gz freebsd-ports-gnome-fd506cae64a2fd431bc3c820b7f86546074cf2ad.tar.zst freebsd-ports-gnome-fd506cae64a2fd431bc3c820b7f86546074cf2ad.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
Diffstat (limited to 'lang/pypy')
-rw-r--r-- | lang/pypy/Makefile | 17 | ||||
-rw-r--r-- | lang/pypy/bsd.pypy.cffi.mk | 2 | ||||
-rw-r--r-- | lang/pypy/distinfo | 6 | ||||
-rw-r--r-- | lang/pypy/files/patch-lib-python_2.7_distutils_sysconfig__pypy.py | 18 | ||||
-rw-r--r-- | lang/pypy/files/patch-rpython_translator_platform_posix.py | 13 | ||||
-rw-r--r-- | lang/pypy/pkg-plist | 12 |
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 |