From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 1CB7413888F for ; Thu, 15 Oct 2015 07:39:27 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 14175E07EE; Thu, 15 Oct 2015 07:39:25 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 5225DE07EE for ; Thu, 15 Oct 2015 07:39:24 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 1FE84340B10 for ; Thu, 15 Oct 2015 07:39:23 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 9BFB5922 for ; Thu, 15 Oct 2015 07:39:21 +0000 (UTC) From: "Tobias Klausmann" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Tobias Klausmann" Message-ID: <1444894727.9183fd4b8989b9411c96db8b7f71780422af4b2e.klausman@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/libevent/, dev-libs/libevent/files/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-libs/libevent/files/event_signals_ordering.patch dev-libs/libevent/libevent-2.1.5-r4.ebuild X-VCS-Directories: dev-libs/libevent/ dev-libs/libevent/files/ X-VCS-Committer: klausman X-VCS-Committer-Name: Tobias Klausmann X-VCS-Revision: 9183fd4b8989b9411c96db8b7f71780422af4b2e X-VCS-Branch: master Date: Thu, 15 Oct 2015 07:39:21 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: ed3af7ea-928a-4c88-acc3-77d6e8611348 X-Archives-Hash: 911117e021426c1486613c1f019d6669 commit: 9183fd4b8989b9411c96db8b7f71780422af4b2e Author: Tobias Klausmann gentoo org> AuthorDate: Thu Oct 15 07:38:47 2015 +0000 Commit: Tobias Klausmann gentoo org> CommitDate: Thu Oct 15 07:38:47 2015 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9183fd4b dev-libs/libevent: Add patch to fix Zombie leftovers When-if upstream makes a release that contains this patch, we can drop it. But since it has been six months without a release, let'suse it directly ourselves. Gentoo-Bug: 540456 Libevent-Bug: http://sourceforge.net/p/levent/bugs/350/ Package-Manager: portage-2.2.23 .../libevent/files/event_signals_ordering.patch | 36 +++++++++++ dev-libs/libevent/libevent-2.1.5-r4.ebuild | 70 ++++++++++++++++++++++ 2 files changed, 106 insertions(+) diff --git a/dev-libs/libevent/files/event_signals_ordering.patch b/dev-libs/libevent/files/event_signals_ordering.patch new file mode 100644 index 0000000..d0cb2b3 --- /dev/null +++ b/dev-libs/libevent/files/event_signals_ordering.patch @@ -0,0 +1,36 @@ +diff --git a/event.c b/event.c +index acef2b2..ad4c7f0 100644 +--- a/event.c ++++ b/event.c +@@ -926,13 +926,13 @@ event_reinit(struct event_base *base) + event_del_nolock_(&base->sig.ev_signal, EVENT_DEL_AUTOBLOCK); + event_debug_unassign(&base->sig.ev_signal); + memset(&base->sig.ev_signal, 0, sizeof(base->sig.ev_signal)); +- if (base->sig.ev_signal_pair[0] != -1) +- EVUTIL_CLOSESOCKET(base->sig.ev_signal_pair[0]); +- if (base->sig.ev_signal_pair[1] != -1) +- EVUTIL_CLOSESOCKET(base->sig.ev_signal_pair[1]); + had_signal_added = 1; + base->sig.ev_signal_added = 0; + } ++ if (base->sig.ev_signal_pair[0] != -1) ++ EVUTIL_CLOSESOCKET(base->sig.ev_signal_pair[0]); ++ if (base->sig.ev_signal_pair[1] != -1) ++ EVUTIL_CLOSESOCKET(base->sig.ev_signal_pair[1]); + if (base->th_notify_fn != NULL) { + was_notifiable = 1; + base->th_notify_fn = NULL; +@@ -981,8 +981,12 @@ event_reinit(struct event_base *base) + if (evmap_reinit_(base) < 0) + res = -1; + } else { +- if (had_signal_added) + res = evsig_init_(base); ++ if (res == 0 && had_signal_added) { ++ res = event_add_nolock_(&base->sig.ev_signal, NULL, 0); ++ if (res == 0) ++ base->sig.ev_signal_added = 1; ++ } + } + + /* If we were notifiable before, and nothing just exploded, become diff --git a/dev-libs/libevent/libevent-2.1.5-r4.ebuild b/dev-libs/libevent/libevent-2.1.5-r4.ebuild new file mode 100644 index 0000000..e55213f --- /dev/null +++ b/dev-libs/libevent/libevent-2.1.5-r4.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit eutils libtool multilib-minimal + +MY_P="${P}-beta" + +DESCRIPTION="A library to execute a function when a specific event occurs on a file descriptor" +HOMEPAGE="http://libevent.org/" +SRC_URI="mirror://sourceforge/levent/files/${MY_P}.tar.gz" + +LICENSE="BSD" +# libevent-2.1.so.5 +SLOT="0/2.1-5" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris" +IUSE="debug libressl +ssl static-libs test +threads" + +DEPEND=" + ssl? ( + !libressl? ( >=dev-libs/openssl-1.0.1h-r2:0[${MULTILIB_USEDEP}] ) + libressl? ( dev-libs/libressl[${MULTILIB_USEDEP}] ) + ) +" +RDEPEND=" + ${DEPEND} + !<=dev-libs/9libs-1.0 +" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/event2/event-config.h +) + +S=${WORKDIR}/${MY_P} + +src_prepare() { + elibtoolize + epatch "${FILESDIR}/event_signals_ordering.patch" + # don't waste time building tests + # https://github.com/libevent/libevent/pull/144 + sed -i -e '/^all:/s|tests||g' Makefile.nmake || die +} + +multilib_src_configure() { + # fix out-of-source builds + mkdir -p test || die + + ECONF_SOURCE="${S}" \ + econf \ + $(use_enable debug debug-mode) \ + $(use_enable debug malloc-replacement) \ + $(use_enable ssl openssl) \ + $(use_enable static-libs static) \ + $(use_enable threads thread-support) +} + +src_test() { + # The test suite doesn't quite work (see bug #406801 for the latest + # installment in a riveting series of reports). + : + # emake -C test check | tee "${T}"/tests +} + +DOCS=( ChangeLog{,-1.4,-2.0} ) + +multilib_src_install_all() { + einstalldocs + prune_libtool_files +}