<pre style='margin:0'>
Dan Villiom Podlaski Christiansen (danchr) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/fa23ceac099389a40365c369bb58441867cf9a79">https://github.com/macports/macports-ports/commit/fa23ceac099389a40365c369bb58441867cf9a79</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new fa23cea pypy: bump to 5.8.0 + overhaul and add pypy3 subport
</span>fa23cea is described below
<span style='display:block; white-space:pre;color:#808000;'>commit fa23ceac099389a40365c369bb58441867cf9a79
</span>Author: Dan Villiom Podlaski Christiansen <danchr@macports.org>
AuthorDate: Mon Jun 12 14:33:02 2017 +0200
<span style='display:block; white-space:pre;color:#404040;'> pypy: bump to 5.8.0 + overhaul and add pypy3 subport
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> * use the 'package.py' script in the destroot phase
</span><span style='display:block; white-space:pre;color:#404040;'> * add a subport for the pypy3 beta
</span><span style='display:block; white-space:pre;color:#404040;'> * refactor a bit so that the port & subport share description
</span><span style='display:block; white-space:pre;color:#404040;'> * modify the description to more closely match pypy.org
</span><span style='display:block; white-space:pre;color:#404040;'> * fix upgrading in trace mode -- where the pypy binary exists, but
</span><span style='display:block; white-space:pre;color:#404040;'> doesn't work
</span><span style='display:block; white-space:pre;color:#404040;'> * use bitbucket port group
</span>---
lang/pypy/Portfile | 85 +++++++++++++++++++++++++++++++++++-------------------
1 file changed, 55 insertions(+), 30 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/pypy/Portfile b/lang/pypy/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 81e852b..7be7a49 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/pypy/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/pypy/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,26 +1,23 @@
</span> # -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
PortSystem 1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup bitbucket 1.0
</span>
name pypy
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version 5.7.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bitbucket.setup pypy pypy 5.8.0 {release-pypy${python.branch}-v}
</span> categories lang python devel
license MIT PSF
maintainers {jmr @jmroot} openmaintainer
<span style='display:block; white-space:pre;background:#ffe0e0;'>-description implementation of Python in Python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-long_description \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- PyPy is both a reimplementation of Python in Python, and a framework for \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- implementing interpreters and virtual machines for programming languages, \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- especially dynamic languages.
</span>
platforms darwin
homepage http://pypy.org/
<span style='display:block; white-space:pre;background:#ffe0e0;'>-master_sites https://bitbucket.org/pypy/pypy/downloads/
</span> use_bzip2 yes
<span style='display:block; white-space:pre;background:#ffe0e0;'>-distname ${name}2-v${version}-src
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums rmd160 842b110389b57bcb794dde75faade5307316903f \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 d01bee43c6df79f7bbc1149bb3e85f489491fb2358a6a1f9a7f0d6e07715832f
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distname pypy2-v${version}-src
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bitbucket.tarball_from \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ downloads
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 02d055ecabd3bc8e8dac6d43db0a170549cadfb6 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 504c2d522595baf8775ae1045a217a2b120732537861d31b889d47c340b58bd5
</span>
depends_build port:pkgconfig
depends_lib port:libffi \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -28,6 +25,7 @@ depends_lib port:libffi \
</span> port:bzip2 \
path:lib/libssl.dylib:openssl \
port:gettext \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:gdbm \
</span> port:ncurses
patchfiles darwin.py.diff \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -35,16 +33,49 @@ patchfiles darwin.py.diff \
</span> ffiplatform.py.diff \
paths.diff
<span style='display:block; white-space:pre;background:#e0ffe0;'>+subport pypy3 {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ version "${version}-beta"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set python.branch 3.5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set python.libdir 3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:xz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_build-replace port:pypy-bootstrap port:pypy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ distname pypy3-v${version}-src
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ checksums rmd160 4d251e8d1b76f99d4d51ef6e231c3e98e2cce782 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 9d090127335c3c0fd2b14c8835bf91752e62756e55ea06aad3353f24a6854223
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set pypy_c_name pypy3-c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {$subport == ${name}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set python.branch 2.7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set python.libdir 2.7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set pypy_c_name pypy-c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description A fast interpreter for Python ${python.branch}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PyPy is a replacement for CPython ${python.branch}. The main reason to use it \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ instead of CPython is speed, as it runs generally faster.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> post-patch {
reinplace "s|__PREFIX__|${prefix}|" ${worksrcpath}/lib_pypy/cffi/ffiplatform.py \
${worksrcpath}/pypy/tool/cpyext/extbuild.py \
${worksrcpath}/rpython/translator/platform/distutils_platform.py
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # delete VIM swap files accidentally included with pypy3 up to and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # including 5.8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ exec find ${worksrcpath} -name "*.swn" -delete
</span> }
use_configure no
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# use pypy to build if it's already installed
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {[file executable ${prefix}/lib/pypy/pypy]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# use pypy to build if it's already installed, and we're not in trace mode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {![tbool ports_trace] && [file executable ${prefix}/lib/pypy/pypy]} {
</span> build.cmd ${prefix}/lib/pypy/pypy
} else {
if {${os.platform} eq "darwin" && ${os.arch} eq "i386" && ![catch {sysctl hw.cpu64bit_capable} is64bit] && $is64bit == 1} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -93,6 +124,14 @@ build.args --batch --verbose \
</span> build.target ../../rpython/bin/rpython
build.post_args targetpypystandalone
<span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot.env ${build.env}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot.dir ${worksrcpath}/pypy/tool/release
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot.args --builddir ${destroot}${prefix}/lib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --archive-name ${subport} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --without-tk
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot.target package.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot.post_args
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # JIT is not available on powerpc at present
if {${os.arch} ne "i386"} {
build.args-delete --opt=jit
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -102,23 +141,13 @@ if {${os.arch} ne "i386"} {
</span> post-build {
# some modules have to be compiled in an extra step
foreach script {_audioop_build.py _curses_build.py _pwdgrp_build.py _sqlite3_build.py _syslog_build.py} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- system -W ${worksrcpath}/lib_pypy "${build.dir}/pypy-c $script"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system -W ${worksrcpath}/lib_pypy "${build.dir}/${pypy_c_name} $script"
</span> }
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-destroot {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -d ${destroot}${prefix}/lib/${name}/lib-python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- copy ${worksrcpath}/lib-python/2.7 ${destroot}${prefix}/lib/${name}/lib-python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- copy ${worksrcpath}/lib_pypy ${worksrcpath}/include \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${destroot}${prefix}/lib/${name}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # library search paths changed quite inconveniently such that the binary
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # won't run if it's in ${prefix}/bin
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -m 755 ${build.dir}/pypy-c ${destroot}${prefix}/lib/${name}/pypy
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall ${build.dir}/libpypy-c.dylib ${destroot}${prefix}/lib/${name}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ln -s ${prefix}/lib/${name}/pypy ${destroot}${prefix}/bin
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -d ${destroot}${prefix}/share/doc/${name}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -W ${worksrcpath} -m 644 README.rst LICENSE ${destroot}${prefix}/share/doc/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file delete ${destroot}${prefix}/lib/${subport}.tar.bz2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ln -s ../lib/${subport}/bin/${subport} ${destroot}${prefix}/bin
</span> }
variant opt1 description {use optimization level 1 for faster build (but slower execution)} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -126,7 +155,3 @@ variant opt1 description {use optimization level 1 for faster build (but slower
</span> build.args-delete --opt=3 --opt=jit
build.args-append --opt=1
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.type regex
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.url http://pypy.org/download.html
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.regex pypy2-v(\[0-9.\]+)-src${extract.suffix}
</span></pre><pre style='margin:0'>
</pre>