summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTiziano Müller <dev-zero@gentoo.org>2012-09-10 09:47:52 +0000
committerTiziano Müller <dev-zero@gentoo.org>2012-09-10 09:47:52 +0000
commit90eb576d9f3007bd6fbc98cfbd2efd7bf6d427c6 (patch)
tree1eae2a2fc703e7eb4db8df31b62cf489a6d1cdbe /www-servers
parentRestore mask net-libs/telepathy-qt[farstream] otherwise repoman will scream. (diff)
downloadhistorical-90eb576d9f3007bd6fbc98cfbd2efd7bf6d427c6.tar.gz
historical-90eb576d9f3007bd6fbc98cfbd2efd7bf6d427c6.tar.bz2
historical-90eb576d9f3007bd6fbc98cfbd2efd7bf6d427c6.zip
Version bump.
Package-Manager: portage-2.1.11.9/cvs/Linux x86_64
Diffstat (limited to 'www-servers')
-rw-r--r--www-servers/uwsgi/ChangeLog9
-rw-r--r--www-servers/uwsgi/Manifest11
-rw-r--r--www-servers/uwsgi/files/1.2.6-fixed-typecasting.patch21
-rw-r--r--www-servers/uwsgi/uwsgi-1.2.6.ebuild308
4 files changed, 343 insertions, 6 deletions
diff --git a/www-servers/uwsgi/ChangeLog b/www-servers/uwsgi/ChangeLog
index 8ca0b8d23e41..6460d2603c43 100644
--- a/www-servers/uwsgi/ChangeLog
+++ b/www-servers/uwsgi/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for www-servers/uwsgi
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/www-servers/uwsgi/ChangeLog,v 1.27 2012/08/27 08:34:07 ultrabug Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-servers/uwsgi/ChangeLog,v 1.28 2012/09/10 09:47:52 dev-zero Exp $
+
+*uwsgi-1.2.6 (10 Sep 2012)
+
+ 10 Sep 2012; Tiziano Müller <dev-zero@gentoo.org>
+ +files/1.2.6-fixed-typecasting.patch, +uwsgi-1.2.6.ebuild:
+ Version bump.
27 Aug 2012; Ultrabug <ultrabug@gentoo.org> files/uwsgi.initd,
files/uwsgi.initd-r1:
@@ -141,4 +147,3 @@
+files/uwsgi-0.9.5-respect_flags.patch, +metadata.xml:
initial ebuild. thanks to Arfrever Frehtes Taifersar Arahesis for sane
python ABI support. closes #314931
-
diff --git a/www-servers/uwsgi/Manifest b/www-servers/uwsgi/Manifest
index 5cc8deeee6ad..5afccad3a0ac 100644
--- a/www-servers/uwsgi/Manifest
+++ b/www-servers/uwsgi/Manifest
@@ -3,6 +3,7 @@ Hash: SHA256
AUX 1.1.2-threaded-php.patch 1098 SHA256 e5f03fcdf2ebf7d2867b21e640f2c44f23da169108b2ea964e96fea44152d49b SHA512 d213c827710b75c1e4e1a1ad657515a7d2cacf02fa1f2f309d5cf986b3650ea20529077e2d2df5a22ed6edf60e43e755378ec6ea556c43c844cf534552239d75 WHIRLPOOL 1b0e42b83aa45a3bb17edaf4f9d7b260bc9dae8d7e8f06a38c97045361e64ddd9e774a1df1244e521c7973b27d27d40cbca4d8d2b16d0f9765ca2daa00cc3be8
AUX 1.2.3-pyerl.patch 1015 SHA256 1da74cb8d108f46c4faa39548f73de2f74849dde81d1012b71c7c91ab939596b SHA512 b298feccb2604b9459a15699d786c26be9d830f88a4a00beca69fba3ff0d5d78cc239e6dcce51da32121c8bb4d72af41a6e57e5594a3005cfceb4feebbffaed2 WHIRLPOOL 60ff1374e1f13c9ffaa65996a24d87d86d64d7f4edb9d1378d0b7287bfeb285d5123da4532c6e0fb022ff78d80a6b5eba9d6bb8c36536145d4a11cbdecee23f6
+AUX 1.2.6-fixed-typecasting.patch 740 SHA256 491e9b4e6c7af6bdc38224c5b54ed7ffe86e729f4e0ae4ce762e0b4fbe4a43fa SHA512 e49f905b75c8d859aaf193944f2d563143c4e8f17563c2e924d743f55a2a20d54e09f8f91fe1243aa25ac21748e5bd8180b5f2571b00827322d1bf5e49f78442 WHIRLPOOL 785e60e111efb63d02ef2ba574acf7a0cfb1d72667584292577247def67e5d3a1c8d047f4592f71301558f39f438a782a58c2629bf1c829e00b0471c5042641d
AUX 42_mod_uwsgi-r1.conf 248 SHA256 40ef0a3916eba8f1a87828911571e9d8bf838f38f050d67df1662aca11ba6c91 SHA512 84babaa9aa5cc1a52235f1b4febe3d9dd1a90e7e28c54499d78219727a222e2c2f4db001d898e0fdc46718ea582ce3fc98d0fbbf94b1730f4a139555225b4538 WHIRLPOOL d96ef19fce89fbb36e1bc7701b2fb7424945f5da9d7eee071de74c9975463da9ba5be0a1a855e75c39705317ce0eef5116e7733d74091bfd984d3c1f189edea3
AUX 42_mod_uwsgi.conf 159 SHA256 b759712baa7b8abab2ffd56c3cbc970cb9189ef1efa3f3aa154a963dc67ba861 SHA512 14eb8d58f814657da9d28215d4096373a26e5bdd9e3953bd37dc6008f42b04ca99ac5aa552bec36d1d8503e7ae54c78fcc00c1f6fe9d6daf983764bae07b802f WHIRLPOOL ec352b176c89441532378446cb909b3383054afbbee5d4f24c801eb5716d1143737c098bd25be46aa4399e54937c6b786fdca3e0343b0b4c91442456ba565f79
AUX uwsgi-1.0.2.1-no-werror.patch 567 SHA256 64ee1684a12ea64b6b6892209c77863061a54cc752156131c6fc55f7f8785153 SHA512 8ebd116d1fd75385f13cf072ac44dfb0055f789dd7fc1f37433b6dd98c62cb439b2fbf99fe891d919139f93404f5017e3600093d8dc21c8463f0f50e3bb72460 WHIRLPOOL 0de33344956bd2723f364da07ad6a48adca3ffc43e53cad9ee70c92707ea6f9b47004f1fdd8b14318ba39d0995085986a3d606e26d07fd293d71ebdab17eaf17
@@ -14,16 +15,18 @@ DIST uwsgi-1.0.2.1.tar.gz 465250 SHA256 78280b57a970db7842e4481f8b00f13d011f27b3
DIST uwsgi-1.2.3.tar.gz 512385 SHA256 1f9f6047468272708241780597014ed00d93919a384e81b30e65167fb2c2e129 SHA512 d6f673877cc5e6ae48effe2c3579ca59ef2579c57ed2d647513451b4411304a366ae81e5aae772014ca6b48da652a056ef7cb48576ad144f2e11bc6ca5fbef50 WHIRLPOOL 06dc820b60f837977d2c9a3689fa948cc14302f4c5cf78297c75bd358e888a98403c2d44ca4d3e4460853fa5496fe66295cb91d548b57dd29273b6843c5c965e
DIST uwsgi-1.2.4.tar.gz 514048 SHA256 294306d249300b531bfc7abaa706926d0ed87ccc2e7248afec50b425aef39ebb SHA512 cf75b4da66fe44435d0f2bd8c7d959d30a9409c5dbf5136ec4b1805d368ff254dc22f8777affb88d1f0a63a98a34480ae0cdf25fbe0dd2419834cfc7c55692ae WHIRLPOOL cb9e70441323de5519643b91e2415fb72ab53cd8a0064792eca0ba9de05f55b9a7752244287ba5460adb18b20501aa38a0163a1320162d0a68d8b2ce42aa315f
DIST uwsgi-1.2.5.tar.gz 515481 SHA256 e208a90f335725589361ac7f7e548ddf7a906dbe6bd50e83b1c5fc9884976ee4 SHA512 85bc94a80c235f2a35f0d8c7118eac8d98ea142f6ad584addbe4ffca011e61e158454202d69b9accda3319e3237d9c38b45c647c248b0ef2f2e75dc76256848a WHIRLPOOL e05edf639b22586be4dc6d7320b4fb75e448cbd57a0fd846ab0e2a1b6d19f400c72c0b40f64753b32cfe8fd35cb008ef38e8dff4423f004c047d5af08e143806
+DIST uwsgi-1.2.6.tar.gz 515869 SHA256 49d2fbedbd42b3c95a684f7ddf43302f881297f3614c7edd0af4a4c44e2032a5 SHA512 79297cc3d348e6fbbd1d7da5fb4d03844cc14ce36411ce55d6951e8f0c50614d87c3038de6986589362e9e84543aec9754a871c52002065d5f17a27a7ad32f01 WHIRLPOOL cdd74205572f0fce1390f3335e4f3cd6413d3cd5be9fb91a259a38c7330fe6b53057985e3ed6b8a67f6fba5339609506be4fbf2ae10251518406d6b02c831f09
EBUILD uwsgi-1.0.2.1.ebuild 1891 SHA256 1078d427a2cd4abe8a7ed4a5ec4a477fea989c2b75e20d5a27128032359c61d5 SHA512 857cd70e9002e7f1ebb521ced5453cffd43f4ff5805363ebfecd10d929ec6a4ab0283f51ceb5563e531d371a190a16b7d8ab162a56715c8aac5a0ee1e62dd5ee WHIRLPOOL 6fcf9f03d8325ddc061ac95970568a02d2d86d883b3b936acda41368c6b9d7b806f37c9701a10a70375cd577608fe444fb6405785a8dd9605fbaf72b03196b3c
EBUILD uwsgi-1.2.3-r4.ebuild 8580 SHA256 b639a675168ac9dae4179914ef46106f0c39a15884811ed1f0451c29e7ba1208 SHA512 0e5e7735e15d3168dfe79d3ec1538f7714885c7c13e5361724f94a7d4a5e8fa76eb3bb55c37d3fc9a62606d7724e5defd4df1a3edc5b7db4f049b93de1ecc1fe WHIRLPOOL 353344467d34eb7f7c3cb02e4ad5f98c3a3d543025615d7d894146401c47e8e3052aaa62ae16708591c157e008914932bc49b451e7494b659b99e341b556cadd
EBUILD uwsgi-1.2.4.ebuild 8577 SHA256 88bcfb8ecf1c866a6b3ca4e88019a8cdb348fa8a5311f92563ffb0f8232ba227 SHA512 fc464cdc3f0d1bd64af6401aeb893c6e248ac02b9ad88dd4c28d64b89c660e25417a7c6b30cd3f782c0e4083d52e8c3aa89ee50e8cf786d6c0a86e2abcfc4353 WHIRLPOOL f230d2502f301a9e285effd02c374941163441b9028b618f4fdbc83e105d241e7d035da916dbe5549082b122252189256c7668488b7be25b215b4c2cd402fb85
EBUILD uwsgi-1.2.5.ebuild 8610 SHA256 8bddca1e7fafbd7201c22d0527a1f34c0a9ced7f0e6909cfeb196832217f4d50 SHA512 746b61eece930d74ed174a7ee74fa1e90632a9ced239e62409784a63a178c290053514339b68c11003ea627e9e541c6476c1e3916526d21bbd37236cc52395d3 WHIRLPOOL a5f8bcf17cb634946019f051267798e12919e1a40001fb476b5d531d18ad40d0db80b210444fdd8847eacb0eb504de68f50bb632c75421bfd4d8d7bb9c43166d
-MISC ChangeLog 5291 SHA256 42fb03f838909e544a5953bc58c70e07c382efe860574a1fcabcc605211c0bab SHA512 f6ec9c7752f8178812dc9fa8d207a2bfbb9f81603622d0a07b2ee022e630d17258b6e6f3bd2a3f87692ccb662c386d27c69e017904c601c84f961ba50ee58517 WHIRLPOOL 1c6c180bccb3c84dc452da83f27527315e3c0dc99a1d91a3f96d3b54d70ba2ab37e1d6155a386cc8f086408ac6ce2e4db202bcf14da8295dcde43188e0d7b88b
+EBUILD uwsgi-1.2.6.ebuild 8658 SHA256 98585a8e43e7af3f9bf516994fc7778e817a1857bca75658eacde9d1389c6033 SHA512 9b53d4ade90665886881c02869b8619e4128fcdeaa3340efec02b8dc645de3f99cba69a827cc4b0273dc8c94af72c2bc9ec0021f7f76616c14f21e6f41275b24 WHIRLPOOL b18455b534307639fe9b37fd54d3047c5ebbbceaa8438688bb6d89f9b4b63ccf4c0b03590e23ba1c6d2fa70224ce5bb5b135c87d74df0389dfb07407784569aa
+MISC ChangeLog 5449 SHA256 e4784d7665a1908a2f668dac4c81f249ca6e43e970f3dd091501af98c29826c9 SHA512 2df1a84aa08ac5acfb9e1f46d79105b4128edb74bdd438a953f85cd442a122d27bbb3ab036a108ea6a4fa399b30653ebf4c2a4c590def898e68bc5ac347dbc7f WHIRLPOOL 45eed7f094eb64fd7b4f7de4642744642fc9e0c7dd80413e7178aac27032b19e6a3d33c1a7d5b2a2f1056da3f5a2d68907987d67b3869fd9c0c4aa7ecac7729b
MISC metadata.xml 1741 SHA256 9aeaf0a71eec68f74f9aeb0f5526aa9b504527c4a79486ed184e2ec9fa45fc10 SHA512 615d7b29f89c7441baa0022c7fae48d4b88f9da77b5fcb897d22a21bc92f09ed3492f7111978b97eecb4404b96c0bc5cf3addb9226b678bcfc0788770522249f WHIRLPOOL 478fbc2926280d69388bb2f59f179f89519499bb59fbb8b0f82836707878a5d2428f108cdeb407541f5677f2366fc8059fc567fa46cd56939143caee2fa2d3ec
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (GNU/Linux)
-iF4EAREIAAYFAlA7MQsACgkQKiQSS7ZY+hOf5wEAwPAcg3liSUC9IPh5Wk75HSba
-aSgNDGsh19HV+wZxQtsA/jeWHyujS0ATo/53BCJXpQr58NTi0bHtnrUk0dC9zvj5
-=9GaG
+iEYEAREIAAYFAlBNt04ACgkQGwVqY66cHjCq0ACfe0cc136mut5cSROJ3tsMKUl+
+duIAnj+tIiZruFdf6jTcykUEFZhMXAME
+=tNOr
-----END PGP SIGNATURE-----
diff --git a/www-servers/uwsgi/files/1.2.6-fixed-typecasting.patch b/www-servers/uwsgi/files/1.2.6-fixed-typecasting.patch
new file mode 100644
index 000000000000..b9dfec7e2260
--- /dev/null
+++ b/www-servers/uwsgi/files/1.2.6-fixed-typecasting.patch
@@ -0,0 +1,21 @@
+
+# HG changeset patch
+# User roberto@quantal64
+# Date 1347021464 -7200
+# Node ID 4d4686fdb3ba44fd5083f61ceb27f820d7a79937
+# Parent 88dc416d99e40ddacfb7ccb4d620fe50b9d9319c
+fixed typecasting
+
+diff -r 88dc416d99e4 -r 4d4686fdb3ba plugins/router_uwsgi/router_uwsgi.c
+--- a/plugins/router_uwsgi/router_uwsgi.c gio set 06 16:32:49 2012 +0200
++++ b/plugins/router_uwsgi/router_uwsgi.c ven set 07 14:37:44 2012 +0200
+@@ -54,7 +54,7 @@
+
+ int post_fd = wsgi_req->poll.fd;
+ if (wsgi_req->async_post) {
+- post_fd = fileno(wsgi_req->async_post);
++ post_fd = fileno((FILE *)wsgi_req->async_post);
+ }
+
+ if (uwsgi_send_message(uwsgi_fd, uh->modifier1, uh->modifier2, wsgi_req->buffer, wsgi_req->uh.pktsize, post_fd, wsgi_req->post_cl, 0) < 0) {
+
diff --git a/www-servers/uwsgi/uwsgi-1.2.6.ebuild b/www-servers/uwsgi/uwsgi-1.2.6.ebuild
new file mode 100644
index 000000000000..2771d1662a6f
--- /dev/null
+++ b/www-servers/uwsgi/uwsgi-1.2.6.ebuild
@@ -0,0 +1,308 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/www-servers/uwsgi/uwsgi-1.2.6.ebuild,v 1.1 2012/09/10 09:47:52 dev-zero Exp $
+
+EAPI="4"
+PYTHON_DEPEND="python? *"
+PYTHON_MODNAME="uwsgidecorators"
+SUPPORT_PYTHON_ABIS="1"
+RESTRICT_PYTHON_ABIS="*-jython 2.7-pypy-*"
+USE_RUBY="ruby18 ree18 ruby19"
+RUBY_OPTIONAL="yes"
+PHP_EXT_NAME="dummy"
+PHP_EXT_INI="no"
+USE_PHP="php5-3 php5-4" # deps must be registered separately below
+PHP_EXT_OPTIONAL_USE="php"
+
+MY_P="${P/_/-}"
+
+inherit apache-module eutils python multilib pax-utils php-ext-source-r2 ruby-ng
+
+DESCRIPTION="uWSGI server for Python web applications"
+HOMEPAGE="http://projects.unbit.it/uwsgi/"
+SRC_URI="http://projects.unbit.it/downloads/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="apache2 +caps +carbon cgi debug erlang gevent graylog2 json ldap lua +nagios pam perl +pcre php +python rrdtool rsyslog ruby spooler sqlite syslog +xml yaml zeromq"
+REQUIRED_USE="|| ( cgi erlang lua perl php python ruby )"
+
+# util-linux is required for libuuid when requesting zeromq support
+CDEPEND="caps? ( sys-libs/libcap )
+ json? ( dev-libs/jansson )
+ erlang? ( dev-lang/erlang )
+ gevent? ( >=dev-python/gevent-1.0_beta2 )
+ graylog2? ( sys-libs/zlib )
+ ldap? ( net-nds/openldap )
+ lua? ( dev-lang/lua )
+ pcre? ( dev-libs/libpcre )
+ perl? ( dev-lang/perl )
+ php? (
+ php_targets_php5-3? ( dev-lang/php:5.3[embed] )
+ php_targets_php5-4? ( dev-lang/php:5.4[embed] )
+ )
+ ruby? ( $(ruby_implementations_depend) )
+ sqlite? ( dev-db/sqlite:3 )
+ rsyslog? ( app-admin/rsyslog )
+ xml? ( dev-libs/libxml2 )
+ yaml? ( dev-libs/libyaml )
+ zeromq? ( net-libs/zeromq sys-apps/util-linux )"
+DEPEND="${CDEPEND}
+ virtual/pkgconfig"
+RDEPEND="${CDEPEND}
+ rrdtool? ( net-analyzer/rrdtool )"
+
+S="${WORKDIR}/${MY_P}"
+APXS2_S="${S}/apache2"
+APACHE2_MOD_CONF="42_mod_uwsgi-r1 42_mod_uwsgi"
+
+want_apache2_2
+
+use_true_false() {
+ if use $1 ; then
+ echo "true"
+ else
+ echo "false"
+ fi
+}
+
+src_unpack() {
+ default
+}
+
+pkg_setup() {
+ depend.apache_pkg_setup
+ python_pkg_setup
+}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}/1.1.2-threaded-php.patch" \
+ "${FILESDIR}/1.2.3-pyerl.patch" \
+ "${FILESDIR}/${PV}-fixed-typecasting.patch"
+
+ sed -i \
+ -e "s|'-O2', ||" \
+ -e "s|'-Werror', ||" \
+ -e "s|uc.get('plugin_dir')|uc.get('plugin_build_dir')|" \
+ uwsgiconfig.py || die "sed failed"
+
+ sed -i \
+ -e 's|python\([0-9].[0-9]\)-config|python-config-\1|' \
+ plugins/python/uwsgiplugin.py || die "sed failed"
+
+ sed -i \
+ -e "s|/lib|/$(get_libdir)|" \
+ plugins/php/uwsgiplugin.py || die "sed failed"
+}
+
+src_configure() {
+ local plugins=""
+ use carbon && plugins+=", carbon"
+ use graylog2 && plugins+=", graylog2"
+ use nagios && plugins+=", nagios"
+ use pam && plugins+=", pam"
+ use rrdtool && plugins+=", rrdtool"
+ use rsyslog && plugins+=", rsyslog"
+ use syslog && plugins+=", syslog"
+
+ cat > "buildconf/gentoo.ini" << EOF
+[uwsgi]
+xml = $(use_true_false xml)
+ini = true
+yaml = $(use_true_false yaml)
+json = $(use_true_false json)
+sqlite3 = $(use_true_false sqlite)
+zeromq = $(use_true_false zeromq)
+snmp = true
+sctp = false
+spooler = true
+embedded = true
+udp = true
+multicast = true
+threading = true
+sendfile = true
+minterpreters = true
+async = true
+evdis = false
+ldap = $(use_true_false ldap)
+pcre = $(use_true_false pcre)
+debug = $(use_true_false debug)
+unbit = false
+xml_implementation = libxml2
+yaml_implementation = libyaml
+malloc_implementation = libc
+plugins =
+bin_name = uwsgi
+append_version =
+plugin_dir = /usr/$(get_libdir)/uwsgi
+plugin_build_dir = ${T}/plugins
+embedded_plugins = ping, cache, rpc, fastrouter, http, ugreen, signal, logsocket, router_uwsgi, router_redirect, router_basicauth, zergpool, redislog ${plugins}
+as_shared_library = false
+
+locking = auto
+event = auto
+timer = auto
+filemonitor = auto
+
+embed_files =
+
+embed_config =
+[python]
+paste = true
+web3 = true
+EOF
+ use caps || sed -i -e 's|sys/capability.h|DISABLED|' uwsgiconfig.py || die "sed failed"
+ use zeromq || sed -i -e 's|uuid/uuid.h|DISABLED|' uwsgiconfig.py || die "sed failed"
+}
+
+each_ruby_compile() {
+ cd "${WORKDIR}/${MY_P}"
+
+ UWSGICONFIG_RUBYPATH="${RUBY}" python uwsgiconfig.py --plugin plugins/rack gentoo rack_${RUBY##*/} || die "building plugin for ${RUBY} failed"
+
+ if [[ "${RUBY}" == *ruby19 ]] ; then
+ UWSGICONFIG_RUBYPATH="${RUBY}" python uwsgiconfig.py --plugin plugins/fiber gentoo || die "building fiber plugin for ${RUBY} failed"
+ fi
+}
+
+install_python_lib() {
+ insinto $(python_get_sitedir)
+ doins uwsgidecorators.py
+}
+
+src_compile() {
+ python uwsgiconfig.py --build gentoo || die "building uwsgi failed"
+
+ mkdir -p "${T}/plugins"
+
+ if use erlang ; then
+ python uwsgiconfig.py --plugin plugins/erlang gentoo || die "building plugin for erlang failed"
+ fi
+
+ if use lua ; then
+ python uwsgiconfig.py --plugin plugins/lua gentoo || die "building plugin for lua failed"
+ fi
+
+ if use perl ; then
+ python uwsgiconfig.py --plugin plugins/psgi gentoo || die "building plugin for perl failed"
+ fi
+
+ if use php ; then
+ for s in $(php_get_slots); do
+ UWSGICONFIG_PHPDIR="/usr/$(get_libdir)/${s}" python uwsgiconfig.py --plugin plugins/php gentoo ${s/.} || die "building plugin for ${s} failed"
+ done
+ fi
+
+ if use python ; then
+ for a in ${PYTHON_ABIS} ; do
+ python${a} uwsgiconfig.py --plugin plugins/python gentoo python${a/.} || die "building plugin for python-${a} failed"
+
+ if use gevent ; then
+ python${a} uwsgiconfig.py --plugin plugins/gevent gentoo gevent${a/.} || die "building plugin for gevent-support in python-${a} failed"
+ fi
+ if use erlang ; then
+ python${a} uwsgiconfig.py --plugin plugins/pyerl gentoo pyerl${a/.} || die "building plugin for erlang-support in python failed"
+ fi
+ done
+ fi
+
+ if use ruby ; then
+ ruby-ng_src_compile
+ fi
+
+ if use spooler ; then
+ python uwsgiconfig.py --plugin plugins/spooler gentoo || die "building plugin for spooler failed"
+ fi
+
+ if use cgi ; then
+ python uwsgiconfig.py --plugin plugins/cgi gentoo || die "building plugin for cgi failed"
+ 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() {
+ dobin uwsgi
+ pax-mark m "${D}"/usr/bin/uwsgi
+
+ insinto /usr/$(get_libdir)/uwsgi
+ doins "${T}/plugins"/*.so
+
+ use cgi && dosym uwsgi /usr/bin/uwsgi_cgi
+ use erlang && dosym uwsgi /usr/bin/uwsgi_erlang
+ use lua && dosym uwsgi /usr/bin/uwsgi_lua
+ use perl && dosym uwsgi /usr/bin/uwsgi_psgi
+
+ if use php ; then
+ for s in $(php_get_slots); do
+ dosym uwsgi /usr/bin/uwsgi_${s/.}
+ done
+ fi
+
+ if use python ; then
+ python_execute_function install_python_lib
+ for a in ${PYTHON_ABIS} ; do
+ dosym uwsgi /usr/bin/uwsgi_python${a/.}
+ done
+ 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-r1 uwsgi
+ newconfd "${FILESDIR}"/uwsgi.confd-r1 uwsgi
+ keepdir /etc/"${PN}".d
+ use spooler && keepdir /var/spool/"${PN}"
+}
+
+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 the newest and not considered ready for production yet."
+ fi
+
+ elog "Append the following options to the uwsgi call to load the respective language plugin:"
+ use cgi && elog " '--plugins cgi' for cgi"
+ use erlang && elog " '--plugins erlang' for erlang"
+ use lua && elog " '--plugins lua' for lua"
+ use perl && elog " '--plugins psgi' for perl"
+
+ if use php ; then
+ for s in $(php_get_slots); do
+ elog " '--plugins ${s/.}' for ${s}"
+ done
+ fi
+
+ if use python ; then
+ for a in ${PYTHON_ABIS} ; do
+ elog " '--plugins python${a/.}' for python-${a}"
+ use gevent && elog " '--plugins python${a/.},gevent${a/.}' for gevent support in python-${a}"
+ use erlang && elog " '--plugins python${a/.},erlang,pyerl${a/.}' for erlang support in python-${a}"
+ done
+ fi
+
+ if use ruby ; then
+ for ruby in $USE_RUBY; do
+ use ruby_targets_${ruby} && elog " '--plugins rack_${ruby/.}' for ${ruby}"
+ if [[ "${ruby}" == *ruby19 ]] ; then
+ elog " '--plugins fibre' for ruby-1.9 fibres"
+ fi
+ done
+ fi
+}