commit:     8f653af71bcb6e203cd26ab92f55e90d02380edb
Author:     Ultrabug <ultrabug <AT> gentoo <DOT> org>
AuthorDate: Wed Oct 10 14:10:59 2018 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Wed Oct 10 14:22:52 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8f653af7

www-servers/uwsgi: multiple ebuild clean up

drop obsolete ruby22 target, closes #667540
drop obsolete version dep on mono-4, closes #645906
drop apache2 modules installation, closes #650776
drop useless dependency on gevent when asyncio is selected
fix building of the missing greenlet plugin when asyncio or gevent are used

Signed-off-by: Alexys Jacob <ultrabug <AT> gentoo.org>
Package-Manager: Portage-2.3.50, Repoman-2.3.11

 ...gi-2.0.17.1.ebuild => uwsgi-2.0.17.1-r1.ebuild} | 49 ++++++++--------------
 www-servers/uwsgi/uwsgi-2.0.17.1.ebuild            |  4 +-
 www-servers/uwsgi/uwsgi-2.0.17.ebuild              |  4 +-
 3 files changed, 21 insertions(+), 36 deletions(-)

diff --git a/www-servers/uwsgi/uwsgi-2.0.17.1.ebuild 
b/www-servers/uwsgi/uwsgi-2.0.17.1-r1.ebuild
similarity index 89%
copy from www-servers/uwsgi/uwsgi-2.0.17.1.ebuild
copy to www-servers/uwsgi/uwsgi-2.0.17.1-r1.ebuild
index 623312528d1..248929d1ca5 100644
--- a/www-servers/uwsgi/uwsgi-2.0.17.1.ebuild
+++ b/www-servers/uwsgi/uwsgi-2.0.17.1-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -7,7 +7,7 @@ PYTHON_COMPAT=( python2_7 python3_{4,5,6,7} pypy )
 PYTHON_REQ_USE="threads(+)"
 
 RUBY_OPTIONAL="yes"
-USE_RUBY="ruby22 ruby23 ruby24"
+USE_RUBY="ruby23 ruby24 ruby25"
 
 PHP_EXT_INI="no"
 PHP_EXT_NAME="dummy"
@@ -16,7 +16,7 @@ USE_PHP="php5-6 php7-0 php7-1 php7-2" # deps must be 
registered separately below
 
 MY_P="${P/_/-}"
 
-inherit apache-module eutils flag-o-matic multilib pax-utils php-ext-source-r3 
python-r1 ruby-ng versionator
+inherit eutils flag-o-matic multilib pax-utils php-ext-source-r3 python-r1 
ruby-ng versionator
 
 DESCRIPTION="uWSGI server for Python web applications"
 HOMEPAGE="http://projects.unbit.it/uwsgi/";
@@ -69,7 +69,7 @@ REQUIRED_USE="|| ( ${LANG_SUPPORT_SIMPLE[@]} 
${LANG_SUPPORT_EXTENDED[@]} )
        uwsgi_plugins_router_xmldir? ( xml !expat )
        pypy? ( python_targets_python2_7 )
        python? ( ${PYTHON_REQUIRED_USE} )
-       python_asyncio? ( || ( python_targets_python3_4 
python_targets_python3_5 python_targets_python3_6 python_targets_python3_7 ) 
python_gevent )
+       python_asyncio? ( || ( python_targets_python3_4 
python_targets_python3_5 python_targets_python3_6 python_targets_python3_7 ) )
        python_gevent? ( python )
        expat? ( xml )"
 
@@ -108,7 +108,7 @@ CDEPEND="sys-libs/zlib
        uwsgi_plugins_xslt? ( dev-libs/libxslt )
        go? ( dev-lang/go:=[gccgo] )
        lua? ( dev-lang/lua:= )
-       mono? ( =dev-lang/mono-4* )
+       mono? ( dev-lang/mono:= )
        perl? ( dev-lang/perl:= )
        php? (
                php_targets_php5-6? ( dev-lang/php:5.6[embed] )
@@ -118,6 +118,7 @@ CDEPEND="sys-libs/zlib
        )
        pypy? ( virtual/pypy )
        python? ( ${PYTHON_DEPS} )
+       python_asyncio? ( virtual/python-greenlet[${PYTHON_USEDEP}] )
        python_gevent? ( >=dev-python/gevent-1.3.5[${PYTHON_USEDEP}] )
        ruby? ( $(ruby_implementations_depend) )"
 DEPEND="${CDEPEND}
@@ -126,20 +127,16 @@ RDEPEND="${CDEPEND}
        selinux? ( sec-policy/selinux-uwsgi )
        uwsgi_plugins_rrdtool? ( net-analyzer/rrdtool )"
 
-want_apache2
-
 S="${WORKDIR}/${MY_P}"
