In July 2019 ebuilds have been added for bzip2 1.0.7 and 1.0.8 The patch bzip2-1.0.6-saneso.patch was also added for those two versions, however it was not properly modified. bzip2-1.0.6-saneso.patch does two things: - add $(LDFLAGS) to the link command line - change libbz2 soname from libbz2.so.1.0 to libbz2.so.1 That last change is missing for versions 1.0.7 and 1.0.8, meaning upgrading bz2 may cause linkage issues while it is not expected for the api to have become incompatible. As version 1.0.6 has a soname of libbz2.so.1 I believe version 1.0.7 and 1.0.8 should too.
"libbz2.so.1" soname is also used by future version (current 9999) (both Meson and CMake): https://gitlab.com/federicomenaquintero/bzip2/-/blob/master/meson.build: bz2_lt_current = 1 <<< bz2_lt_revision = 7 bz2_lt_age = 0 <<< bz2_soversion = bz2_lt_current - bz2_lt_age <<< ... libbzip2 = library( 'bz2', bz_sources, c_args : c_args, gnu_symbol_visibility : 'hidden', version : bz2_lt_version, soversion : bz2_soversion, <<< install : true, ) https://gitlab.com/federicomenaquintero/bzip2/-/blob/master/CMakeLists.txt: set(LT_CURRENT 1) <<< set(LT_REVISION 7) set(LT_AGE 0) <<< ... math(EXPR LT_SOVERSION "${LT_CURRENT} - ${LT_AGE}") <<< set(LT_VERSION "${LT_SOVERSION}.${LT_AGE}.${LT_REVISION}") ... add_library(bz2 SHARED ${BZ2_RES}) ... set_target_properties(bz2 PROPERTIES COMPILE_FLAGS "${WARNCFLAGS}" VERSION ${LT_VERSION} SOVERSION ${LT_SOVERSION}) ^^^^^^^^^^^^^^^^^^^^^^^^^
Created attachment 632122 [details, diff] Patch
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=98da0ad82192d21ad74ae52366ea8466e2acea24 commit 98da0ad82192d21ad74ae52366ea8466e2acea24 Author: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org> AuthorDate: 2020-04-11 07:35:36 +0000 Commit: Lars Wendler <polynomial-c@gentoo.org> CommitDate: 2020-04-11 11:08:36 +0000 app-arch/bzip2: Fix soname of library in 1.0.7 and 1.0.8. Change soname of library from "libbz2.so.1.0" to "libbz2.so.1". Soname "libbz2.so.1" is also used by previous version (1.0.6) and by new build systems (both Meson and CMake) available in next version. Closes: https://bugs.gentoo.org/695178 Signed-off-by: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org> Signed-off-by: Lars Wendler <polynomial-c@gentoo.org> app-arch/bzip2/{bzip2-1.0.7.ebuild => bzip2-1.0.7-r1.ebuild} | 0 app-arch/bzip2/{bzip2-1.0.8.ebuild => bzip2-1.0.8-r1.ebuild} | 0 app-arch/bzip2/files/bzip2-1.0.7-out-of-tree-build.patch | 2 +- app-arch/bzip2/files/bzip2-1.0.7-saneso.patch | 2 +- app-arch/bzip2/files/bzip2-1.0.8-out-of-tree-build.patch | 2 +- app-arch/bzip2/files/bzip2-1.0.8-saneso.patch | 2 +- 6 files changed, 4 insertions(+), 4 deletions(-)
In case anyone sees this message similar to this, it's triggered by app-arch/bzip2 providing libbz2.so.1.0 instead of libbz2.so.1: > * QA Notice: Unresolved soname dependencies: > * > * /usr/lib/pypy2.7/pypy-c-7.3.1: libbz2.so.1