[arch-commits] Commit in pypy3/repos (3 files)

Felix Yan felixonmars at archlinux.org
Wed Apr 8 23:31:45 UTC 2020


    Date: Wednesday, April 8, 2020 @ 23:31:45
  Author: felixonmars
Revision: 612841

archrelease: copy trunk to community-staging-x86_64

Added:
  pypy3/repos/community-staging-x86_64/
  pypy3/repos/community-staging-x86_64/PKGBUILD
    (from rev 612840, pypy3/trunk/PKGBUILD)
  pypy3/repos/community-staging-x86_64/a93dfb333afe.patch
    (from rev 612840, pypy3/trunk/a93dfb333afe.patch)

--------------------+
 PKGBUILD           |   52 +++++++++++++++++++++++++++++++++++++++++++++++++++
 a93dfb333afe.patch |   32 +++++++++++++++++++++++++++++++
 2 files changed, 84 insertions(+)

Copied: pypy3/repos/community-staging-x86_64/PKGBUILD (from rev 612840, pypy3/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD	                        (rev 0)
+++ community-staging-x86_64/PKGBUILD	2020-04-08 23:31:45 UTC (rev 612841)
@@ -0,0 +1,52 @@
+# Maintainer: Sven-Hendrik Haase <svenstaro at gmail.com>
+
+pkgname=pypy3
+pkgver=7.3.0
+pkgrel=2
+pkgdesc="A Python3 implementation written in Python, JIT enabled"
+url="https://pypy.org"
+arch=('x86_64')
+depends=('expat' 'bzip2' 'gdbm' 'openssl' 'libffi' 'zlib' 'ncurses')
+makedepends=('python2' 'sqlite' 'tk' 'python2-pycparser')
+optdepends=('sqlite: sqlite module'
+            'tk: tk module')
+options=(!buildflags)
+license=('MIT')
+source=("https://bitbucket.org/pypy/pypy/downloads/pypy3.6-v${pkgver}-src.tar.bz2")
+sha512sums=('313a4254262dd8d8b995a50bddbc360cfb67add0818e51a3e9ce25bda6a9b639e9fea8efe7da6adda76dff0a86a364544a13faa516e51b9ea6c25ec99223b435')
+
+build() {
+  cd pypy3.6-v${pkgver}-src/pypy/goal
+
+  python2 ../../rpython/bin/rpython -Ojit --shared targetpypystandalone
+
+  # Compile binary modules
+  PYTHONPATH=../.. ./pypy3-c ../tool/build_cffi_imports.py
+}
+
+package() {
+  cd pypy3.6-v${pkgver}-src
+
+  # Prepare installation
+  python2 pypy/tool/release/package.py --archive-name pypy --targetdir .
+  mkdir unpacked
+  tar xf pypy.tar.bz2 -C unpacked
+
+  # Install pypy
+  cd unpacked
+  install -Dm755 pypy/bin/pypy3 "${pkgdir}"/opt/pypy3/bin/pypy3
+  install -Dm755 pypy/bin/libpypy3-c.so "${pkgdir}"/opt/pypy3/bin/libpypy3-c.so
+  cp -r pypy/include pypy/lib_pypy pypy/lib-python pypy/site-packages "${pkgdir}"/opt/pypy3
+  cd ..
+
+  # Install symlinks
+  mkdir -p "${pkgdir}"/usr/bin "${pkgdir}"/usr/lib
+  ln -s /opt/pypy3/bin/pypy3 "${pkgdir}"/usr/bin/pypy3
+  ln -s /opt/pypy3/bin/libpypy3-c.so "${pkgdir}"/usr/lib/libpypy3-c.so
+
+  # Install misc stuff
+  install -Dm644 README.rst "${pkgdir}"/opt/pypy3/README.rst
+  install -Dm644 LICENSE "${pkgdir}"/opt/pypy3/LICENSE
+  install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/pypy3/LICENSE
+}
+# vim: ts=2 sw=2 et:

Copied: pypy3/repos/community-staging-x86_64/a93dfb333afe.patch (from rev 612840, pypy3/trunk/a93dfb333afe.patch)
===================================================================
--- community-staging-x86_64/a93dfb333afe.patch	                        (rev 0)
+++ community-staging-x86_64/a93dfb333afe.patch	2020-04-08 23:31:45 UTC (rev 612841)
@@ -0,0 +1,32 @@
+# HG changeset patch
+# User Matti Picus <matti.picus at gmail.com>
+# Date 1554034536 -10800
+# Node ID a93dfb333afe34ac02b15e997749cd3902ed96c0
+# Parent  9f383b2e30c6ac084fe95fd781abfc2fceffdc9f
+preserve order on extra effects (sets are not ordered on cpython2)
+
+diff --git a/rpython/jit/codewriter/effectinfo.py b/rpython/jit/codewriter/effectinfo.py
+--- a/rpython/jit/codewriter/effectinfo.py
++++ b/rpython/jit/codewriter/effectinfo.py
+@@ -326,14 +326,17 @@
+         # a read or a write to an interiorfield, inside an array of
+         # structs, is additionally recorded as a read or write of
+         # the array itself
+-        extraef = set()
++        extraef = list()
+         for tup in effects:
+             if tup[0] == "interiorfield" or tup[0] == "readinteriorfield":
+                 T = deref(tup[1])
+                 if isinstance(T, lltype.Array) and consider_array(T):
+-                    extraef.add((tup[0].replace("interiorfield", "array"),
+-                                 tup[1]))
+-        effects |= extraef
++                    val = (tup[0].replace("interiorfield", "array"),
++                                 tup[1])
++                    if val not in effects:
++                        extraef.append(val)
++        # preserve order in the added effects issue bitbucket #2984
++        effects = tuple(effects) + tuple(extraef)
+ 
+         for tup in effects:
+             if tup[0] == "struct":



More information about the arch-commits mailing list