Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 925568

Summary: sys-apps/kmod[python] creates two different libkmod.so.2.4.1 when built with tests
Product: Gentoo Linux Reporter: REVOL V. <gentoo-bugzilla.qfefds>
Component: Current packagesAssignee: Gentoo's Team for Core System packages <base-system>
Status: RESOLVED FIXED    
Severity: normal CC: eschwartz, gentoo-bugzilla.qfefds
Priority: Normal    
Version: unspecified   
Hardware: AMD64   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 690294    
Attachments: emerge --info && emerge -pv sys-apps/kmod
emerge build log

Description REVOL V. 2024-02-27 04:46:12 UTC
Created attachment 886052 [details]
emerge --info && emerge -pv sys-apps/kmod

Hi!

I've recently switched to the merged-usr profile but during @world update sys-apps/kmod can't be fully merged because it create two different libkmod.2.4.1 files. One in /usr/lib64 and the other in /lib64.

The issue arise with those USE flags "doc lzma python (tools) zlib zstd -debug -pkcs7 -static-libs" PYTHON_TARGETS="python3_11 -python3_10"

it works fine with those USE flags doc lzma (tools) zlib zstd -debug -pkcs7 -python -static-libs" PYTHON_TARGETS="python3_11 -python3_10"
Comment 1 REVOL V. 2024-02-27 04:52:27 UTC
Created attachment 886053 [details]
emerge build log

The output contains colored shell escape
Comment 2 Eli Schwartz gentoo-dev 2024-02-28 01:26:22 UTC
It appears to only happen when tests are run. Generated Makefile:


```
install-pkgpyexecLTLIBRARIES: install-libLTLIBRARIES
```


The resulting rule checks whether the files have been built before attempting to install them. When src_test is run, the libkmod.so from the build-python3_11/ build directory *does* get built, and thus, also installed.

This is a nasty one...
Comment 3 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-02-28 02:06:49 UTC
The bindings are, uh, gone: https://github.com/kmod-project/kmod/commit/594f102cf575b0d5c01ebff22aae450c8a204d45.

That makes life easier...
Comment 4 Larry the Git Cow gentoo-dev 2024-03-02 00:15:30 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7e18d8b8c3d468754790010cc157cc8eaff3d5b5

commit 7e18d8b8c3d468754790010cc157cc8eaff3d5b5
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2024-03-02 00:13:33 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2024-03-02 00:14:43 +0000

    sys-apps/kmod: drop Python bindings, fix musl-1.2.5 compat (modern C porting)
    
    * Drop Python bindings for weird double install issue (bug #925568).
    
      This is a somewhat extreme response, but it turns out upstream have dropped
      the bindings upstream anyway in https://github.com/kmod-project/kmod/commit/594f102cf575b0d5c01ebff22aae450c8a204d45
      for the next release.
    
    * Fix musl-1.2.5 compat wrt POSIX vs GNU basename.
    
      Would segfault at runtime otherwise on a non-strict C compiler.
    
    Closes: https://bugs.gentoo.org/925568
    Signed-off-by: Sam James <sam@gentoo.org>

 sys-apps/kmod/files/kmod-31-musl-basename.patch | 113 +++++++++++++++++
 sys-apps/kmod/kmod-31-r1.ebuild                 | 154 ++++++++++++++++++++++++
 sys-apps/kmod/kmod-9999.ebuild                  | 102 +++-------------
 3 files changed, 283 insertions(+), 86 deletions(-)