mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-23 16:49:10 -07:00
dev-cpp/libcmis: backport upstream fix sha1 computation
Link: https://github.com/tdf/libcmis/pull/69
Link: 0753091be5
Closes: https://bugs.gentoo.org/957018
Signed-off-by: Gabi Falk <gabifalk@gmx.com>
Part-of: https://github.com/gentoo/gentoo/pull/42419
Closes: https://github.com/gentoo/gentoo/pull/42419
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
45
dev-cpp/libcmis/files/libcmis-0.6.2-fix-sha1-test.patch
Normal file
45
dev-cpp/libcmis/files/libcmis-0.6.2-fix-sha1-test.patch
Normal file
@@ -0,0 +1,45 @@
|
||||
https://github.com/tdf/libcmis/pull/69
|
||||
https://github.com/tdf/libcmis/commit/0753091be57edae28655e43a9bae9e4c4e414117
|
||||
|
||||
From 0753091be57edae28655e43a9bae9e4c4e414117 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolan.mcnamara@collabora.com>
|
||||
Date: Fri, 13 Sep 2024 16:02:13 +0100
|
||||
Subject: [PATCH] sha1 test fails with older boost
|
||||
|
||||
<fridrich> 1) test: XmlTest::sha1Test (F) line: 588 test-xmlutils.cxx
|
||||
<fridrich> equality assertion failed
|
||||
<fridrich> - Expected: f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0
|
||||
<fridrich> - Actual : 8b9efff79be0b27b5d5a9370c50c5e78f0abd0d9
|
||||
---
|
||||
src/libcmis/xml-utils.cxx | 12 +++++++-----
|
||||
1 file changed, 7 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/src/libcmis/xml-utils.cxx b/src/libcmis/xml-utils.cxx
|
||||
index cdf088f..3568ec6 100644
|
||||
--- a/src/libcmis/xml-utils.cxx
|
||||
+++ b/src/libcmis/xml-utils.cxx
|
||||
@@ -536,17 +536,19 @@ namespace libcmis
|
||||
boost::uuids::detail::sha1::digest_type digest;
|
||||
sha1.get_digest( digest );
|
||||
|
||||
- // by using a pointer to unsigned char, we can read the
|
||||
- // object representation of either typedef.
|
||||
- const unsigned char* ptr = reinterpret_cast<const unsigned char*>( digest );
|
||||
-
|
||||
stringstream out;
|
||||
// Setup writing mode. Every number must produce two
|
||||
// hexadecimal digits, including possible leading 0s, or we get
|
||||
// less than 40 digits as result.
|
||||
out << hex << setfill('0') << right;
|
||||
- for ( int i = 0; i < sizeof( digest ); ++ptr, ++i )
|
||||
+#if BOOST_VERSION < 108600
|
||||
+ for ( int i = 0; i < 5; ++i )
|
||||
+ out << setw(8) << digest[i];
|
||||
+#else
|
||||
+ const unsigned char* ptr = reinterpret_cast<const unsigned char*>( digest );
|
||||
+ for ( size_t i = 0; i < sizeof( digest ); ++ptr, ++i )
|
||||
out << setw(2) << static_cast<int>( *ptr );
|
||||
+#endif
|
||||
return out.str();
|
||||
}
|
||||
|
||||
73
dev-cpp/libcmis/libcmis-0.6.2-r2.ebuild
Normal file
73
dev-cpp/libcmis/libcmis-0.6.2-r2.ebuild
Normal file
@@ -0,0 +1,73 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
if [[ ${PV} == *9999* ]]; then
|
||||
EGIT_REPO_URI="https://github.com/tdf/libcmis.git"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://github.com/tdf/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
|
||||
fi
|
||||
inherit autotools flag-o-matic
|
||||
|
||||
DESCRIPTION="C++ client library for the CMIS interface"
|
||||
HOMEPAGE="https://github.com/tdf/libcmis"
|
||||
|
||||
LICENSE="|| ( GPL-2 LGPL-2 MPL-1.1 )"
|
||||
SLOT="0/0.6"
|
||||
IUSE="man test tools"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
DEPEND="
|
||||
dev-libs/boost:=
|
||||
dev-libs/libxml2:=
|
||||
net-misc/curl
|
||||
"
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
!dev-cpp/libcmis:0.5
|
||||
"
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
man? (
|
||||
app-text/docbook2X
|
||||
dev-libs/libxslt
|
||||
)
|
||||
test? (
|
||||
dev-util/cppunit
|
||||
)
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
# https://github.com/tdf/libcmis/pull/52
|
||||
"${FILESDIR}"/${P}-libxml2-2.12.patch # bug 917523
|
||||
# https://github.com/tdf/libcmis/pull/68
|
||||
"${FILESDIR}"/${P}-boost-1.86.patch
|
||||
# https://github.com/tdf/libcmis/pull/69
|
||||
"${FILESDIR}"/${P}-fix-sha1-test.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# ODR issues in tests w/ curl
|
||||
filter-lto
|
||||
|
||||
local myeconfargs=(
|
||||
--disable-werror
|
||||
$(use_with man)
|
||||
$(use_enable test tests)
|
||||
$(use_enable tools client)
|
||||
)
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
find "${D}" -name '*.la' -delete || die
|
||||
}
|
||||
Reference in New Issue
Block a user