dev-cpp/glog: Disable broken symbolize patch, try fix logging test

Closes: https://bugs.gentoo.org/863599
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
This commit is contained in:
Andreas Sturmlechner
2024-11-28 23:05:10 +01:00
parent d3581e20b3
commit 5c1744bb01
3 changed files with 76 additions and 3 deletions

View File

@@ -0,0 +1,30 @@
From 9ad08ac6cc7899947deb934a695d150f0ae360d0 Mon Sep 17 00:00:00 2001
From: Rodrigo Queiro <rodrigoq@google.com>
Date: Tue, 13 Sep 2022 11:53:24 +0200
Subject: [PATCH] Remove symbolize Bazel test
It is broken on Windows CI (#859) in a way that I don't understand.
* asturmlechner 2024-11-28: backported to cmake
---
CMakeLists.txt | 2 +-
1 file changed, 2 insertions(+), 2 deletions(-)
--- a/CMakeLists.txt 2022-04-05 00:03:27.000000000 +0200
+++ b/CMakeLists.txt 2024-11-28 22:58:18.584982147 +0100
@@ -804,13 +804,13 @@
GLOG_STL_LOGGING_FOR_EXT_SLIST)
endif (HAVE_EXT_SLIST)
- if (HAVE_SYMBOLIZE)
+ if (0)
add_executable (symbolize_unittest
src/symbolize_unittest.cc
)
target_link_libraries (symbolize_unittest PRIVATE ${_GLOG_TEST_LIBS})
- endif (HAVE_SYMBOLIZE)
+ endif ()
add_executable (demangle_unittest
src/demangle_unittest.cc

View File

@@ -0,0 +1,36 @@
From 45d7978dafceca8200fa4434d762f62642dc7cb4 Mon Sep 17 00:00:00 2001
From: Sergiu Deitsch <sergiud@users.noreply.github.com>
Date: Tue, 2 Jan 2024 13:01:42 +0100
Subject: [PATCH] fix(tests): prevent clang from optimizing new away (#1017)
---
src/logging_unittest.cc | 13 +++++++++++--
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/src/logging_unittest.cc b/src/logging_unittest.cc
index cb1c657e7..40da9a44d 100644
--- a/src/logging_unittest.cc
+++ b/src/logging_unittest.cc
@@ -355,12 +355,19 @@ struct NewHook {
}
};
+namespace {
+int* allocInt() { return new int; }
+} // namespace
+
TEST(DeathNoAllocNewHook, logging) {
// tests that NewHook used below works
NewHook new_hook;
- ASSERT_DEATH({
- new int;
- }, "unexpected new");
+ // Avoid unused warnings under MinGW
+ //
+ // NOTE MSVC produces warning C4551 here if we do not take the address of the
+ // function explicitly.
+ (void)&allocInt;
+ ASSERT_DEATH({ allocInt(); }, "unexpected new");
}
void TestRawLogging() {

View File

@@ -1,4 +1,4 @@
# Copyright 2011-2023 Gentoo Authors
# Copyright 2011-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="8"
@@ -29,9 +29,16 @@ RDEPEND="gflags? ( dev-cpp/gflags:0=[${MULTILIB_USEDEP}] )
libunwind? (
llvm-libunwind? ( sys-libs/llvm-libunwind:0=[${MULTILIB_USEDEP}] )
!llvm-libunwind? ( sys-libs/libunwind:0=[${MULTILIB_USEDEP}] )
)"
)
"
DEPEND="${RDEPEND}
test? ( >=dev-cpp/gtest-1.8.0[${MULTILIB_USEDEP}] )"
test? ( >=dev-cpp/gtest-1.8.0[${MULTILIB_USEDEP}] )
"
PATCHES=(
"${FILESDIR}/${P}-disable-symbolize-test.patch" # bug 863599
"${FILESDIR}/${P}-try-fix-logging-test.patch"
)
src_configure() {
local mycmakeargs=(