Debian Patches
Status for pocketpy/2.1.8+ds-8
| Patch | Description | Author | Forwarded | Bugs | Origin | Last update |
|---|---|---|---|---|---|---|
| 0001-Add-CMake-install-rules-for-library-and-headers.patch | Add CMake install rules for library and headers Set project VERSION so that the shared library gets the correct SOVERSION (2) and full version embedded in the filename. Add GNUInstallDirs-based install() rules under PK_IS_MAIN so that `cmake --install` places: - the shared/static library into ${CMAKE_INSTALL_LIBDIR} - include/pocketpy.h and include/pocketpy/ into ${CMAKE_INSTALL_INCLUDEDIR} - a generated pocketpy.pc into ${CMAKE_INSTALL_LIBDIR}/pkgconfig The pkg-config file lets consumers discover the library via `pkg_check_modules(pocketpy REQUIRED pocketpy)`, which hands back -I${includedir} (the umbrella include/pocketpy.h) and -lpocketpy, instead of hand-rolling a Find module and guessing the include dir. Without these rules the build tree produced no installed files. |
Christopher Obbard <obbardc@debian.org> | yes | 2026-04-04 | ||
| big-endian/0002-Enable-for-big-endian-architectures.patch | Enable for big endian architectures py_initialize() aborted at startup with "is_little_endian != true" on big-endian hosts, which made the library unusable on s390x even though the interpreter itself is byte-order agnostic once the endianness bugs in the math and pickle code are fixed. Drop the runtime check so the interpreter starts on big-endian architectures. Changes compared to the original patch (1649da70): * Wrote a description explaining why the check is removed; the original commit had a subject line only. Upstream rejected the pull request listed in Forwarded, so this is carried in Debian. |
Pranav P <pranavsdream@gmail.com> | yes | other, https://github.com/pranavkaruvally/pocketpy/commits/s390x-fix/ | 2026-08-22 | |
| big-endian/0003-Add-big-endian-support-for-math-library.patch | Fix: add big-endian support for math library with proper double handling The udi_t union in src/common/dmath.c aliases a double onto a pair of int32_t halves and assumes i0 is the low word, which only holds on little-endian hosts. On big-endian hosts the two halves are swapped, so exp(), log() and friends read the wrong word and return garbage. Swap the struct members when building for big-endian, and define PK_BIG_ENDIAN from CMake based on CMAKE_C_BYTE_ORDER. Changes compared to the original patch (d294c667): * Dropped the unrelated hunk which added a trailing newline to the end of CMakeLists.txt. * Wrote a description explaining the word-order assumption in udi_t; the original commit had a subject line only. Upstream rejected the pull request listed in Forwarded, so this is carried in Debian. |
Pranav P <pranavsdream@gmail.com> | yes | other, https://github.com/pranavkaruvally/pocketpy/commits/s390x-fix/ | 2026-08-22 | |
| big-endian/0004-Correct-pickle-integer-serialization.patch | fix: correct pickle integer serialization for all architectures Fix integer serialization in pickle module by creating properly-sized intermediate variables (int8_t, int16_t, int32_t) before writing bytes. This ensures correct byte extraction regardless of system endianness. Previously, passing &val (always 64-bit) would write incorrect bytes on big-endian systems. Now passing &v (correctly sized) ensures portable serialization across little-endian and big-endian architectures. Changes compared to the original patch (c2fd14b4): * None. Upstream rejected the pull request listed in Forwarded, so this is carried in Debian. |
Pranav P <pranavsdream@gmail.com> | yes | other, https://github.com/pranavkaruvally/pocketpy/commits/s390x-fix/ | 2026-08-22 |
All known versions for source package 'pocketpy'
- 2.1.8+ds-8 (forky, sid)
- 2.1.8+ds-7~bpo13+1 (trixie-backports)
