diff options
Diffstat (limited to 'community/uwsgi/PKGBUILD')
-rw-r--r-- | community/uwsgi/PKGBUILD | 235 |
1 files changed, 235 insertions, 0 deletions
diff --git a/community/uwsgi/PKGBUILD b/community/uwsgi/PKGBUILD new file mode 100644 index 000000000..093f938c0 --- /dev/null +++ b/community/uwsgi/PKGBUILD @@ -0,0 +1,235 @@ +# $Id: PKGBUILD 94832 2013-07-30 22:31:20Z dwallace $ +# Maintainer: Daniel Wallace <danielwallace at gtmanfred dot com> +# Contributor: Valentin Hăloiu <vially.ichb+aur@gmail.com> +# Contributor: Angel Velasquez <angvp@archlinux.org> +# Contributor: Kevin Zuber <uKev@knet.eu> +# Contributor: Vsevolod Balashov <vsevolod@balashov.name> + +pkgbase=uwsgi +pkgname=(uwsgi + uwsgi-plugin-common + uwsgi-plugin-rack + uwsgi-plugin-python2 + uwsgi-plugin-python + uwsgi-plugin-nagios + uwsgi-plugin-router + uwsgi-plugin-admin + uwsgi-plugin-ruby + uswgi-plugin-greenlet + uswgi-plugin-php + uwsgi-plugin-carbon + uwsgi-plugin-rrdtool + uwsgi-plugin-erlang + uwsgi-plugin-pam + uwsgi-plugin-jvm + uwsgi-plugin-zergpool + ) +pkgver=1.9.14 +pkgrel=1 +arch=(i686 x86_64) +url="http://projects.unbit.it/$pkgbase" +license=(GPL2) +conflicts=(python-$pkgbase) +makedepends=(gcc python python2 ruby python2-greenlet php curl libxml2 libyaml + perl lua51 pcre libedit openssl bzip2 gmp erlang pam java-environment=7 + jansson) +source=(http://projects.unbit.it/downloads/$pkgbase-$pkgver.tar.gz + archlinux.ini + tmpfilesd + uwsgi@.service + uwsgi@.socket + uwsgi_fix_rpath.patch + uwsgi_ruby20_compatibility.patch + uwsgi_trick_chroot.patch) + +prepare(){ + cd $srcdir/$pkgbase-$pkgver + cp $srcdir/archlinux.ini buildconf/archlinux.ini + sed -i 's/LIBS .*-lphp5.*/LIBS = []/' plugins/php/uwsgiplugin.py + for patch in uwsgi_fix_rpath.patch uwsgi_ruby20_compatibility.patch uwsgi_trick_chroot.patch; do + patch -Np1 -i $srcdir/$patch + done + rm -rf plugins/ruby + mv plugins/ruby{19,} + cp -a plugins/python{,2} + sed -i 's:\(ruby\)19:\1:' plugins/ruby/uwsgiplugin.py + +} +build() { + pushd $srcdir/$pkgbase-$pkgver + python uwsgiconfig.py --build archlinux.ini +} + +package_uwsgi() { + backup=(etc/uwsgi/archlinux.ini) + pkgdesc="A fast, self-healing and developer/sysadmin-friendly application container server coded in pure C" + depends=(python2 libxml2 jansson libyaml systemd) + install=uwsgi.install + cd $srcdir/$pkgbase-$pkgver + install -Dm755 uwsgi $pkgdir/usr/bin/uwsgi + install -Dm644 $srcdir/archlinux.ini $pkgdir/etc/uwsgi/archlinux.ini + install -Dm644 $srcdir/uwsgi@.service $pkgdir/usr/lib/systemd/system/uwsgi@.service + install -Dm644 $srcdir/uwsgi@.socket $pkgdir/usr/lib/systemd/system/uwsgi@.socket + install -Dm755 systemd_logger_plugin.so $pkgdir/usr/lib/uwsgi/systemd_logger_plugin.so + install -Dm644 $srcdir/archlinux.ini $pkgdir/etc/uwsgi/archlinux.ini + install -Dm644 $srcdir/tmpfilesd $pkgdir/usr/lib/tmpfiles.d/uwsgi.conf +} + +package_uwsgi-plugin-common(){ + depends=(uwsgi) + pkgdesc="Common plugins for uWSGI" + install -dm755 $pkgdir/usr/bin + for plugin in cache cgi rpc ugreen; do + ln -s uwsgi $pkgdir/usr/bin/uwsgi_${plugin} + install -Dm755 $pkgbase-$pkgver/${plugin}_plugin.so $pkgdir/usr/lib/uwsgi/${plugin}_plugin.so + done +} + +package_uwsgi-plugin-rack(){ + depends=(ruby uwsgi-plugin-common) + pkgdesc="Ruby rack plugin" + install -dm755 $pkgdir/usr/bin + ln -s uwsgi $pkgdir/usr/bin/uwsgi_rack + install -Dm755 $pkgbase-$pkgver/rack_plugin.so $pkgdir/usr/lib/uwsgi/rack_plugin.so +} + +package_uwsgi-plugin-python2(){ + depends=(uwsgi-plugin-common) + pkgdesc="Plugin for Python2 support" + cd $srcdir/$pkgbase-$pkgver + python2 uwsgiconfig.py --plugin plugins/python archlinux python + install -dm755 $pkgdir/usr/bin + ln -s uwsgi $pkgdir/usr/bin/uwsgi_python2 + install -Dm755 $srcdir/$pkgbase-$pkgver/python_plugin.so $pkgdir/usr/lib/uwsgi/python2_plugin.so +} + +package_uwsgi-plugin-python(){ + depends=(python uwsgi-plugin-common) + pkgdesc="Plugin for Python support" + install -dm755 $pkgdir/usr/bin + cd $srcdir/$pkgbase-$pkgver + python3 uwsgiconfig.py --plugin plugins/python archlinux python + ln -s uwsgi $pkgdir/usr/bin/uwsgi_python + install -Dm755 $srcdir/$pkgbase-$pkgver/python_plugin.so $pkgdir/usr/lib/uwsgi/python_plugin.so +} + +package_uwsgi-plugin-nagios(){ + depends=( uwsgi-plugin-common) + pkgdesc="Plugin for Nagios support" + install -dm755 $pkgdir/usr/bin + ln -s uwsgi $pkgdir/usr/bin/uwsgi_nagios + install -Dm755 $pkgbase-$pkgver/nagios_plugin.so $pkgdir/usr/lib/uwsgi/nagios_plugin.so +} + +package_uwsgi-plugin-router(){ + depends=( uwsgi-plugin-common) + pkgdesc="Plugin for Router support" + install -dm755 $pkgdir/usr/lib/uwsgi + install -dm755 $pkgdir/usr/bin + cd $pkgbase-$pkgver + for file in *router*_plugin.so; do + install -Dm755 $file $pkgdir/usr/lib/uwsgi/$file + ln -s uwsgi $pkgdir/usr/bin/uwsgi_${file%_plugin.so} + done +} + +package_uwsgi-plugin-admin(){ + depends=( uwsgi-plugin-common) + pkgdesc="Plugin for Admin support" + install -dm755 $pkgdir/usr/bin + ln -s uwsgi $pkgdir/usr/bin/uwsgi_admin + install -Dm755 $pkgbase-$pkgver/admin_plugin.so $pkgdir/usr/lib/uwsgi/admin_plugin.so +} + +package_uwsgi-plugin-ruby(){ + depends=(ruby uwsgi-plugin-common) + pkgdesc="Plugin for Ruby support" + install -dm755 $pkgdir/usr/bin + ln -s uwsgi $pkgdir/usr/bin/uwsgi_ruby + install -Dm755 $pkgbase-$pkgver/ruby_plugin.so $pkgdir/usr/lib/uwsgi/ruby_plugin.so +} + + +package_uswgi-plugin-lua51(){ + depends=(lua uwsgi-plugin-common) + pkgdesc="Plugin for Lua support" + install -dm755 $pkgdir/usr/bin + install -dm755 $pkgdir/usr/bin + ln -s uwsgi $pkgdir/usr/bin/uwsgi_lua51 + install -Dm755 $pkgbase-$pkgver/lua_plugin.so $pkgdir/usr/lib/uwsgi/lua51_plugin.so +} + +package_uswgi-plugin-greenlet(){ + depends=(python2-greenlet uwsgi-plugin-common) + pkgdesc="Plugin for Python Greenlet support" + cd $srcdir/$pkgbase-$pkgver + python2 uwsgiconfig.py --plugin plugins/greenlet archlinux.ini greenlet + install -dm755 $pkgdir/usr/bin + ln -s uwsgi $pkgdir/usr/bin/uwsgi_greenlet + install -Dm755 greenlet_plugin.so $pkgdir/usr/lib/uwsgi/greenlet_plugin.so +} + +package_uswgi-plugin-php(){ + depends=(uwsgi-plugin-common) + pkgdesc="Plugin for PHP support" + install -dm755 $pkgdir/usr/bin + ln -s uwsgi $pkgdir/usr/bin/uwsgi_php + install -Dm755 $pkgbase-$pkgver/php_plugin.so $pkgdir/usr/lib/uwsgi/php_plugin.so +} + +package_uwsgi-plugin-carbon(){ + depends=(uwsgi-plugin-common) + pkgdesc="Plugin for Carbon support" + install -dm755 $pkgdir/usr/bin + ln -s uwsgi $pkgdir/usr/bin/uwsgi_carbon + install -Dm755 $pkgbase-$pkgver/carbon_plugin.so $pkgdir/usr/lib/uwsgi/carbon_plugin.so +} + +package_uwsgi-plugin-rrdtool(){ + depends=(uwsgi-plugin-common rrdtool) + pkgdesc="Plugin for Rrdtool support" + install -dm755 $pkgdir/usr/bin + ln -s uwsgi $pkgdir/usr/bin/uwsgi_rrdtool + install -Dm755 $pkgbase-$pkgver/rrdtool_plugin.so $pkgdir/usr/lib/uwsgi/rrdtool_plugin.so +} + +package_uwsgi-plugin-erlang(){ + depends=(uwsgi-plugin-common erlang) + pkgdesc="Plugin for Erlang support" + install -dm755 $pkgdir/usr/bin + ln -s uwsgi $pkgdir/usr/bin/uwsgi_erlang + install -Dm755 $pkgbase-$pkgver/erlang_plugin.so $pkgdir/usr/lib/uwsgi/erlang_plugin.so +} + + +package_uwsgi-plugin-pam(){ + depends=(uwsgi-plugin-common) + pkgdesc="Plugin for Pam support" + install -dm755 $pkgdir/usr/bin + ln -s uwsgi $pkgdir/usr/bin/uwsgi_pam + install -Dm755 $pkgbase-$pkgver/pam_plugin.so $pkgdir/usr/lib/uwsgi/pam_plugin.so +} + +package_uwsgi-plugin-jvm(){ + depends=(uwsgi-plugin-common java-runtime=7) + pkgdesc="Plugin for Jvm support" + install -dm755 $pkgdir/usr/bin + ln -s uwsgi $pkgdir/usr/bin/uwsgi_jvm + install -Dm755 $pkgbase-$pkgver/jvm_plugin.so $pkgdir/usr/lib/uwsgi/jvm_plugin.so +} + +package_uwsgi-plugin-zergpool(){ + depends=(uwsgi-plugin-common) + pkgdesc="Plugin for zergpool support" + install -dm755 $pkgdir/usr/bin + ln -s uwsgi $pkgdir/usr/bin/uwsgi_zergpool + install -Dm755 $pkgbase-$pkgver/zergpool_plugin.so $pkgdir/usr/lib/uwsgi/zergpool_plugin.so +} +md5sums=('ec9cf333534604f17ef4e24051d9d65d' + '1816524eb13705c20f6abc00557f4ea9' + 'b05ba1d796e1ea608a40635bc4f3ec67' + '0b79320fbae92715c96086cf51e60bc8' + 'db70315bbc8cb886a278ba59d5fd8d57' + '1a4516d5cdcf5b95b036f4eae2d0c152' + '4d09535ce379c8acd76160f35d5d6b55' + '0c09a52fdb88f08c36a8b380f451ce6d') |