dev-libs/libical: 3.0.5 version bump
authorAndreas Sturmlechner <asturm@gentoo.org>
Tue, 21 May 2019 15:28:24 +0000 (17:28 +0200)
committerAndreas Sturmlechner <asturm@gentoo.org>
Tue, 21 May 2019 18:40:53 +0000 (20:40 +0200)
Package-Manager: Portage-2.3.66, Repoman-2.3.12
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
dev-libs/libical/Manifest
dev-libs/libical/files/libical-3.0.5-fix-lots-of-params.patch [new file with mode: 0644]
dev-libs/libical/libical-3.0.5.ebuild [new file with mode: 0644]

index d0547e218f679f6e87b8a445ddba5ab54734e590..2a3140970bd5867176d9faf6aeff4abf1c0146f3 100644 (file)
@@ -1 +1,2 @@
 DIST libical-3.0.4.tar.gz 871853 BLAKE2B 478589bd60a8cf2cadf3cb7d2a7502810ccea7c553db206135ba3f4d5f4ea28acbe670b76844306957c8a137b381f8d8b885c1fef56fad2afd5c6e8e9c14b28c SHA512 491a1dd0c33bb823a79165eb6e4f86ef048a44642adfe44f8e69c83598b458ddf8e4365b11afc37d0b21bc1367e0a99096fc7887aae29e7ff4e3bd1cdee64dd9
+DIST libical-3.0.5.tar.gz 881800 BLAKE2B 64f95950cc6f128c9ea475129e54d9c58b26d9866f8183762d34c996934a1b2bcc528c47442357a12fb6444831caa8f39772a6810d81f8c0b6596fd724f0de6c SHA512 9bf24b535864f66ea0b8d52d902d15fbfd20efbc480b5188ecd1b3d4aafdba063219763f99a8c30413964f7a024c7a902bade6bc40224bc59a438e672f65d656
diff --git a/dev-libs/libical/files/libical-3.0.5-fix-lots-of-params.patch b/dev-libs/libical/files/libical-3.0.5-fix-lots-of-params.patch
new file mode 100644 (file)
index 0000000..187a5de
--- /dev/null
@@ -0,0 +1,24 @@
+From f02ca493123b7c8e8eaaa758d787e9e2753fd9b8 Mon Sep 17 00:00:00 2001
+From: Kent Sutherland <git@ksuther.com>
+Date: Fri, 17 May 2019 13:26:52 -0500
+Subject: [PATCH] Include invalid parameters in the maximum number of allowed
+ parameters Fixes hangs when iterating lots of invalid parameters (valid
+ parameters already have a cap from f6c64896988644a7c6d4d5060f6ab574c2a62fbf)
+ oss-fuzz issue 14809
+
+---
+ src/libical/icalparser.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/libical/icalparser.c b/src/libical/icalparser.c
+index 99803418..fa71e8bd 100644
+--- a/src/libical/icalparser.c
++++ b/src/libical/icalparser.c
+@@ -1098,6 +1098,7 @@ icalcomponent *icalparser_add_line(icalparser *parser, char *line)
+                     icalmemory_free_buffer(str);
+                     str = NULL;
++                    pcount++;
+                     continue;
+                 }
+             }
diff --git a/dev-libs/libical/libical-3.0.5.ebuild b/dev-libs/libical/libical-3.0.5.ebuild
new file mode 100644 (file)
index 0000000..689ab21
--- /dev/null
@@ -0,0 +1,94 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{5,6,7} )
+inherit cmake-utils python-any-r1
+
+DESCRIPTION="An implementation of basic iCAL protocols"
+HOMEPAGE="https://github.com/libical/libical"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="|| ( MPL-2.0 LGPL-2.1 )"
+SLOT="0/3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
+IUSE="berkdb doc examples static-libs test"
+
+BDEPEND="
+       dev-lang/perl
+       virtual/pkgconfig
+       doc? ( app-doc/doxygen )
+       test? ( ${PYTHON_DEPS} )
+"
+# TODO: disabled until useful
+#      glib? (
+#              dev-libs/glib:2
+#              dev-libs/libxml2:2
+#      )
+#      introspection? ( dev-libs/gobject-introspection:= )
+DEPEND="
+       dev-libs/icu:=
+       berkdb? ( sys-libs/db:= )
+"
+RDEPEND="${DEPEND}
+       sys-libs/timezone-data
+"
+
+DOCS=(
+       AUTHORS ReadMe.txt ReleaseNotes.txt TEST THANKS TODO
+       doc/{AddingOrModifyingComponents,UsingLibical}.txt
+)
+
+PATCHES=(
+       "${FILESDIR}/${PN}-3.0.4-tests.patch"
+       "${FILESDIR}/${P}-pkgconfig-libdir.patch"
+       "${FILESDIR}/${P}-fix-lots-of-params.patch"
+)
+
+pkg_setup() {
+       use test && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+       cmake-utils_src_prepare
+       use examples || cmake_comment_add_subdirectory examples
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DICAL_GLIB=OFF
+               -DGOBJECT_INTROSPECTION=OFF
+               $(cmake-utils_use_find_package berkdb BDB)
+               -DICAL_BUILD_DOCS=$(usex doc)
+               -DSHARED_ONLY=$(usex !static-libs)
+       )
+#      TODO: disabled until useful
+#              -DICAL_GLIB=$(usex glib)
+#              -DGOBJECT_INTROSPECTION=$(usex introspection)
+       cmake-utils_src_configure
+}
+
+src_compile() {
+       cmake-utils_src_compile
+       use doc && cmake-utils_src_compile docs
+}
+
+src_test() {
+       local myctestargs=(
+               -E "(icalrecurtest|icalrecurtest-r)" # bug 660282
+       )
+
+       cmake-utils_src_test
+}
+
+src_install() {
+       use doc && HTML_DOCS=( "${BUILD_DIR}"/apidocs/html/. )
+
+       cmake-utils_src_install
+
+       if use examples; then
+               rm examples/CMakeLists.txt || die
+               dodoc -r examples
+       fi
+}