From 0b5a324bd397fc72e02916464875960fc6d7dd6c Mon Sep 17 00:00:00 2001 From: "Gavin D. Howard" Date: Mon, 7 Oct 2024 05:22:39 -0600 Subject: [PATCH] dev-libs/olm: fix compilation on Clang 19 Bug: https://bugs.gentoo.org/940764 Signed-off-by: Gavin D. Howard Closes: https://github.com/gentoo/gentoo/pull/38900 Signed-off-by: Joonas Niilola --- .../olm/files/olm-3.2.16-clang-19-const.patch | 17 +++++++++++ dev-libs/olm/olm-3.2.16-r1.ebuild | 28 +++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 dev-libs/olm/files/olm-3.2.16-clang-19-const.patch create mode 100644 dev-libs/olm/olm-3.2.16-r1.ebuild diff --git a/dev-libs/olm/files/olm-3.2.16-clang-19-const.patch b/dev-libs/olm/files/olm-3.2.16-clang-19-const.patch new file mode 100644 index 000000000000..688e3290fb37 --- /dev/null +++ b/dev-libs/olm/files/olm-3.2.16-clang-19-const.patch @@ -0,0 +1,17 @@ +Fixes compilation on Clang 19. +Patch by Marco Rebhan +Fixes https://bugs.gentoo.org/940764 + +Signed-off-by: Gavin D. Howard + +--- a/include/olm/list.hh ++++ b/include/olm/list.hh +@@ -99,7 +99,7 @@ public: + return *this; + } + T * this_pos = _data; +- T * const other_pos = other._data; ++ T const * other_pos = other._data; + while (other_pos != other._end) { + *this_pos = *other; + ++this_pos; diff --git a/dev-libs/olm/olm-3.2.16-r1.ebuild b/dev-libs/olm/olm-3.2.16-r1.ebuild new file mode 100644 index 000000000000..7a54cba592ae --- /dev/null +++ b/dev-libs/olm/olm-3.2.16-r1.ebuild @@ -0,0 +1,28 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="Implementation of the Double Ratchet cryptographic ratchet in C++" +HOMEPAGE="https://gitlab.matrix.org/matrix-org/olm" +SRC_URI="https://gitlab.matrix.org/matrix-org/${PN}/-/archive/${PV}/${P}.tar.bz2" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}/${P}-cmake.patch" # TODO: upstream + "${FILESDIR}/${P}-clang-19-const.patch" +) + +src_configure() { + local mycmakeargs=( + -DBUILD_TESTING=$(usex test) + ) + cmake_src_configure +}