-APXS2_S="${S}/apache2"
-APACHE2_MOD_CONF="42_mod_uwsgi-r2 42_mod_uwsgi"
 
 src_unpack() {
+       echo ${PYTHON_USEDEP}
        default
 }
 
 pkg_setup() {
        python_setup
        use ruby && ruby-ng_pkg_setup
-       depend.apache_pkg_setup
 }
 
 src_prepare() {
@@ -251,7 +248,7 @@ python_compile_plugins() {
        ${PYTHON} uwsgiconfig.py --plugin plugins/python gentoo ${EPYV} || die 
"building plugin for ${EPYTHON} failed"
 
        if use python_asyncio ; then
-               if [[ "${PYV}" == "34" || "${PYV}" == "35" ]] ; then
+               if [[ "${PYV}" != "27" ]] ; then
                        ${PYTHON} uwsgiconfig.py --plugin plugins/asyncio 
gentoo asyncio${PYV} || die "building plugin for asyncio-support in ${EPYTHON} 
failed"
                fi
        fi
@@ -260,6 +257,10 @@ python_compile_plugins() {
                ${PYTHON} uwsgiconfig.py --plugin plugins/gevent gentoo 
gevent${PYV} || die "building plugin for gevent-support in ${EPYTHON} failed"
        fi
 
+       if use python_gevent || use python_asyncio; then
+                       ${PYTHON} uwsgiconfig.py --plugin plugins/greenlet 
gentoo greenlet${PYV} || die "building plugin for greenlet-support in 
${EPYTHON} failed"
+       fi
+
        if use pypy ; then
                if [[ "${PYV}" == "27" ]] ; then
                        # TODO: do some proper patching ? The wiki didn't 
help... I gave up for now.
@@ -302,13 +303,6 @@ src_compile() {
        if use ruby ; then
                ruby-ng_src_compile
        fi
-
-       if use apache2 ; then
-               for m in proxy_uwsgi Ruwsgi uwsgi ; do
-                       APXS2_ARGS="-c mod_${m}.c"
-                       apache-module_src_compile
-               done
-       fi
 }
 
 src_install() {
@@ -335,13 +329,6 @@ src_install() {
                python_foreach_impl python_domodule uwsgidecorators.py
        fi
 
-       if use apache2; then
-               for m in proxy_uwsgi Ruwsgi uwsgi ; do
-                       APACHE2_MOD_FILE="${APXS2_S}/.libs/mod_${m}.so"
-                       apache-module_src_install
-               done
-       fi
-
        newinitd "${FILESDIR}"/uwsgi.initd-r7 uwsgi
        newconfd "${FILESDIR}"/uwsgi.confd-r4 uwsgi
        keepdir /etc/"${PN}".d
@@ -350,13 +337,11 @@ src_install() {
 
 pkg_postinst() {
        if use apache2 ; then
-               elog "Three Apache modules have been installed: 
mod_proxy_uwsgi, mod_uwsgi and mod_Ruwsgi."
-               elog "You can enable them with -D PROXY_UWSGI, -DUWSGI or 
-DRUWSGI in /etc/conf.d/apache2."
-               elog "mod_uwsgi and mod_Ruwsgi have the same configuration 
interface and define the same symbols."
-               elog "Therefore you can enable only one of them at a time."
-               elog "mod_uwsgi is commercially supported by Unbit and stable 
but a bit hacky."
-               elog "mod_Ruwsgi is newer and more Apache-API friendly but not 
commercially supported."
-               elog "mod_proxy_uwsgi is a proxy module, considered stable and 
is now the recommended module."
+               ewarn "As reported on bug #650776 [1], Apache module 
mod_proxy_uwsgi"
+               ewarn "is being transferred to upstream Apache since 2.4.30, 
see [2]."
+               ewarn "We therefore do not build them any more."
+               ewarn "    [1] https://bugs.gentoo.org/650776";
+               ewarn "    [2] https://github.com/unbit/uwsgi/issues/1636";
        fi
 
        elog "Append the following options to the uwsgi call to load the 
respective language plugin:"

diff --git a/www-servers/uwsgi/uwsgi-2.0.17.1.ebuild 
b/www-servers/uwsgi/uwsgi-2.0.17.1.ebuild
index 623312528d1..54a77a5c73b 100644
--- a/www-servers/uwsgi/uwsgi-2.0.17.1.ebuild
+++ b/www-servers/uwsgi/uwsgi-2.0.17.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -7,7 +7,7 @@ PYTHON_COMPAT=( python2_7 python3_{4,5,6,7} pypy )
 PYTHON_REQ_USE="threads(+)"
 
 RUBY_OPTIONAL="yes"
-USE_RUBY="ruby22 ruby23 ruby24"
+USE_RUBY="ruby23 ruby24"
 
 PHP_EXT_INI="no"
 PHP_EXT_NAME="dummy"

diff --git a/www-servers/uwsgi/uwsgi-2.0.17.ebuild 
b/www-servers/uwsgi/uwsgi-2.0.17.ebuild
index 1ffb13273bc..799cf972f8b 100644
--- a/www-servers/uwsgi/uwsgi-2.0.17.ebuild
+++ b/www-servers/uwsgi/uwsgi-2.0.17.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=5
@@ -7,7 +7,7 @@ PYTHON_COMPAT=( python2_7 python3_{4,5,6} pypy )
 PYTHON_REQ_USE="threads(+)"
 
 RUBY_OPTIONAL="yes"
-USE_RUBY="ruby22 ruby23 ruby24"
+USE_RUBY="ruby23 ruby24"
 
 PHP_EXT_INI="no"
 PHP_EXT_NAME="dummy"

Reply via email to