summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEray Aslan <eras@gentoo.org>2018-12-15 16:04:49 +0300
committerEray Aslan <eras@gentoo.org>2018-12-15 16:04:49 +0300
commit5b6faf1954ea6d10706b6fce3f4b7e946a4bc90c (patch)
treeea47edec0edbb959d1967735e7d5da81fcd8503e
parentmedia-video/gpac: stable 0.7.1-r1 for sparc, bug #669966 (diff)
downloadgentoo-5b6faf1954ea6d10706b6fce3f4b7e946a4bc90c.tar.gz
gentoo-5b6faf1954ea6d10706b6fce3f4b7e946a4bc90c.tar.bz2
gentoo-5b6faf1954ea6d10706b6fce3f4b7e946a4bc90c.zip
dev-libs/libverto: bump to 0.3.0
Package-Manager: Portage-2.3.52, Repoman-2.3.12 Signed-off-by: Eray Aslan <eras@gentoo.org>
-rw-r--r--dev-libs/libverto/Manifest1
-rw-r--r--dev-libs/libverto/files/libverto-Wflags.patch25
-rw-r--r--dev-libs/libverto/files/libverto-libev-c89.patch15
-rw-r--r--dev-libs/libverto/files/libverto-load.patch78
-rw-r--r--dev-libs/libverto/files/libverto-verify-cflags.patch26
-rw-r--r--dev-libs/libverto/libverto-0.3.0.ebuild59
6 files changed, 204 insertions, 0 deletions
diff --git a/dev-libs/libverto/Manifest b/dev-libs/libverto/Manifest
index d6c141c8cef6..bd696befe311 100644
--- a/dev-libs/libverto/Manifest
+++ b/dev-libs/libverto/Manifest
@@ -1,2 +1,3 @@
DIST libverto-0.2.5.tar.gz 349722 BLAKE2B fd46b1fd1500d4732baa2d461e4b490386ff54efa8a23f06f40048e1624b4698cfedcfda79cc0a21c9a77050baafe8572835f1c0d174873772afe46b199a6294 SHA512 d57a7f86e714d3fbed391984de3356d8a2769f846985769c1be7d881647c1be95a5fc6a82bba1660ef3241aa1a40150b5e005af6f35dc32473facfdea49c556e
DIST libverto-0.2.6.tar.gz 352690 BLAKE2B b1610fd7c64fff31d46640ef10fd895f9ce2f0d1d4fd4ac205f2ec5f519f695c8ec82da8b9539c28c0d087bfd3664101192010ee59a9632f09b3ed92e52c1054 SHA512 aa8d047501d28741f2f8185fc4a0ef6dc4b99dbe69b583c40cd4c0afc97db4dd0a928d9ec23861fff61651e9ac82e52da9473b8e62ccc11a91e5e5c6b41dfd3b
+DIST libverto-0.3.0.tar.gz 380822 BLAKE2B 7dd31e62a4f4d8ce5cdb77ba96b9e4c957b117ade67f2fb8d38c98e05334fd952386f5690bbe49eba60c545c02ef99dcf63dee3fb17910589013b2868ee24139 SHA512 af4fec9cd20058c1db404443004c2b6c98bcacd0742369bb91f46dde6a35358e44f659bdfef30ab113e112ac1afb3156b098f5b5e2f4a58d1f4cd949abf0f57f
diff --git a/dev-libs/libverto/files/libverto-Wflags.patch b/dev-libs/libverto/files/libverto-Wflags.patch
new file mode 100644
index 000000000000..de403720dd62
--- /dev/null
+++ b/dev-libs/libverto/files/libverto-Wflags.patch
@@ -0,0 +1,25 @@
+From f3935464e3a823539394dcb4669a6e7a889a95ef Mon Sep 17 00:00:00 2001
+From: Robbie Harwood <rharwood@redhat.com>
+Date: Wed, 31 Jan 2018 18:21:04 +0100
+Subject: [PATCH] Turn off -Wcast-function-type
+
+The glib event library forces all callbacks to the same type, even
+when they have different arities. Turn off the gcc warning for this
+gross behavior.
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 4084965..dcab593 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -9,7 +9,7 @@ m4_ifdef([AC_USE_SYSTEM_EXTENSIONS],
+
+ AC_PROG_CC_C99
+
+-for flag in -Wall -Wextra; do
++for flag in -Wall -Wextra -Wno-cast-function-type; do
+ OLD_CFLAGS=$CFLAGS
+ CFLAGS="$CFLAGS $flag"
+ AC_TRY_COMPILE(, [return 0;], [], [CFLAGS=$OLD_CFLAGS])
diff --git a/dev-libs/libverto/files/libverto-libev-c89.patch b/dev-libs/libverto/files/libverto-libev-c89.patch
new file mode 100644
index 000000000000..e63c032b0c89
--- /dev/null
+++ b/dev-libs/libverto/files/libverto-libev-c89.patch
@@ -0,0 +1,15 @@
+diff --git a/configure.ac b/configure.ac
+index 09ee123..b7b5908 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -7,8 +7,8 @@ m4_ifdef([AC_USE_SYSTEM_EXTENSIONS],
+ [AC_USE_SYSTEM_EXTENSIONS],
+ [AC_GNU_SOURCE])
+
+-AC_PROG_CC_C89
+-for flag in -std=c89 -Wall -Wextra; do
++AC_PROG_CC_C99
++for flag in -Wall -Wextra; do
+ AC_TRY_COMPILE([], [return 0;], [CFLAGS="$CFLAGS $flag"],)
+ done
+
diff --git a/dev-libs/libverto/files/libverto-load.patch b/dev-libs/libverto/files/libverto-load.patch
new file mode 100644
index 000000000000..94dceac5d69c
--- /dev/null
+++ b/dev-libs/libverto/files/libverto-load.patch
@@ -0,0 +1,78 @@
+From 7989b3c6bdfdeb8770d17d8717b4a0cd48e79386 Mon Sep 17 00:00:00 2001
+From: Robbie Harwood <rharwood@redhat.com>
+Date: Wed, 24 Oct 2018 16:57:11 -0400
+Subject: [PATCH] Fix rare leak of DSO in module_load
+
+---
+ src/module.c | 31 +++++++++++++++----------------
+ 1 file changed, 15 insertions(+), 16 deletions(-)
+
+diff --git a/src/module.c b/src/module.c
+index 1f1b7c9..0b59034 100644
+--- a/src/module.c
++++ b/src/module.c
+@@ -182,7 +182,7 @@ module_load(const char *filename, const char *symbname,
+ intdll = dlopen(filename, RTLD_LAZY | RTLD_LOCAL);
+ #endif /* WIN32 */
+ if (!intdll)
+- return dllerror();
++ goto fail;
+
+ /* Get the module symbol */
+ #ifdef WIN32
+@@ -190,16 +190,12 @@ module_load(const char *filename, const char *symbname,
+ #else /* WIN32 */
+ intsym = dlsym(intdll, symbname);
+ #endif /* WIN32 */
+- if (!intsym) {
+- module_close(intdll);
+- return dllerror();
+- }
++ if (!intsym)
++ goto fail;
+
+ /* Figure out whether or not to load this module */
+- if (!shouldload(intsym, misc, &interr)) {
+- module_close(intdll);
+- return interr;
+- }
++ if (!shouldload(intsym, misc, &interr))
++ goto fail;
+
+ /* Re-open the module */
+ module_close(intdll);
+@@ -208,9 +204,8 @@ module_load(const char *filename, const char *symbname,
+ #else /* WIN32 */
+ intdll = dlopen(filename, RTLD_NOW | RTLD_LOCAL);
+ #endif /* WIN32 */
+- if (!intdll) {
+- return dllerror();
+- }
++ if (!intdll)
++ goto fail;
+
+ /* Get the symbol again */
+ #ifdef WIN32
+@@ -218,14 +213,18 @@ module_load(const char *filename, const char *symbname,
+ #else /* WIN32 */
+ intsym = dlsym(intdll, symbname);
+ #endif /* WIN32 */
+- if (!intsym) {
+- module_close(intdll);
+- return dllerror();
+- }
++ if (!intsym)
++ goto fail;
+
+ if (dll)
+ *dll = intdll;
+ if (symb)
+ *symb = intsym;
+ return NULL;
++
++fail:
++ if (!interr)
++ interr = dllerror();
++ module_close(intdll);
++ return interr;
+ }
diff --git a/dev-libs/libverto/files/libverto-verify-cflags.patch b/dev-libs/libverto/files/libverto-verify-cflags.patch
new file mode 100644
index 000000000000..dce747239dc7
--- /dev/null
+++ b/dev-libs/libverto/files/libverto-verify-cflags.patch
@@ -0,0 +1,26 @@
+From 5bbe8b009d6daa809f679fd1d25c270abba468b4 Mon Sep 17 00:00:00 2001
+From: Robbie Harwood <rharwood@redhat.com>
+Date: Wed, 31 Jan 2018 17:52:39 +0100
+Subject: [PATCH] Verify flags prior to adding them to CFLAGS, not after
+
+---
+ configure.ac | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index b7b5908..4084965 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -8,8 +8,11 @@ m4_ifdef([AC_USE_SYSTEM_EXTENSIONS],
+ [AC_GNU_SOURCE])
+
+ AC_PROG_CC_C99
++
+ for flag in -Wall -Wextra; do
+- AC_TRY_COMPILE([], [return 0;], [CFLAGS="$CFLAGS $flag"],)
++ OLD_CFLAGS=$CFLAGS
++ CFLAGS="$CFLAGS $flag"
++ AC_TRY_COMPILE(, [return 0;], [], [CFLAGS=$OLD_CFLAGS])
+ done
+
+ AC_CANONICAL_SYSTEM
diff --git a/dev-libs/libverto/libverto-0.3.0.ebuild b/dev-libs/libverto/libverto-0.3.0.ebuild
new file mode 100644
index 000000000000..f0b436a4b833
--- /dev/null
+++ b/dev-libs/libverto/libverto-0.3.0.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit autotools multilib-minimal
+
+DESCRIPTION="Main event loop abstraction library"
+HOMEPAGE="https://github.com/latchset/libverto/"
+SRC_URI="https://github.com/latchset/libverto/releases/download/${PV}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd"
+IUSE="glib +libev libevent tevent +threads static-libs"
+
+# file collisions
+DEPEND="!=app-crypt/mit-krb5-1.10.1-r0
+ !=app-crypt/mit-krb5-1.10.1-r1
+ !=app-crypt/mit-krb5-1.10.1-r2
+ glib? ( >=dev-libs/glib-2.34.3[${MULTILIB_USEDEP}] )
+ libev? ( >=dev-libs/libev-4.15[${MULTILIB_USEDEP}] )
+ libevent? ( >=dev-libs/libevent-2.0.21[${MULTILIB_USEDEP}] )
+ tevent? ( >=sys-libs/tevent-0.9.19[${MULTILIB_USEDEP}] )"
+
+RDEPEND="${DEPEND}"
+
+REQUIRED_USE="|| ( glib libev libevent tevent ) "
+
+PATCHES=( ${FILESDIR}/${PN}-libev-c89.patch \
+ ${FILESDIR}/${PN}-verify-cflags.patch \
+ ${FILESDIR}/${PN}-Wflags.patch \
+ ${FILESDIR}/${PN}-load.patch )
+
+DOCS=( AUTHORS ChangeLog NEWS INSTALL README )
+
+src_prepare() {
+ default
+ # known problem uptream with tevent write test. tevent does not fire a
+ # callback on error, but we explicitly test for this behaviour. Do not run
+ # tevent tests for now.
+ sed -i -e 's/def HAVE_TEVENT/ 0/' tests/test.h || die
+ eautoreconf
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" \
+ econf \
+ $(use_with glib) \
+ $(use_with libev) \
+ $(use_with libevent) \
+ $(use_with tevent) \
+ $(use_with threads pthread) \
+ $(use_enable static-libs static)
+}
+
+multilib_src_install_all() {
+ default
+ use static-libs || find "${ED}" -name '*.la' -delete
+}