Date: Sunday, February 20, 2022 @ 06:52:13 Author: svenstaro Revision: 1135218
archrelease: copy trunk to community-x86_64 Added: pypy3/repos/community-x86_64/PKGBUILD (from rev 1135217, pypy3/trunk/PKGBUILD) pypy3/repos/community-x86_64/a93dfb333afe.patch (from rev 1135217, pypy3/trunk/a93dfb333afe.patch) Deleted: pypy3/repos/community-x86_64/PKGBUILD pypy3/repos/community-x86_64/a93dfb333afe.patch --------------------+ PKGBUILD | 99 ++++++++++++++++++++++++++------------------------- a93dfb333afe.patch | 64 ++++++++++++++++---------------- 2 files changed, 83 insertions(+), 80 deletions(-) Deleted: PKGBUILD =================================================================== --- PKGBUILD 2022-02-20 06:52:05 UTC (rev 1135217) +++ PKGBUILD 2022-02-20 06:52:13 UTC (rev 1135218) @@ -1,48 +0,0 @@ -# Maintainer: Sven-Hendrik Haase <svenst...@gmail.com> - -pkgname=pypy3 -pkgver=7.3.7 -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=('pypy' 'sqlite' 'tk') -optdepends=('sqlite: sqlite module' - 'tk: tk module') -options=(!buildflags) -license=('MIT') -source=("https://downloads.python.org/pypy/pypy3.8-v${pkgver}-src.zip") -sha512sums=('dba59061ed5d8023d1b32aeaf5c99c85510cae9c142a35f19540bd6a957189f9e2e08b3f6ce068fb00af9130a70739d62a728adfd8a8f438160665ccff598598') - -build() { - cd pypy3.8-v${pkgver}-src/pypy/goal - - pypy ../../rpython/bin/rpython -Ojit --shared targetpypystandalone - - # Compile binary modules - PYTHONPATH=../.. ./pypy3-c ../../lib_pypy/pypy_tools/build_cffi_imports.py -} - -package() { - cd pypy3.8-v${pkgver}-src - - # Prepare installation - pypy pypy/tool/release/package.py --archive-name pypy --targetdir . - mkdir unpacked - tar xf pypy.tar.bz2 -C unpacked - - # Install pypy - mkdir -p "${pkgdir}"/usr/bin "${pkgdir}"/usr/lib "${pkgdir}"/opt/pypy3 - cp -r unpacked/pypy/* "${pkgdir}"/opt/pypy3 - - # Install symlinks - 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-x86_64/PKGBUILD (from rev 1135217, pypy3/trunk/PKGBUILD) =================================================================== --- PKGBUILD (rev 0) +++ PKGBUILD 2022-02-20 06:52:13 UTC (rev 1135218) @@ -0,0 +1,51 @@ +# Maintainer: Sven-Hendrik Haase <svenst...@gmail.com> + +pkgname=pypy3 +pkgver=7.3.8 +pkgrel=1 +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=('pypy' 'sqlite' 'tk') +optdepends=('sqlite: sqlite module' + 'tk: tk module') +options=(!buildflags) +license=('MIT') +source=("https://downloads.python.org/pypy/pypy3.8-v${pkgver}-src.zip") +sha512sums=('841b9c90b22c9314fea0e55d964b3eace2b9d474d9c2efdc64a9d6e955518a313c88c6c9a99ffa24be2a6ffef83c1c55f667a673517a7b213c73d6527125da44') + +build() { + cd pypy3.8-v${pkgver}-src/pypy/goal + + # For some reason, PyPy wants to use their vendored dependencies when detecting linux. + # Weird, we'll patch it out. + sed -i "s/, 'linux', 'linux2'//" targetpypystandalone.py + pypy ../../rpython/bin/rpython -Ojit --shared targetpypystandalone + + # Compile binary modules + PYTHONPATH=../.. ./pypy3-c ../../lib_pypy/pypy_tools/build_cffi_imports.py +} + +package() { + cd pypy3.8-v${pkgver}-src + + # Prepare installation + pypy pypy/tool/release/package.py --archive-name pypy --targetdir . + mkdir unpacked + tar xf pypy.tar.bz2 -C unpacked + + # Install pypy + mkdir -p "${pkgdir}"/usr/bin "${pkgdir}"/usr/lib "${pkgdir}"/opt/pypy3 + cp -r unpacked/pypy/* "${pkgdir}"/opt/pypy3 + + # Install symlinks + 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: Deleted: a93dfb333afe.patch =================================================================== --- a93dfb333afe.patch 2022-02-20 06:52:05 UTC (rev 1135217) +++ a93dfb333afe.patch 2022-02-20 06:52:13 UTC (rev 1135218) @@ -1,32 +0,0 @@ -# HG changeset patch -# User Matti Picus <matti.pi...@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": Copied: pypy3/repos/community-x86_64/a93dfb333afe.patch (from rev 1135217, pypy3/trunk/a93dfb333afe.patch) =================================================================== --- a93dfb333afe.patch (rev 0) +++ a93dfb333afe.patch 2022-02-20 06:52:13 UTC (rev 1135218) @@ -0,0 +1,32 @@ +# HG changeset patch +# User Matti Picus <matti.pi...@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":