summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-05-13 00:38:20 +0100
committerSam James <sam@gentoo.org>2023-05-13 00:38:20 +0100
commitcfb72fdc318a8bd77d148e728da1a838a0252948 (patch)
treec7a7f49e3cbd3436e3d46ac14ad404cbd352af46 /media-libs/raptor
parentsys-apps/goawk: add 1.23.0 (diff)
downloadgentoo-cfb72fdc318a8bd77d148e728da1a838a0252948.tar.gz
gentoo-cfb72fdc318a8bd77d148e728da1a838a0252948.tar.bz2
gentoo-cfb72fdc318a8bd77d148e728da1a838a0252948.zip
media-libs/raptor: fix build w/ libxml2-2.11
Closes: https://bugs.gentoo.org/906227 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-libs/raptor')
-rw-r--r--media-libs/raptor/files/raptor-2.0.15-libxml2-2.11.patch30
-rw-r--r--media-libs/raptor/raptor-2.0.15-r8.ebuild85
2 files changed, 115 insertions, 0 deletions
diff --git a/media-libs/raptor/files/raptor-2.0.15-libxml2-2.11.patch b/media-libs/raptor/files/raptor-2.0.15-libxml2-2.11.patch
new file mode 100644
index 000000000000..605301ca0fd1
--- /dev/null
+++ b/media-libs/raptor/files/raptor-2.0.15-libxml2-2.11.patch
@@ -0,0 +1,30 @@
+https://bugs.gentoo.org/906227
+https://github.com/dajobe/raptor/issues/59
+https://github.com/dajobe/raptor/pull/58
+
+From 4dbc4c1da2a033c497d84a1291c46f416a9cac51 Mon Sep 17 00:00:00 2001
+From: David Anes <david.anes@suse.com>
+Date: Thu, 4 May 2023 11:54:02 +0200
+Subject: [PATCH] Remove the access to entities 'checked' private symbol for
+ libxml2 2.11.0
+
+Since version 2.11.0, some private symbols that were never intended
+as public API/ABI have been removed from libxml2, therefore the field
+'checked' is no longer present and raptor fails to build in this
+scenario.
+--- a/src/raptor_libxml.c
++++ b/src/raptor_libxml.c
+@@ -246,10 +246,11 @@ raptor_libxml_getEntity(void* user_data, const xmlChar *name)
+
+ ret->owner = 1;
+
+-#if LIBXML_VERSION >= 20627
++#if LIBXML_VERSION >= 20627 && LIBXML_VERSION < 21100
+ /* Checked field was released in 2.6.27 on 2006-10-25
+ * http://git.gnome.org/browse/libxml2/commit/?id=a37a6ad91a61d168ecc4b29263def3363fff4da6
+ *
++ * and was later removed in version 2.11.0
+ */
+
+ /* Mark this entity as having been checked - never do this again */
+
diff --git a/media-libs/raptor/raptor-2.0.15-r8.ebuild b/media-libs/raptor/raptor-2.0.15-r8.ebuild
new file mode 100644
index 000000000000..5b4f113ba487
--- /dev/null
+++ b/media-libs/raptor/raptor-2.0.15-r8.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools multilib-minimal
+
+MY_PN=${PN}2
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="The RDF Parser Toolkit"
+HOMEPAGE="https://librdf.org/raptor/"
+SRC_URI="https://download.librdf.org/source/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0 GPL-2 LGPL-2.1"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="+curl debug json static-libs"
+
+DEPEND="
+ dev-libs/libxml2[${MULTILIB_USEDEP}]
+ dev-libs/libxslt[${MULTILIB_USEDEP}]
+ dev-libs/icu:=[${MULTILIB_USEDEP}]
+ sys-libs/zlib[${MULTILIB_USEDEP}]
+ curl? ( net-misc/curl[${MULTILIB_USEDEP}] )
+ json? ( dev-libs/yajl[${MULTILIB_USEDEP}] )
+"
+RDEPEND="${DEPEND}
+ !media-libs/raptor:0
+"
+BDEPEND="
+ >=sys-devel/bison-3
+ >=sys-devel/flex-2.5.36
+ virtual/pkgconfig
+"
+
+S="${WORKDIR}/${MY_P}"
+
+DOCS=( AUTHORS ChangeLog NEWS NOTICE README )
+HTML_DOCS=( {NEWS,README,RELEASE,UPGRADING}.html )
+
+PATCHES=(
+ "${FILESDIR}/${P}-heap-overflow.patch"
+ "${FILESDIR}/${P}-dont_use_curl-config.patch" #552474
+ "${FILESDIR}/0001-CVE-2020-25713-raptor2-malformed-input-file-can-lead.patch"
+ "${FILESDIR}/${P}-use-pkg-config-libxml2.patch"
+ "${FILESDIR}/${P}-use-pkg-config-icu.patch"
+ "${FILESDIR}/${P}-use-pkg-config-libxslt.patch"
+ "${FILESDIR}/${P}-clang-pointer-integer-warning.patch"
+ "${FILESDIR}/${P}-configure-clang16.patch"
+ "${FILESDIR}/${P}-libxml2-2.11.patch"
+)
+
+src_prepare() {
+ default
+
+ # bug #552474
+ eautoreconf
+
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ # FIXME: It should be possible to use net-nntp/inn for libinn.h and -linn!
+
+ local myeconfargs=(
+ --with-html-dir="${EPREFIX}"/usr/share/gtk-doc/html
+ $(usex curl --with-www=curl --with-www=xml)
+ $(use_enable debug)
+ $(use_with json yajl)
+ $(use_enable static-libs static)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+multilib_src_test() {
+ emake -j1 test
+}
+
+multilib_src_install() {
+ default
+
+ find "${ED}" -name '*.la' -delete || die
+}