Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 941550 - dev-cpp/abseil-cpp needs rebuild after dev-cpp/gtest upgrade
Summary: dev-cpp/abseil-cpp needs rebuild after dev-cpp/gtest upgrade
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Paul Zander
URL:
Whiteboard:
Keywords: PullRequest
Depends on:
Blocks:
 
Reported: 2024-10-15 03:03 UTC by Mike Gilbert
Modified: 2025-04-05 00:42 UTC (History)
6 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mike Gilbert gentoo-dev 2024-10-15 03:03:38 UTC
After upgrading to dev-cpp/gtest-1.15.2, I had to run emerge @preserved-rebuild to rebuild dev-cpp/abseil-cpp.

% grep gmock /var/db/pkg/dev-cpp/abseil-cpp-20240722.0/NEEDED.ELF.2
X86_64;/usr/lib64/libabsl_scoped_mock_log.so.2407.0.0;libabsl_scoped_mock_log.so.2407.0.0;$ORIGIN;libgmock.so.1.15.2,libgtest.so.1.15.2,libabsl_log_internal_log_sink_set.so.2407.0.0,libabsl_log_sink.so.2407.0.0,libabsl_raw_logging_internal.so.2407.0.0,libabsl_log_severity.so.2407.0.0,libstdc++.so.6,libgcc_s.so.1,libc.so.6;x86_64

I think we either need to adjust abseil-cpp to not install files linked against libgmock, or introduce a subslot in gtest and a slot-operator dependency in abseil-cpp.
Comment 1 Peter Levine 2024-10-20 16:41:59 UTC
The source of this issue: https://github.com/abseil/abseil-cpp/issues/1407#issuecomment-1451149066
Comment 2 Larry the Git Cow gentoo-dev 2025-04-05 00:42:06 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=731ffdda061a686174130a2babd3f9264d11234a

commit 731ffdda061a686174130a2babd3f9264d11234a
Author:     Peter Levine <plevine457@gmail.com>
AuthorDate: 2024-10-20 05:48:50 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2025-04-05 00:39:47 +0000

    dev-cpp/abseil-cpp: rebuild with every subslot of dev-cpp/gtest
    
    Closes: https://bugs.gentoo.org/941550
    Closes: https://github.com/gentoo/gentoo/pull/39051
    Signed-off-by: Peter Levine <plevine457@gmail.com>
    Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
    Signed-off-by: Sam James <sam@gentoo.org>

 .../{abseil-cpp-20240722.0.ebuild => abseil-cpp-20240722.0-r1.ebuild}   | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Additionally, it has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8d94f39fcaf398ef225b0a68b0c1232d0825ebed

commit 8d94f39fcaf398ef225b0a68b0c1232d0825ebed
Author:     Peter Levine <plevine457@gmail.com>
AuthorDate: 2024-10-20 05:26:52 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2025-04-05 00:39:46 +0000

    dev-cpp/gtest: add subslot
    
    When some packages like cpp/abseil-cpp are built with USE=test, some
    installed shared libraries are linked to libgtest/libgmock. And because
    gtest doesn't impose a SOVERSION, it appears they would need a rebuild
    with every new version of dev-cpp/gtest.
    
    Bug: https://bugs.gentoo.org/941550
    Signed-off-by: Peter Levine <plevine457@gmail.com>
    Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
    Signed-off-by: Sam James <sam@gentoo.org>

 dev-cpp/gtest/{gtest-1.14.0-r1.ebuild => gtest-1.14.0-r2.ebuild} | 4 ++--
 dev-cpp/gtest/{gtest-1.15.2.ebuild => gtest-1.15.2-r1.ebuild}    | 4 ++--
 dev-cpp/gtest/gtest-9999.ebuild                                  | 4 ++--
 3 files changed, 6 insertions(+), 6 deletions(-)