Debian Patches
Status for libsonlib/1.1+git20220915.5cbc158+dfsg-1
| Patch | Description | Author | Forwarded | Bugs | Origin | Last update |
|---|---|---|---|---|---|---|
| fix_build_errors.patch | Fix build errors and make the library build cleanly: - C/impl/sonLibTreap.c: stTreap_remove read rmnode after freeing it (use-after-free); save the parent pointer before free(). - C/impl/stSafeC.c: nbytes was set but not used (with -Werror=unused-but-set-variable this fails the build). - include.mk: drop --pedantic from the release flags; sonLibList.c uses sort_r which needs object<->function pointer casts that ISO C forbids under -pedantic. |
Andreas Tille <tille@debian.org> | no | |||
| use_debian_packaged_quicktree.patch | To avoid a code copy of quicktree here inside the quicktree package a static lib is built and used to link here | Andreas Tille <tille@debian.org> | no | 2020-06-16 | ||
| 2to3.patch | Port to Python3 | Andreas Tille <tille@debian.org> | no | 2020-06-16 | ||
| fix_test.patch | Somehow the test suite was non-functional. Fix some PATHs here | Andreas Tille <tille@debian.org> | no | 2020-06-16 | ||
| rpath.patch | No rpath | Andreas Tille <tille@debian.org> | no | 2020-06-16 | ||
| fix_warnings.patch | Fix comparison between pointer and zero character constant ([-Werror=pointer-compare]) in C/impl/bioioC.c: the code compared the pointer *string against the character constant '\0', which is always true; it must compare the pointed-to character **string. |
Andreas Tille <tille@debian.org> | no | |||
| python313_compat.patch | unittest.makeSuite() was removed in Python 3.13; use unittest.defaultTestLoader.loadTestsFromTestCase() instead so the test suite runs on current Python. |
Andreas Tille <tille@debian.org> | no | |||
| fix_quicktree_clone_child_ids.patch | Clear uninitialized child_ids before freeing cloned quicktree trees quicktree >= 2.5's clone_Tnode() (used by get_root_Tnode()) does not initialize the child_ids member of the cloned nodes. free_Tnode() frees child_ids whenever it is non-NULL, so freeing the tree returned by get_root_Tnode() with free_Tree() frees uninitialized pointers and corrupts the heap (seen as a segfault / heap corruption in the sonLibTests neighbour-joining tests). Clear child_ids on the cloned tree before freeing it. |
Andreas Tille <tille@debian.org> | no | 2026-10-21 | ||
| add_shared_library.patch | Build a shared library libsonlib.so.1.1.0 in addition to the static one Upstream sonLib only builds the static archive sonLib.a. Add a parallel target that compiles the same sources with -fPIC and links them into libsonlib.so.1.1.0 (soname libsonlib.so.1). Quicktree symbols are left unresolved: libquicktree is a static, non-PIC library that cannot be embedded in a shared object, so consumers must link -lquicktree (as they must for the static library); this exports the quicktree symbols into the executable's dynamic symbol table where this library resolves them at run time. |
Andreas Tille <tille@debian.org> | no | 2026-10-21 |
