diff options
-rw-r--r-- | user/uwsgi/APKBUILD | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/user/uwsgi/APKBUILD b/user/uwsgi/APKBUILD new file mode 100644 index 000000000..1e10be30d --- /dev/null +++ b/user/uwsgi/APKBUILD @@ -0,0 +1,86 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=uwsgi +pkgver=2.0.17.1 +pkgrel=0 +pkgdesc="Web application server" +url="https://projects.unbit.it/uwsgi" +arch="all" +options="!check" # Requires unpackaged `cppcheck`. +license="GPL-2.0-only" +depends="" +makedepends="libxml2-dev openssl-dev zlib-dev + perl-dev php7-dev php7-embed python3-dev ruby-dev" +subpackages="" +# Keep psgi at the end for the CFLAGS hack. +_plugins="asyncio cgi corerouter http php python rack psgi" +for _plugin in $_plugins; do + subpackages="$subpackages $pkgname-$_plugin" +done +source="https://projects.unbit.it/downloads/uwsgi-$pkgver.tar.gz" + +build() { + cd "$builddir" + + echo 'plugin_dir = /usr/lib/uwsgi/plugins' >> buildconf/core.ini + echo 'plugin_build_dir = .' >> buildconf/core.ini + + python3 uwsgiconfig.py --build core + + for _plugin in $_plugins; do + [ $_plugin != "psgi" ] || export CFLAGS="-D_GNU_SOURCE -include /usr/include/setjmp.h" + python3 uwsgiconfig.py --plugin plugins/$_plugin core + done +} + +check() { + cd "$builddir" + python3 uwsgiconfig.py --check +} + +package() { + cd "$builddir" + install -D -m755 "$builddir"/uwsgi "$pkgdir"/usr/bin/uwsgi +} + +_plugpack() { + pkgdesc="$pkgdesc ($2 plugin)" + depends="" + + install -D -m755 "$builddir"/$1_plugin.so \ + "$subpkgdir"/usr/lib/uwsgi/plugins/$1_plugin.so +} + +asyncio() { + _plugpack asyncio "Python asyncio" +} + +cgi() { + _plugpack cgi "CGI" +} + +corerouter() { + _plugpack corerouter "Core router" +} + +http() { + _plugpack http "HTTP server" +} + +php() { + _plugpack php "PHP" +} + +psgi() { + _plugpack psgi "PSGI" +} + +python() { + _plugpack python "Python 3" +} + +rack() { + _plugpack rack "Ruby Rack" +} + +sha512sums="10d357961fde3a3f5f8e77986cc647313f95a33243e24c2afc482fce21df68a8ae48f90e7b5b76d7edc3cf8fd474d99823d6d60ef7477349abc65a319222f11b uwsgi-2.0.17.1.tar.gz" |