这是indexloc提供的服务,不要输入任何密码
Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions packages/pypy3/0005-fix-unavailable-functions.patch
Original file line number Diff line number Diff line change
Expand Up @@ -155,19 +155,21 @@

--- a/rpython/rlib/rvmprof/cintf.py
+++ b/rpython/rlib/rvmprof/cintf.py
@@ -18,16 +18,16 @@
@@ -18,18 +18,18 @@
class VMProfPlatformUnsupported(Exception):
pass

-# vmprof works only on x86 for now
+# vmprof cannot compile on termux due to no dlinfo on Bionic Libc
IS_SUPPORTED = False
NATIVE_PROFILING_SUPPORTED = False
-if sys.platform in ('darwin', 'linux', 'linux2') or sys.platform.startswith('freebsd'):
- try:
- proc = detect_cpu.autodetect()
- IS_SUPPORTED = (proc.startswith('x86')
- or proc == 'aarch64'
- or proc == 'riscv64')
- NATIVE_PROFILING_SUPPORTED = proc.startswith('x86')
- except detect_cpu.ProcessorAutodetectError:
- print("PROCESSOR NOT DETECTED, SKIPPING VMPROF")
+# if sys.platform in ('darwin', 'linux', 'linux2') or sys.platform.startswith('freebsd'):
Expand All @@ -176,6 +178,7 @@
+# IS_SUPPORTED = (proc.startswith('x86')
+# or proc == 'aarch64'
+# or proc == 'riscv64')
+# NATIVE_PROFILING_SUPPORTED = proc.startswith('x86')
+# except detect_cpu.ProcessorAutodetectError:
+# print("PROCESSOR NOT DETECTED, SKIPPING VMPROF")

Expand Down
14 changes: 14 additions & 0 deletions packages/pypy3/0011-arm-old-plats.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
https://github.com/pypy/pypy/commit/8708da3ee0783873a8897654b56ac05d7e9b688d

--- a/rpython/translator/c/src/precommondefs.h
+++ b/rpython/translator/c/src/precommondefs.h
@@ -11,7 +11,7 @@
/* Define on Darwin to activate all library features */
#define _DARWIN_C_SOURCE 1
/* These must be set to 64 to enable large file support on 32-bit systems. */
-#if defined(i386) || defined(__i386__) || defined(__i386) || defined(_M_IX86)
+#if defined(i386) || defined(__i386__) || defined(__i386) || defined(_M_IX86) || defined(__arm__)
#define _FILE_OFFSET_BITS 64
#define _LARGEFILE_SOURCE 1
#endif

6 changes: 3 additions & 3 deletions packages/pypy3/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@ TERMUX_PKG_HOMEPAGE=https://pypy.org
TERMUX_PKG_DESCRIPTION="A fast, compliant alternative implementation of Python 3"
TERMUX_PKG_LICENSE="MIT"
TERMUX_PKG_MAINTAINER="@licy183"
_MAJOR_VERSION=3.10
TERMUX_PKG_VERSION=7.3.17
_MAJOR_VERSION=3.11
Copy link
Member

@robertkirkman robertkirkman Jul 28, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have three questions, which I will try to explain as concisely as possible to avoid making a message too long:

  • I have a different implementation of 9997-do-not-cffi-dlopen-when-compiling-sqlite3.diff that might be more reliable long-term because my way does not hardcode any reference to "sqlite", and could therefore theoretically work if the same error would ever happen to any other thing that isn't sqlite.

    • Question: Would you like to discuss the possibility of using that, or do you prefer the current 9997-do-not-cffi-dlopen-when-compiling-sqlite3.diff?
  • Earlier today, you changed [ "$TERMUX_PACKAGE_FORMAT" != "pacman" ] in build.sh to [ "$TERMUX_PACKAGE_FORMAT" = "debian" ], but that is still present in pypy3-tests.subpackage.sh and pypy3-tkinter.subpackage.sh

    • Question: Did you want to change that throughout the package, or is it fine as-is?
  • You have increased the $_MAJOR_VERSION, but you did not add anything to the postinst to clean up the $PREFIX/opt/pypy3/lib/pypy3.9 folder after it is upgraded to the package that instead contains $PREFIX/opt/pypy3/lib/pypy3.10 or $PREFIX/opt/pypy3/lib/pypy3.11, so this folder remains after the pypy3 package is upgraded to the newer releases. I have an implementation of a postinst script for pypy3 that can successfully clean up the __pycache__ folders of previously-installed pypy3 packages of all$_MAJOR_VERSIONs.

    • Question: Would you like to discuss the possibility of using that, or are you fine with the way it is currently?
Image

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd prefer 9997-do-not-cffi-dlopen-when-compiling-sqlite3.diff, but you can commit your changes of other parts.

Copy link
Member

@robertkirkman robertkirkman Jul 28, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tried to push the commits into this branch, but I believe I do not have GitHub permission to do that, so I will wait until after you merge this, and then after that I will open my own PR for the changes, assuming that is what you prefer to happen.

Here are the commits in case you want to see the changes I am planning to add: bump-pypy3...robertkirkman:termux-packages:bump-pypy3

TERMUX_PKG_VERSION=7.3.19
TERMUX_PKG_SRCURL=https://downloads.python.org/pypy/pypy$_MAJOR_VERSION-v$TERMUX_PKG_VERSION-src.tar.bz2
TERMUX_PKG_SHA256=6ad74bc578e9c6d3a8a1c51503313058e3c58c35df86f7485453c4be6ab24bf7
TERMUX_PKG_SHA256=4817c044bb469a3274e60aa3645770f81eb4f9166ea7fdc4e6c351345554c8d8
TERMUX_PKG_DEPENDS="gdbm, libandroid-posix-semaphore, libandroid-support, libbz2, libcrypt, libexpat, libffi, liblzma, libsqlite, ncurses, ncurses-ui-libs, openssl, zlib"
TERMUX_PKG_BUILD_DEPENDS="aosp-libs, coreutils, clang, make, pkg-config, python2, tk, xorgproto"
TERMUX_PKG_RECOMMENDS="clang, make, pkg-config"
Expand Down