summaryrefslogtreecommitdiff
path: root/dev-cpp/libcmis
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-12 19:09:37 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-12 19:09:37 -0500
commitb590c8d7572b727d565cc0b8ff660d43569845de (patch)
tree06f7a4102ea4e845df8b66660f252920d52952f9 /dev-cpp/libcmis
parent24f9cbfc4c34fdb6a6e03311674414e881ceab47 (diff)
downloadbaldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.gz
baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.xz
baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.zip
Adding metadata
Diffstat (limited to 'dev-cpp/libcmis')
-rw-r--r--dev-cpp/libcmis/Manifest1
-rw-r--r--dev-cpp/libcmis/files/libcmis-0.6.2-boost-1.86.patch47
-rw-r--r--dev-cpp/libcmis/files/libcmis-0.6.2-fix-sha1-test.patch45
-rw-r--r--dev-cpp/libcmis/files/libcmis-0.6.2-libxml2-2.12.patch26
-rw-r--r--dev-cpp/libcmis/libcmis-0.6.2-r2.ebuild73
-rw-r--r--dev-cpp/libcmis/libcmis-9999.ebuild64
-rw-r--r--dev-cpp/libcmis/metadata.xml12
7 files changed, 268 insertions, 0 deletions
diff --git a/dev-cpp/libcmis/Manifest b/dev-cpp/libcmis/Manifest
new file mode 100644
index 000000000000..86f9994fa42b
--- /dev/null
+++ b/dev-cpp/libcmis/Manifest
@@ -0,0 +1 @@
+DIST libcmis-0.6.2.tar.gz 296218 BLAKE2B faad99e09b2721cd56b0d47d2a9589e06222ee7881006e936d0943d5e8afc588fcda721ef282ad7d55c785407a9885c90cbce1d172ca012c4a13cc51da0c15b6 SHA512 a75a69623f34149c39c382c357396b8dd719d589a78424fc3b5d9de84ffbf3f889bcaaed9a01f91b491a507c189347d3d9252db238fddbb522ff8ba9ce7b5ade
diff --git a/dev-cpp/libcmis/files/libcmis-0.6.2-boost-1.86.patch b/dev-cpp/libcmis/files/libcmis-0.6.2-boost-1.86.patch
new file mode 100644
index 000000000000..5d2a9ba404e3
--- /dev/null
+++ b/dev-cpp/libcmis/files/libcmis-0.6.2-boost-1.86.patch
@@ -0,0 +1,47 @@
+https://github.com/tdf/libcmis/issues/67
+https://github.com/tdf/libcmis/pull/68
+
+From dfcb642a491f7ec2ae52e3e83d31bb6cdf3670c2 Mon Sep 17 00:00:00 2001
+From: David Seifert <soap@gentoo.org>
+Date: Sat, 31 Aug 2024 12:39:39 +0200
+Subject: [PATCH] Fix boost 1.86 breakage
+
+The fix does not break building against <1.86 since we're now accessing the
+object representation of the return value.
+
+Fixes #67
+---
+ src/libcmis/xml-utils.cxx | 14 ++++++++++----
+ 1 file changed, 10 insertions(+), 4 deletions(-)
+
+diff --git a/src/libcmis/xml-utils.cxx b/src/libcmis/xml-utils.cxx
+index e487d17..cdf088f 100644
+--- a/src/libcmis/xml-utils.cxx
++++ b/src/libcmis/xml-utils.cxx
+@@ -531,16 +531,22 @@ namespace libcmis
+ boost::uuids::detail::sha1 sha1;
+ sha1.process_bytes( str.c_str(), str.size() );
+
+- unsigned int digest[5];
++ // on boost < 1.86.0, digest_type is typedef'd as unsigned int[5]
++ // on boost >= 1.86.0, digest_type is typedef'd as unsigned char[20]
++ 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 eight
++ // 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 < 5; ++i )
+- out << setw(8) << digest[i];
++ for ( int i = 0; i < sizeof( digest ); ++ptr, ++i )
++ out << setw(2) << static_cast<int>( *ptr );
+ return out.str();
+ }
+
diff --git a/dev-cpp/libcmis/files/libcmis-0.6.2-fix-sha1-test.patch b/dev-cpp/libcmis/files/libcmis-0.6.2-fix-sha1-test.patch
new file mode 100644
index 000000000000..d098f80212c3
--- /dev/null
+++ b/dev-cpp/libcmis/files/libcmis-0.6.2-fix-sha1-test.patch
@@ -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();
+ }
+
diff --git a/dev-cpp/libcmis/files/libcmis-0.6.2-libxml2-2.12.patch b/dev-cpp/libcmis/files/libcmis-0.6.2-libxml2-2.12.patch
new file mode 100644
index 000000000000..a00fb863dcb5
--- /dev/null
+++ b/dev-cpp/libcmis/files/libcmis-0.6.2-libxml2-2.12.patch
@@ -0,0 +1,26 @@
+From 72618e63433c7243e4d9e79a638f19a09402eecc Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Tue, 21 Nov 2023 23:10:07 +0100
+Subject: [PATCH] Fix build with libxml2-2.12 (missing include)
+
+See also: https://github.com/tdf/libcmis/issues/51
+Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
+---
+ inc/libcmis/xml-utils.hxx | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/inc/libcmis/xml-utils.hxx b/inc/libcmis/xml-utils.hxx
+index 929385e..9bd99ae 100644
+--- a/inc/libcmis/xml-utils.hxx
++++ b/inc/libcmis/xml-utils.hxx
+@@ -34,6 +34,7 @@
+ #include <string>
+
+ #include <boost/date_time.hpp>
++#include <libxml/parser.h>
+ #include <libxml/tree.h>
+ #include <libxml/xpathInternals.h>
+ #include <libxml/xmlwriter.h>
+--
+2.43.0
+
diff --git a/dev-cpp/libcmis/libcmis-0.6.2-r2.ebuild b/dev-cpp/libcmis/libcmis-0.6.2-r2.ebuild
new file mode 100644
index 000000000000..7b096ee60f1b
--- /dev/null
+++ b/dev-cpp/libcmis/libcmis-0.6.2-r2.ebuild
@@ -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"
+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
+}
diff --git a/dev-cpp/libcmis/libcmis-9999.ebuild b/dev-cpp/libcmis/libcmis-9999.ebuild
new file mode 100644
index 000000000000..196087c0dff6
--- /dev/null
+++ b/dev-cpp/libcmis/libcmis-9999.ebuild
@@ -0,0 +1,64 @@
+# 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"
+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
+ )
+"
+
+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
+}
diff --git a/dev-cpp/libcmis/metadata.xml b/dev-cpp/libcmis/metadata.xml
new file mode 100644
index 000000000000..953477b48ab3
--- /dev/null
+++ b/dev-cpp/libcmis/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>office@gentoo.org</email>
+ <name>Gentoo Office project</name>
+ </maintainer>
+ <use>
+ <flag name="tools">Build client tool for testing and viewing features</flag>
+ </use>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>