1571 lines
47 KiB
RPMSpec
1571 lines
47 KiB
RPMSpec
# Documentation sources:
|
|
%global commit 3be14d357b7b73a82311db034de034f8c09035e8
|
|
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
|
%global docrepo uwsgi-docs
|
|
|
|
# The default compile options of uwsgi and php disagree in subtle ways,
|
|
# leading to potential crashes when uwsgi loads the php module, and php itself
|
|
# loads certain of its own modules.
|
|
#
|
|
# The "proper" solution for this would be to change the way php is compiled.
|
|
# In the interim, disabling PIE for uwsgi, and enabling PIC for the main
|
|
# uwsgi executable can work around the issue.
|
|
#
|
|
# See https://bugzilla.redhat.com/show_bug.cgi?id=2203863
|
|
%undefine _hardened_build
|
|
|
|
%{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}}
|
|
%{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}}
|
|
|
|
%bcond_with go
|
|
%bcond_without python3
|
|
%bcond_without python3_greenlet
|
|
%bcond_without ruby19
|
|
%bcond_without tuntap
|
|
%bcond_without zeromq
|
|
%bcond_without perl
|
|
%bcond_with perlcoro
|
|
%bcond_without glusterfs
|
|
%bcond_without php
|
|
%bcond_without pq
|
|
%bcond_with gloox
|
|
%bcond_without geoip
|
|
# javapackages-tools retired (apache-ivy orphanage)
|
|
%bcond_with java
|
|
# Fedora httpd includes mod_proxy_uwsgi
|
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1574335
|
|
%bcond_with mod_proxy_uwsgi
|
|
#mono
|
|
%bcond_with mono
|
|
# mongodblibs
|
|
# mongo-cxx-driver-legacy broken in rawhide rhbz#1675407
|
|
%bcond_with mongodblibs
|
|
# v8-314 retired
|
|
%bcond_with v8
|
|
#mongodblibs dependency
|
|
%if %{without mongodblibs}
|
|
%bcond_with gridfs
|
|
%else
|
|
%bcond_without gridfs
|
|
%endif
|
|
|
|
|
|
%global manual_py_compile 1
|
|
|
|
# Turn off byte compilation so it doesn't try
|
|
# to auto-optimize the code in /usr/src/uwsgi
|
|
%if %{manual_py_compile} == 1
|
|
%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g')
|
|
%endif
|
|
|
|
# Set %%__python to the newest possible version
|
|
%if %{with python3}
|
|
%global __python %{__python3}
|
|
%endif
|
|
|
|
Name: uwsgi
|
|
Version: 2.0.23
|
|
Release: 2
|
|
Summary: Fast, self-healing, application container server
|
|
# uwsgi is licensed under GPLv2 with a linking exception
|
|
# docs are licensed under MIT
|
|
License: GPL-2.0-only WITH GCC-exception-2.0 AND MIT
|
|
URL: https://github.com/unbit/uwsgi
|
|
|
|
Source0: http://projects.unbit.it/downloads/uwsgi-%{version}.tar.gz
|
|
Source1: openEuler.ini
|
|
Source2: uwsgi.service
|
|
Source3: emperor.ini
|
|
Source4: https://github.com/unbit/%{docrepo}/archive/%{commit}/%{docrepo}-%{shortcommit}.tar.gz
|
|
Source5: README.openEuler
|
|
Source7: uwsgi.tmpfiles
|
|
|
|
# When adding patches please add to the end, don't
|
|
# reuse intermediate numbers
|
|
Patch0: uwsgi_trick_chroot_rpmbuild.patch
|
|
Patch1: uwsgi_fix_rpath.patch
|
|
Patch2: uwsgi_ruby20_compatibility.patch
|
|
Patch3: uwsgi_fix_lua.patch
|
|
# https://github.com/unbit/uwsgi/issues/882
|
|
Patch5: uwsgi_fix_mongodb.patch
|
|
Patch6: uwsgi_v8-314_compatibility.patch
|
|
Patch7: uwsgi_fix_mono.patch
|
|
# https://github.com/unbit/uwsgi/issues/2283
|
|
Patch12: uwsgi_fix_php8.patch
|
|
Patch13: uwsgi_fix_chroot_chdir.patch
|
|
|
|
BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel
|
|
BuildRequires: libyaml-devel, ruby-devel
|
|
%if %{with tcp_wrappers}
|
|
BuildRequires: tcp_wrappers-devel
|
|
%endif
|
|
%if %{with python3}
|
|
BuildRequires: python%{python3_pkgversion}-devel
|
|
%endif
|
|
%if %{with python3_greenlet}
|
|
BuildRequires: python%{python3_pkgversion}-greenlet-devel
|
|
%endif
|
|
%if %{with glusterfs}
|
|
BuildRequires: glusterfs-devel, glusterfs-api-devel libgfapi0
|
|
%endif
|
|
BuildRequires: lua-devel, ruby, pcre-devel
|
|
%if %{with php}
|
|
BuildRequires: php-devel, php-embedded
|
|
%endif
|
|
BuildRequires: libedit-devel, krb5-devel
|
|
BuildRequires: openssl-devel
|
|
BuildRequires: bzip2-devel, gmp-devel, pam-devel
|
|
BuildRequires: sqlite-devel, libcap-devel
|
|
BuildRequires: httpd-devel, libcurl-devel
|
|
BuildRequires: libstdc++-devel
|
|
%if %{with gloox}
|
|
BuildRequires: gloox-devel
|
|
%endif
|
|
BuildRequires: libevent-devel, zlib-devel
|
|
%if %{with geoip}
|
|
BuildRequires: GeoIP-devel
|
|
%endif
|
|
BuildRequires: openldap-devel, boost-devel
|
|
BuildRequires: libattr-devel, libxslt-devel
|
|
%if %{with perl}
|
|
BuildRequires: perl-devel, perl-ExtUtils-Embed
|
|
%if %{with perlcoro}
|
|
BuildRequires: perl-Coro
|
|
%endif
|
|
%endif
|
|
%if %{with zeromq}
|
|
BuildRequires: zeromq-devel
|
|
%endif
|
|
%if %{with go}
|
|
BuildRequires: gcc-go
|
|
%endif
|
|
BuildRequires: systemd-devel, systemd-units
|
|
%if %{with mono}
|
|
BuildRequires: mono-devel, mono-web, glib2-devel
|
|
%endif
|
|
%if %{with v8}
|
|
%if 0%{?fedora}
|
|
BuildRequires: v8-314-devel
|
|
%else
|
|
BuildRequires: v8-devel
|
|
%endif
|
|
%endif
|
|
%if %{with mongodblibs}
|
|
%if 0%{?fedora}
|
|
BuildRequires: mongo-cxx-driver-legacy-devel
|
|
%else
|
|
BuildRequires: mongo-cxx-driver-devel
|
|
%endif
|
|
%endif
|
|
%if %{with pq}
|
|
BuildRequires: libpq-devel
|
|
%endif
|
|
|
|
%if 0%{?fedora}
|
|
BuildRequires: libargon2-devel
|
|
Obsoletes: uwsgi-router-access <= 2.0.16
|
|
%endif
|
|
|
|
Obsoletes: uwsgi-loggers <= 1.9.8-1
|
|
Obsoletes: uwsgi-routers <= 2.0.6
|
|
Obsoletes: uwsgi-plugin-erlang <= 1.9.20-1
|
|
Obsoletes: uwsgi-plugin-admin <= 2.0.6
|
|
|
|
Requires(pre): shadow-utils
|
|
%{?systemd_requires}
|
|
|
|
%filter_requires_in %{_usrsrc}
|
|
%filter_provides_in %{_usrsrc}
|
|
%filter_provides_in %{_libdir}/uwsgi/.*\.so$
|
|
%filter_setup
|
|
|
|
%description
|
|
uWSGI is a fast (pure C), self-healing, developer/sysadmin-friendly
|
|
application container server. Born as a WSGI-only server, over time it has
|
|
evolved in a complete stack for networked/clustered web applications,
|
|
implementing message/object passing, caching, RPC and process management.
|
|
It uses the uwsgi (all lowercase, already included by default in the Nginx
|
|
and Cherokee releases) protocol for all the networking/interprocess
|
|
communications. Can be run in preforking mode, threaded,
|
|
asynchronous/evented and supports various form of green threads/co-routine
|
|
(like uGreen and Fiber). Sysadmin will love it as it can be configured via
|
|
command line, environment variables, xml, .ini and yaml files and via LDAP.
|
|
Being fully modular can use tons of different technology on top of the same
|
|
core.
|
|
|
|
%package -n uwsgi-devel
|
|
Summary: uWSGI - Development header files and libraries
|
|
Requires: uwsgi = %{version}-%{release}
|
|
|
|
%description -n uwsgi-devel
|
|
This package contains the development header files and libraries
|
|
for uWSGI extensions
|
|
|
|
%if %{with python3}
|
|
%package -n python%{python3_pkgversion}-uwsgidecorators
|
|
Summary: Python %{python3_version} decorators providing access to the uwsgi API
|
|
Requires: uwsgi = %{version}-%{release}
|
|
Requires: uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release}
|
|
Obsoletes: python3-uWSGI <= 2.0.21
|
|
Provides: python3-uWSGI = %{version}-%{release}
|
|
|
|
%description -n python%{python3_pkgversion}-uwsgidecorators
|
|
The uwsgidecorators Python %{python3_version} module provides higher-level
|
|
access to the uWSGI API.
|
|
%endif
|
|
|
|
%package -n uwsgi-docs
|
|
Summary: uWSGI - Documentation
|
|
Requires: uwsgi
|
|
Obsoletes: python-uWSGI-help <= 2.0.21
|
|
Provides: python-uWSGI-help = %{version}-%{release}
|
|
|
|
%description -n uwsgi-docs
|
|
This package contains the documentation files for uWSGI
|
|
|
|
%package -n uwsgi-plugin-common
|
|
Summary: uWSGI - Common plugins for uWSGI
|
|
Requires: uwsgi = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-common
|
|
This package contains the most common plugins used with uWSGI. The
|
|
plugins included in this package are: cache, CGI, RPC, uGreen
|
|
|
|
# Stats pushers
|
|
|
|
%package -n uwsgi-stats-pusher-file
|
|
Summary: uWSGI - File Stats Pusher for uWSGI
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-stats-pusher-file
|
|
This package contains the stats_pusher_file plugin for uWSGI
|
|
|
|
%if %{with mongodblibs}
|
|
%package -n uwsgi-stats-pusher-mongodb
|
|
Summary: uWSGI - MongoDB Stats Pusher for uWSGI
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-stats-pusher-mongodb
|
|
This package contains the stats_pusher_mongodb plugin for uWSGI
|
|
%endif
|
|
|
|
%package -n uwsgi-stats-pusher-socket
|
|
Summary: uWSGI - Socket Stats Pusher for uWSGI
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-stats-pusher-socket
|
|
This package contains the stats_pusher_socket plugin for uWSGI
|
|
|
|
%package -n uwsgi-stats-pusher-statsd
|
|
Summary: uWSGI - StatsD Stats Pusher for uWSGI
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-stats-pusher-statsd
|
|
This package contains the stats_pusher_statsd plugin for uWSGI
|
|
|
|
%package -n uwsgi-stats-pusher-zabbix
|
|
Summary: uWSGI - Zabbix Stats Pusher for uWSGI
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-stats-pusher-zabbix
|
|
This package contains the zabbix plugin for uWSGI
|
|
|
|
# Alarms
|
|
|
|
%package -n uwsgi-alarm-curl
|
|
Summary: uWSGI - Curl alarm plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-alarm-curl
|
|
This package contains the alarm_curl alarm plugin for uWSGI
|
|
|
|
%if %{with gloox}
|
|
%package -n uwsgi-alarm-xmpp
|
|
Summary: uWSGI - Curl alarm plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-alarm-xmpp
|
|
This package contains the alarm_xmpp alarm plugin for uWSGI
|
|
%endif
|
|
|
|
# Transformations
|
|
|
|
%package -n uwsgi-transformation-chunked
|
|
Summary: uWSGI - Chunked Transformation plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release}
|
|
|
|
%description -n uwsgi-transformation-chunked
|
|
This package contains the transformation_chunked plugin for uWSGI
|
|
|
|
%package -n uwsgi-transformation-gzip
|
|
Summary: uWSGI - GZip Transformation plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release}
|
|
|
|
%description -n uwsgi-transformation-gzip
|
|
This package contains the transformation_gzip plugin for uWSGI
|
|
|
|
%package -n uwsgi-transformation-offload
|
|
Summary: uWSGI - Off-Load Transformation plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release}
|
|
|
|
%description -n uwsgi-transformation-offload
|
|
This package contains the transformation_offload plugin for uWSGI
|
|
|
|
%package -n uwsgi-transformation-template
|
|
Summary: uWSGI - Template Transformation plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release}
|
|
|
|
%description -n uwsgi-transformation-template
|
|
This package contains the transformation_template plugin for uWSGI
|
|
|
|
%package -n uwsgi-transformation-tofile
|
|
Summary: uWSGI - ToFile Transformation plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release}
|
|
|
|
%description -n uwsgi-transformation-tofile
|
|
This package contains the transformation_tofile plugin for uWSGI
|
|
|
|
%package -n uwsgi-transformation-toupper
|
|
Summary: uWSGI - ToUpper Transformation plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-transformation-toupper
|
|
This package contains the transformation_toupper plugin for uWSGI
|
|
|
|
# Loggers
|
|
|
|
%package -n uwsgi-log-encoder-msgpack
|
|
Summary: uWSGI - msgpack log encoder plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-log-encoder-msgpack
|
|
This package contains the msgpack log encoder plugin for uWSGI
|
|
|
|
%package -n uwsgi-logger-crypto
|
|
Summary: uWSGI - logcrypto logger plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-logger-crypto
|
|
This package contains the logcrypto logger plugin for uWSGI
|
|
|
|
%package -n uwsgi-logger-file
|
|
Summary: uWSGI - logfile logger plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Obsoletes: uwsgi-loggers <= 1.9.8-1
|
|
Provides: uwsgi-loggers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-logger-file
|
|
This package contains the logfile logger plugin for uWSGI
|
|
|
|
%package -n uwsgi-logger-graylog2
|
|
Summary: uWSGI - Graylog2 logger plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-logger-graylog2
|
|
This package contains the graylog2 logger plugin for uWSGI
|
|
|
|
%if %{with mongodblibs}
|
|
%package -n uwsgi-logger-mongodb
|
|
Summary: uWSGI - mongodblog logger plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Obsoletes: uwsgi-loggers <= 1.9.8-1
|
|
Provides: uwsgi-loggers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-logger-mongodb
|
|
This package contains the mongodblog logger plugin for uWSGI
|
|
%endif
|
|
|
|
%package -n uwsgi-logger-pipe
|
|
Summary: uWSGI - logpipe logger plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-logger-pipe
|
|
This package contains the logcrypto logger plugin for uWSGI
|
|
|
|
%package -n uwsgi-logger-redis
|
|
Summary: uWSGI - redislog logger plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Obsoletes: uwsgi-loggers <= 1.9.8-1
|
|
Provides: uwsgi-loggers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-logger-redis
|
|
This package contains the redislog logger plugin for uWSGI
|
|
|
|
%package -n uwsgi-logger-rsyslog
|
|
Summary: uWSGI - rsyslog logger plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Obsoletes: uwsgi-plugin-rsyslog <= 1.9.8-1
|
|
Provides: uwsgi-plugin-rsyslog = %{version}-%{release}
|
|
|
|
%description -n uwsgi-logger-rsyslog
|
|
This package contains the rsyslog logger plugin for uWSGI
|
|
|
|
%package -n uwsgi-logger-socket
|
|
Summary: uWSGI - logsocket logger plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Obsoletes: uwsgi-loggers <= 1.9.8-1
|
|
Provides: uwsgi-loggers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-logger-socket
|
|
This package contains the logsocket logger plugin for uWSGI
|
|
|
|
%package -n uwsgi-logger-syslog
|
|
Summary: uWSGI - syslog logger plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Obsoletes: uwsgi-plugin-syslog <= 1.9.8-1
|
|
Provides: uwsgi-plugin-syslog = %{version}-%{release}
|
|
|
|
%description -n uwsgi-logger-syslog
|
|
This package contains the syslog logger plugin for uWSGI
|
|
|
|
%package -n uwsgi-logger-systemd
|
|
Summary: uWSGI - systemd journal logger plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-logger-systemd
|
|
This package contains the systemd journal logger plugin for uWSGI
|
|
|
|
%if %{with zeromq}
|
|
%package -n uwsgi-logger-zeromq
|
|
Summary: uWSGI - ZeroMQ logger plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, zeromq
|
|
|
|
%description -n uwsgi-logger-zeromq
|
|
This package contains the ZeroMQ logger plugin for uWSGI
|
|
%endif
|
|
|
|
# Plugins
|
|
|
|
%package -n uwsgi-plugin-airbrake
|
|
Summary: uWSGI - Plugin for AirBrake support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-airbrake
|
|
This package contains the airbrake plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-cache
|
|
Summary: uWSGI - Plugin for cache support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-cache
|
|
This package contains the cache plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-carbon
|
|
Summary: uWSGI - Plugin for Carbon/Graphite support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-carbon
|
|
This package contains the Carbon plugin for uWSGI (to use in graphite)
|
|
|
|
%if %{with perl}
|
|
%package -n uwsgi-plugin-psgi
|
|
Summary: uWSGI - Plugin for PSGI support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-psgi
|
|
This package contains the PSGI plugin for uWSGI
|
|
|
|
%if %{with perlcoro}
|
|
%package -n uwsgi-plugin-coroae
|
|
Summary: uWSGI - Plugin for PERL Coro support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-psgi = %{version}-%{release}, perl-Coro
|
|
|
|
%description -n uwsgi-plugin-coroae
|
|
This package contains the coroae plugin for uWSGI
|
|
%endif
|
|
%endif
|
|
|
|
%package -n uwsgi-plugin-cheaper-busyness
|
|
Summary: uWSGI - Plugin for Cheaper Busyness algos
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-cheaper-busyness
|
|
This package contains the cheaper_busyness plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-cplusplus
|
|
Summary: uWSGI - Plugin for C++ support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-cplusplus
|
|
This package contains the cplusplus plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-curl-cron
|
|
Summary: uWSGI - Plugin for CURL Cron support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-curl-cron
|
|
This package contains the curl_cron plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-dumbloop
|
|
Summary: uWSGI - Plugin for Dumb Loop support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-dumbloop
|
|
This package contains the dumbloop plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-dummy
|
|
Summary: uWSGI - Plugin for Dummy support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-dummy
|
|
This package contains the dummy plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-fiber
|
|
Summary: uWSGI - Plugin for Ruby Fiber support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-rack = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-fiber
|
|
This package contains the fiber plugin for uWSGI
|
|
|
|
%if %{with go}
|
|
%package -n uwsgi-plugin-gccgo
|
|
Summary: uWSGI - Plugin for GoLang support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-gccgo
|
|
This package contains the gccgo plugin for uWSGI
|
|
%endif
|
|
|
|
%if %{with geoip}
|
|
%package -n uwsgi-plugin-geoip
|
|
Summary: uWSGI - Plugin for GeoIP support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-geoip
|
|
This package contains the geoip plugin for uWSGI
|
|
%endif
|
|
|
|
%if %{with python3}
|
|
%package -n uwsgi-plugin-python%{python3_pkgversion}-gevent
|
|
Summary: uWSGI - Plugin for Python %{python3_version} GEvent support
|
|
Requires: uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-python%{python3_pkgversion}-gevent
|
|
This package contains the Python %{python3_version} gevent plugin for uWSGI
|
|
%endif
|
|
|
|
%if %{with glusterfs}
|
|
%package -n uwsgi-plugin-glusterfs
|
|
Summary: uWSGI - Plugin for GlusterFS support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, glusterfs-api
|
|
|
|
%description -n uwsgi-plugin-glusterfs
|
|
This package contains the glusterfs plugin for uWSGI
|
|
%endif
|
|
|
|
%if %{with python3_greenlet}
|
|
%package -n uwsgi-plugin-python%{python3_pkgversion}-greenlet
|
|
Summary: uWSGI - Plugin for Python %{python3_version} Greenlet support
|
|
Requires: python%{python3_pkgversion}-greenlet, uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-python%{python3_pkgversion}-greenlet
|
|
This package contains the Python %{python3_version} greenlet plugin for uWSGI
|
|
%endif
|
|
|
|
%if %{with gridfs}
|
|
%package -n uwsgi-plugin-gridfs
|
|
Summary: uWSGI - Plugin for GridFS support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, libmongodb
|
|
|
|
%description -n uwsgi-plugin-gridfs
|
|
This package contains the gridfs plugin for uWSGI
|
|
%endif
|
|
|
|
%if %{with java}
|
|
%package -n uwsgi-plugin-jvm
|
|
Summary: uWSGI - Plugin for JVM support
|
|
BuildRequires: java-devel
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, java-headless, jpackage-utils
|
|
|
|
%description -n uwsgi-plugin-jvm
|
|
This package contains the JVM plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-jwsgi
|
|
Summary: uWSGI - Plugin for JWSGI support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-jvm = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-jwsgi
|
|
This package contains the jwsgi plugin for uWSGI
|
|
%endif
|
|
|
|
%package -n uwsgi-plugin-ldap
|
|
Summary: uWSGI - Plugin for LDAP support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, openldap
|
|
|
|
%description -n uwsgi-plugin-ldap
|
|
This package contains the ldap plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-lua
|
|
Summary: uWSGI - Plugin for LUA support
|
|
Requires: lua, uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-lua
|
|
This package contains the lua plugin for uWSGI
|
|
|
|
%if %{with zeromq}
|
|
%package -n uwsgi-plugin-mongrel2
|
|
Summary: uWSGI - Plugin for Mongrel2 support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, zeromq
|
|
|
|
%description -n uwsgi-plugin-mongrel2
|
|
This package contains the mongrel2 plugin for uWSGI
|
|
%endif
|
|
|
|
%if %{with mono}
|
|
%package -n uwsgi-plugin-mono
|
|
Summary: uWSGI - Plugin for Mono / .NET support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, mono-web
|
|
|
|
%description -n uwsgi-plugin-mono
|
|
This package contains the mono plugin for uWSGI
|
|
%endif
|
|
|
|
%package -n uwsgi-plugin-nagios
|
|
Summary: uWSGI - Plugin for Nagios support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-nagios
|
|
This package contains the nagios plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-notfound
|
|
Summary: uWSGI - Plugin for notfound support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-notfound
|
|
This package contains the notfound plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-pam
|
|
Summary: uWSGI - Plugin for PAM support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, pam
|
|
|
|
%description -n uwsgi-plugin-pam
|
|
This package contains the PAM plugin for uWSGI
|
|
|
|
%if %{with php}
|
|
%package -n uwsgi-plugin-php
|
|
Summary: uWSGI - Plugin for PHP support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-php
|
|
This package contains the PHP plugin for uWSGI
|
|
%endif
|
|
|
|
%package -n uwsgi-plugin-pty
|
|
Summary: uWSGI - Plugin for PTY support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-pty
|
|
This package contains the pty plugin for uWSGI
|
|
|
|
%if %{with python3}
|
|
%package -n uwsgi-plugin-python%{python3_pkgversion}
|
|
Summary: uWSGI - Plugin for Python %{python3_version} support
|
|
Requires: python%{python3_pkgversion}, uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-python%{python3_pkgversion}
|
|
This package contains the Python %{python3_version} plugin for uWSGI
|
|
%endif
|
|
|
|
%package -n uwsgi-plugin-rack
|
|
Summary: uWSGI - Ruby rack plugin
|
|
Requires: rubygem-rack, uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-rack
|
|
This package contains the rack plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-rbthreads
|
|
Summary: uWSGI - Ruby native threads support plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, ruby
|
|
|
|
%description -n uwsgi-plugin-rbthreads
|
|
This package contains the rbthreads plugin for uWSGI
|
|
|
|
%if %{with java}
|
|
%package -n uwsgi-plugin-ring
|
|
Summary: uWSGI - Clojure/Ring request handler support plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-jvm = %{version}-%{release}, clojure
|
|
|
|
%description -n uwsgi-plugin-ring
|
|
This package contains the ring plugin for uWSGI
|
|
%endif
|
|
|
|
%package -n uwsgi-plugin-rpc
|
|
Summary: uWSGI - Plugin for RPC support
|
|
Requires: rrdtool, uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-rpc
|
|
This package contains the RPC plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-rrdtool
|
|
Summary: uWSGI - Plugin for RRDTool support
|
|
Requires: rrdtool, uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-rrdtool
|
|
This package contains the RRD Tool plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-ruby
|
|
Summary: uWSGI - Plugin for Ruby support
|
|
Requires: ruby, uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-ruby
|
|
This package contains the ruby19 plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-spooler
|
|
Summary: uWSGI - Plugin for Remote Spooling support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-spooler
|
|
This package contains the spooler plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-sqlite3
|
|
Summary: uWSGI - SQLite3 plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, sqlite
|
|
|
|
%description -n uwsgi-plugin-sqlite3
|
|
This package contains the sqlite3 plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-ssi
|
|
Summary: uWSGI - Server Side Includes plugin
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-ssi
|
|
This package contains the ssi plugin for uWSGI
|
|
|
|
%if %{with python3}
|
|
%package -n uwsgi-plugin-python%{python3_pkgversion}-tornado
|
|
Summary: uWSGI - Plugin for Tornado (Python %{python3_version}) support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}, python%{python3_pkgversion}-tornado
|
|
|
|
%description -n uwsgi-plugin-python%{python3_pkgversion}-tornado
|
|
This package contains the tornado (Python %{python3_version}) plugin for uWSGI
|
|
%endif
|
|
|
|
%package -n uwsgi-plugin-ugreen
|
|
Summary: uWSGI - Plugin for uGreen support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-ugreen
|
|
This package contains the uGreen plugin for uWSGI
|
|
|
|
%if %{with v8}
|
|
%package -n uwsgi-plugin-v8
|
|
Summary: uWSGI - Plugin for v8 support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-v8
|
|
This package contains the v8 plugin for uWSGI
|
|
%endif
|
|
|
|
%package -n uwsgi-plugin-webdav
|
|
Summary: uWSGI - Plugin for WebDAV support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-webdav
|
|
This package contains the webdav plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-xattr
|
|
Summary: uWSGI - Plugin for Extra Attributes support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-xattr
|
|
This package contains the xattr plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-xslt
|
|
Summary: uWSGI - Plugin for XSLT transformation support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-xslt
|
|
This package contains the xslt plugin for uWSGI
|
|
|
|
%package -n uwsgi-plugin-zergpool
|
|
Summary: uWSGI - Plugin for zergpool support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-plugin-zergpool
|
|
This package contains the zergpool plugin for uWSGI
|
|
|
|
# Routers
|
|
|
|
%if %{with tcp_wrappers}
|
|
%package -n uwsgi-router-access
|
|
Summary: uWSGI - Plugin for router_access router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Provides: uwsgi-routers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-access
|
|
This package contains the router_access plugin for uWSGI
|
|
%endif
|
|
|
|
%package -n uwsgi-router-basicauth
|
|
Summary: uWSGI - Plugin for Basic Auth router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Provides: uwsgi-routers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-basicauth
|
|
This package contains the basicauth plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-cache
|
|
Summary: uWSGI - Plugin for Cache router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Provides: uwsgi-routers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-cache
|
|
This package contains the cache router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-expires
|
|
Summary: uWSGI - Plugin for Expires router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Provides: uwsgi-routers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-expires
|
|
This package contains the expires router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-fast
|
|
Summary: uWSGI - Plugin for FastRouter support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Obsoletes: uwsgi-plugin-fastrouter <= 2.0.6
|
|
Provides: uwsgi-plugin-fastrouter = %{version}-%{release}
|
|
Provides: uwsgi-routers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-fast
|
|
This package contains the fastrouter (proxy) plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-forkpty
|
|
Summary: uWSGI - Plugin for ForkPTY router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-forkpty
|
|
This package contains the ForkPTY router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-hash
|
|
Summary: uWSGI - Plugin for Hash router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Provides: uwsgi-routers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-hash
|
|
This package contains the hash router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-http
|
|
Summary: uWSGI - Plugin for HTTP router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Provides: uwsgi-routers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-http
|
|
This package contains the http router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-memcached
|
|
Summary: uWSGI - Plugin for Memcached router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Provides: uwsgi-routers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-memcached
|
|
This package contains the memcached router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-metrics
|
|
Summary: uWSGI - Plugin for Metrics router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-metrics
|
|
This package contains the metrics router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-radius
|
|
Summary: uWSGI - Plugin for Radius router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-radius
|
|
This package contains the metrics router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-raw
|
|
Summary: uWSGI - Plugin for Raw Router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Obsoletes: uwsgi-plugin-rawrouter <= 2.0.6
|
|
Provides: uwsgi-plugin-rawrouter = %{version}-%{release}
|
|
Provides: uwsgi-routers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-raw
|
|
This package contains the Raw router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-redirect
|
|
Summary: uWSGI - Plugin for Redirect router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Provides: uwsgi-routers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-redirect
|
|
This package contains the redirect router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-redis
|
|
Summary: uWSGI - Plugin for Redis router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Provides: uwsgi-routers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-redis
|
|
This package contains the redis router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-rewrite
|
|
Summary: uWSGI - Plugin for Rewrite router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Provides: uwsgi-routers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-rewrite
|
|
This package contains the rewrite router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-spnego
|
|
Summary: uWSGI - Plugin for SPNEgo router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-spnego
|
|
This package contains the spnego router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-ssl
|
|
Summary: uWSGI - Plugin for SSL router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Obsoletes: uwsgi-plugin-sslrouter <= 2.0.6
|
|
Provides: uwsgi-plugin-sslrouter = %{version}-%{release}
|
|
Provides: uwsgi-routers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-ssl
|
|
This package contains the SSL router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-static
|
|
Summary: uWSGI - Plugin for Static router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Provides: uwsgi-routers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-static
|
|
This package contains the Static router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-tuntap
|
|
Summary: uWSGI - Plugin for TUN/TAP router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-tuntap
|
|
This package contains the tuntap router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-uwsgi
|
|
Summary: uWSGI - Plugin for uWSGI router support
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Provides: uwsgi-routers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-uwsgi
|
|
This package contains the uwsgi router plugin for uWSGI
|
|
|
|
%package -n uwsgi-router-xmldir
|
|
Summary: uWSGI - Plugin for XMLDir router rupport
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
Provides: uwsgi-routers = %{version}-%{release}
|
|
|
|
%description -n uwsgi-router-xmldir
|
|
This package contains the xmldir router plugin for uWSGI
|
|
|
|
# Emperors
|
|
|
|
%package -n uwsgi-emperor-amqp
|
|
Summary: uWSGI - Plugin for AMQP emperor rupport
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-emperor-amqp
|
|
This package contains the AMQP emperor plugin for uWSGI
|
|
|
|
%if %{with pq}
|
|
%package -n uwsgi-emperor-pg
|
|
Summary: uWSGI - Plugin for Postgres emperor rupport
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-emperor-pg
|
|
This package contains the Postgres emperor plugin for uWSGI
|
|
%endif
|
|
|
|
%if %{with zeromq}
|
|
%package -n uwsgi-emperor-zeromq
|
|
Summary: uWSGI - Plugin for ZeroMQ emperor rupport
|
|
Requires: uwsgi-plugin-common = %{version}-%{release}
|
|
|
|
%description -n uwsgi-emperor-zeromq
|
|
This package contains the ZeroMQ emperor plugin for uWSGI
|
|
%endif
|
|
|
|
# The rest
|
|
|
|
%if %{with mod_proxy_uwsgi}
|
|
%package -n mod_proxy_uwsgi
|
|
Summary: uWSGI - Apache2 proxy module
|
|
Requires: uwsgi = %{version}-%{release}, httpd
|
|
|
|
%description -n mod_proxy_uwsgi
|
|
Fully Apache API compliant proxy module
|
|
%endif
|
|
|
|
|
|
%prep
|
|
%setup -q
|
|
cp -p %{SOURCE1} buildconf/
|
|
echo "plugin_dir = %{_libdir}/uwsgi" >> buildconf/openEuler.ini
|
|
cp -p %{SOURCE5} README.openEuler
|
|
%patch -P0 -p1
|
|
%patch -P1 -p1
|
|
%patch -P2 -p1
|
|
%patch -P3 -p1
|
|
%if 0%{?fedora}
|
|
%patch -P5 -p1
|
|
%endif
|
|
%if %{with v8} && 0%{?fedora}
|
|
%patch -P6 -p1
|
|
%endif
|
|
%if %{with mono}
|
|
%patch -P7 -p1
|
|
%endif
|
|
%patch -P12 -p1
|
|
%patch -P13 -p1
|
|
|
|
%build
|
|
CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable -fPIC" %{__python} uwsgiconfig.py --verbose --build openEuler.ini
|
|
%if %{with python3}
|
|
%py3_build
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --verbose --plugin plugins/python openEuler python%{python3_pkgversion}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --verbose --plugin plugins/gevent openEuler python%{python3_pkgversion}_gevent
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --verbose --plugin plugins/tornado openEuler python%{python3_pkgversion}_tornado
|
|
%endif
|
|
%if %{with mongodblibs}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/mongodblog openEuler
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable -std=gnu++11 -Wno-error" %{__python2} uwsgiconfig.py --verbose --plugin plugins/stats_pusher_mongodb openEuler
|
|
%endif
|
|
%if %{with mono}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/mono openEuler
|
|
%endif
|
|
%if %{with php}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/php openEuler
|
|
%endif
|
|
%if %{with v8}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/v8 openEuler
|
|
%endif
|
|
%if %{with go}
|
|
# In EL* distributions, the gccgo compiler needs to be explicitly used to
|
|
# compile Go code, gcc will not work. However, gccgo can compile C code,
|
|
# so use that instead
|
|
%if 0%{?rhel}
|
|
CC="gccgo" CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/gccgo openEuler
|
|
%else
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/gccgo openEuler
|
|
%endif
|
|
%endif
|
|
%if %{with ruby19}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/fiber openEuler
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/rbthreads openEuler
|
|
%endif
|
|
%if %{with tuntap}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/tuntap openEuler
|
|
%endif
|
|
%if %{with perl}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/psgi openEuler
|
|
%if %{with perlcoro}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/coroae openEuler
|
|
%endif
|
|
%endif
|
|
%if %{with zeromq}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/logzmq openEuler
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/mongrel2 openEuler
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/emperor_zeromq openEuler
|
|
%endif
|
|
%if %{with python3_greenlet}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/greenlet openEuler python%{python3_pkgversion}_greenlet
|
|
%endif
|
|
%if %{with glusterfs}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/glusterfs openEuler
|
|
%endif
|
|
%if %{with gridfs}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/gridfs openEuler
|
|
%endif
|
|
%if %{with java}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/jvm openEuler
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/jwsgi openEuler
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/ring openEuler
|
|
%endif
|
|
%if %{with gloox}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/alarm_xmpp openEuler
|
|
%endif
|
|
%if %{with geoip}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/geoip openEuler
|
|
%endif
|
|
%if %{with tcp_wrappers}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/router_access openEuler
|
|
%endif
|
|
%if %{with mod_proxy_uwsgi}
|
|
%{_httpd_apxs} -Wc,-Wall -Wl -c apache2/mod_proxy_uwsgi.c
|
|
%endif
|
|
%if %{with pq}
|
|
CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/emperor_pg openEuler
|
|
%endif
|
|
|
|
|
|
|
|
%install
|
|
install -d %{buildroot}%{_sysconfdir}/uwsgi.d
|
|
install -d %{buildroot}%{_usrsrc}/uwsgi/%{version}
|
|
install -d %{buildroot}%{_includedir}/uwsgi
|
|
install -d %{buildroot}%{_libdir}/uwsgi
|
|
%if %{with mono}
|
|
install -d %{buildroot}%{_monogacdir}
|
|
%endif
|
|
mkdir docs
|
|
tar -C docs/ --strip-components=1 -xvzf %{SOURCE4}
|
|
tar -C %{buildroot}%{_usrsrc}/uwsgi/%{version} --strip-components=1 -xvzf %{SOURCE0}
|
|
cp %{SOURCE1} %{buildroot}%{_usrsrc}/uwsgi/%{version}/buildconf/
|
|
cp docs/Changelog-%{version}.rst CHANGELOG
|
|
rm -f docs/.gitignore
|
|
echo "%{commit}, i.e. this:" >> README.openEuler
|
|
echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.openEuler
|
|
install -p -m 0644 *.h %{buildroot}%{_includedir}/uwsgi
|
|
install -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/uwsgi
|
|
%if %{with python3}
|
|
%py3_install
|
|
%if %{manual_py_compile} == 1
|
|
%py_byte_compile %{__python3} %{buildroot}%{python3_sitelib}/uwsgidecorators.py
|
|
%endif
|
|
%endif
|
|
%if %{with java}
|
|
install -D -p -m 0644 plugins/jvm/uwsgi.jar %{buildroot}%{_javadir}/uwsgi.jar
|
|
%endif
|
|
%if %{with mono}
|
|
gacutil -i plugins/mono/uwsgi.dll -f -package uwsgi -root %{buildroot}/usr/lib
|
|
%endif
|
|
install -D -p -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/uwsgi.ini
|
|
install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/uwsgi.service
|
|
install -D -p -m 0644 %{SOURCE7} %{buildroot}%{_tmpfilesdir}/uwsgi.conf
|
|
%if %{with mod_proxy_uwsgi}
|
|
install -D -p -m 0755 apache2/.libs/mod_proxy_uwsgi.so %{buildroot}%{_httpd_moddir}/mod_proxy_uwsgi.so
|
|
%endif
|
|
|
|
|
|
%pre
|
|
getent group uwsgi >/dev/null || groupadd -r uwsgi
|
|
getent passwd uwsgi >/dev/null || \
|
|
useradd -r -g uwsgi -d /run/uwsgi -s /sbin/nologin \
|
|
-c "uWSGI daemon user" uwsgi
|
|
exit 0
|
|
|
|
%post
|
|
%systemd_post uwsgi.service
|
|
|
|
%preun
|
|
%systemd_preun uwsgi.service
|
|
|
|
%postun
|
|
%systemd_postun uwsgi.service
|
|
|
|
|
|
%files
|
|
%{_bindir}/uwsgi
|
|
%config(noreplace) %{_sysconfdir}/uwsgi.ini
|
|
%{_unitdir}/uwsgi.service
|
|
%{_tmpfilesdir}/uwsgi.conf
|
|
%dir %{_sysconfdir}/uwsgi.d
|
|
%doc README README.openEuler CHANGELOG
|
|
%license LICENSE
|
|
|
|
%files -n uwsgi-devel
|
|
%{_includedir}/uwsgi
|
|
%{_usrsrc}/uwsgi
|
|
|
|
%if %{with python3}
|
|
%files -n python%{python3_pkgversion}-uwsgidecorators
|
|
%{python3_sitelib}/uwsgidecorators.py
|
|
%{python3_sitelib}/uWSGI-%{version}-py3.11.egg-info/*
|
|
%{python3_sitelib}/__pycache__/uwsgidecorators.cpython-%{python3_version_nodots}*.py*
|
|
%endif
|
|
|
|
%files -n uwsgi-docs
|
|
%doc docs
|
|
|
|
%files -n uwsgi-plugin-common
|
|
%dir %{_libdir}/uwsgi
|
|
%{_libdir}/uwsgi/http_plugin.so
|
|
%{_libdir}/uwsgi/cgi_plugin.so
|
|
|
|
# Stats pushers
|
|
|
|
%files -n uwsgi-stats-pusher-file
|
|
%{_libdir}/uwsgi/stats_pusher_file_plugin.so
|
|
|
|
%if %{with mongodblibs}
|
|
%files -n uwsgi-stats-pusher-mongodb
|
|
%{_libdir}/uwsgi/stats_pusher_mongodb_plugin.so
|
|
%endif
|
|
|
|
%files -n uwsgi-stats-pusher-socket
|
|
%{_libdir}/uwsgi/stats_pusher_socket_plugin.so
|
|
|
|
%files -n uwsgi-stats-pusher-statsd
|
|
%{_libdir}/uwsgi/stats_pusher_statsd_plugin.so
|
|
|
|
%files -n uwsgi-stats-pusher-zabbix
|
|
%{_libdir}/uwsgi/zabbix_plugin.so
|
|
|
|
# Alarms
|
|
|
|
%files -n uwsgi-alarm-curl
|
|
%{_libdir}/uwsgi/alarm_curl_plugin.so
|
|
|
|
%if %{with gloox}
|
|
%files -n uwsgi-alarm-xmpp
|
|
%{_libdir}/uwsgi/alarm_xmpp_plugin.so
|
|
%endif
|
|
|
|
# Transformations
|
|
|
|
%files -n uwsgi-transformation-chunked
|
|
%{_libdir}/uwsgi/transformation_chunked_plugin.so
|
|
|
|
%files -n uwsgi-transformation-gzip
|
|
%{_libdir}/uwsgi/transformation_gzip_plugin.so
|
|
|
|
%files -n uwsgi-transformation-offload
|
|
%{_libdir}/uwsgi/transformation_offload_plugin.so
|
|
|
|
%files -n uwsgi-transformation-template
|
|
%{_libdir}/uwsgi/transformation_template_plugin.so
|
|
|
|
%files -n uwsgi-transformation-tofile
|
|
%{_libdir}/uwsgi/transformation_tofile_plugin.so
|
|
|
|
%files -n uwsgi-transformation-toupper
|
|
%{_libdir}/uwsgi/transformation_toupper_plugin.so
|
|
|
|
# Loggers
|
|
|
|
%files -n uwsgi-log-encoder-msgpack
|
|
%{_libdir}/uwsgi/msgpack_plugin.so
|
|
|
|
%files -n uwsgi-logger-crypto
|
|
%{_libdir}/uwsgi/logcrypto_plugin.so
|
|
|
|
%files -n uwsgi-logger-file
|
|
%{_libdir}/uwsgi/logfile_plugin.so
|
|
|
|
%files -n uwsgi-logger-graylog2
|
|
%{_libdir}/uwsgi/graylog2_plugin.so
|
|
|
|
%if %{with mongodblibs}
|
|
%files -n uwsgi-logger-mongodb
|
|
%{_libdir}/uwsgi/mongodblog_plugin.so
|
|
%endif
|
|
|
|
%files -n uwsgi-logger-pipe
|
|
%{_libdir}/uwsgi/logpipe_plugin.so
|
|
|
|
%files -n uwsgi-logger-redis
|
|
%{_libdir}/uwsgi/redislog_plugin.so
|
|
|
|
%files -n uwsgi-logger-rsyslog
|
|
%{_libdir}/uwsgi/rsyslog_plugin.so
|
|
|
|
%files -n uwsgi-logger-socket
|
|
%{_libdir}/uwsgi/logsocket_plugin.so
|
|
|
|
%files -n uwsgi-logger-syslog
|
|
%{_libdir}/uwsgi/syslog_plugin.so
|
|
|
|
%files -n uwsgi-logger-systemd
|
|
%{_libdir}/uwsgi/systemd_logger_plugin.so
|
|
|
|
%if %{with zeromq}
|
|
%files -n uwsgi-logger-zeromq
|
|
%{_libdir}/uwsgi/logzmq_plugin.so
|
|
%endif
|
|
|
|
# Plugins
|
|
|
|
%files -n uwsgi-plugin-airbrake
|
|
%{_libdir}/uwsgi/airbrake_plugin.so
|
|
|
|
%files -n uwsgi-plugin-cache
|
|
%{_libdir}/uwsgi/cache_plugin.so
|
|
|
|
%files -n uwsgi-plugin-carbon
|
|
%{_libdir}/uwsgi/carbon_plugin.so
|
|
|
|
%if %{with perl}
|
|
%files -n uwsgi-plugin-psgi
|
|
%{_libdir}/uwsgi/psgi_plugin.so
|
|
|
|
%if %{with perlcoro}
|
|
%files -n uwsgi-plugin-coroae
|
|
%{_libdir}/uwsgi/coroae_plugin.so
|
|
%endif
|
|
%endif
|
|
|
|
%files -n uwsgi-plugin-cheaper-busyness
|
|
%{_libdir}/uwsgi/cheaper_busyness_plugin.so
|
|
|
|
%files -n uwsgi-plugin-cplusplus
|
|
%{_libdir}/uwsgi/cplusplus_plugin.so
|
|
|
|
%files -n uwsgi-plugin-curl-cron
|
|
%{_libdir}/uwsgi/curl_cron_plugin.so
|
|
|
|
%files -n uwsgi-plugin-dumbloop
|
|
%{_libdir}/uwsgi/dumbloop_plugin.so
|
|
|
|
%files -n uwsgi-plugin-dummy
|
|
%{_libdir}/uwsgi/dummy_plugin.so
|
|
|
|
%if %{with ruby19}
|
|
%files -n uwsgi-plugin-fiber
|
|
%{_libdir}/uwsgi/fiber_plugin.so
|
|
%endif
|
|
|
|
%if %{with go}
|
|
%files -n uwsgi-plugin-gccgo
|
|
%{_libdir}/uwsgi/gccgo_plugin.so
|
|
%endif
|
|
|
|
%if %{with geoip}
|
|
%files -n uwsgi-plugin-geoip
|
|
%{_libdir}/uwsgi/geoip_plugin.so
|
|
%endif
|
|
|
|
%if %{with python3}
|
|
%files -n uwsgi-plugin-python%{python3_pkgversion}-gevent
|
|
%{_libdir}/uwsgi/python%{python3_pkgversion}_gevent_plugin.so
|
|
%endif
|
|
|
|
%if %{with glusterfs}
|
|
%files -n uwsgi-plugin-glusterfs
|
|
%{_libdir}/uwsgi/glusterfs_plugin.so
|
|
%endif
|
|
|
|
%if %{with python3_greenlet}
|
|
%files -n uwsgi-plugin-python%{python3_pkgversion}-greenlet
|
|
%{_libdir}/uwsgi/python%{python3_pkgversion}_greenlet_plugin.so
|
|
%endif
|
|
|
|
%if %{with gridfs}
|
|
%files -n uwsgi-plugin-gridfs
|
|
%{_libdir}/uwsgi/gridfs_plugin.so
|
|
%endif
|
|
|
|
%if %{with java}
|
|
%files -n uwsgi-plugin-jvm
|
|
%{_libdir}/uwsgi/jvm_plugin.so
|
|
%{_javadir}/uwsgi.jar
|
|
|
|
%files -n uwsgi-plugin-jwsgi
|
|
%{_libdir}/uwsgi/jwsgi_plugin.so
|
|
%endif
|
|
|
|
%files -n uwsgi-plugin-ldap
|
|
%{_libdir}/uwsgi/ldap_plugin.so
|
|
|
|
%files -n uwsgi-plugin-lua
|
|
%{_libdir}/uwsgi/lua_plugin.so
|
|
|
|
%if %{with zeromq}
|
|
%files -n uwsgi-plugin-mongrel2
|
|
%{_libdir}/uwsgi/mongrel2_plugin.so
|
|
%endif
|
|
|
|
%if %{with mono}
|
|
%files -n uwsgi-plugin-mono
|
|
%{_libdir}/uwsgi/mono_plugin.so
|
|
%{_monodir}/uwsgi/
|
|
%{_monogacdir}/uwsgi/
|
|
%endif
|
|
|
|
%files -n uwsgi-plugin-nagios
|
|
%{_libdir}/uwsgi/nagios_plugin.so
|
|
|
|
%files -n uwsgi-plugin-notfound
|
|
%{_libdir}/uwsgi/notfound_plugin.so
|
|
|
|
%files -n uwsgi-plugin-pam
|
|
%{_libdir}/uwsgi/pam_plugin.so
|
|
|
|
%if %{with php}
|
|
%files -n uwsgi-plugin-php
|
|
%{_libdir}/uwsgi/php_plugin.so
|
|
%endif
|
|
|
|
%files -n uwsgi-plugin-pty
|
|
%{_libdir}/uwsgi/pty_plugin.so
|
|
|
|
%if %{with python3}
|
|
%files -n uwsgi-plugin-python%{python3_pkgversion}
|
|
%{_libdir}/uwsgi/python%{python3_pkgversion}_plugin.so
|
|
%endif
|
|
|
|
%files -n uwsgi-plugin-rack
|
|
%{_libdir}/uwsgi/rack_plugin.so
|
|
|
|
%if %{with ruby19}
|
|
%files -n uwsgi-plugin-rbthreads
|
|
%{_libdir}/uwsgi/rbthreads_plugin.so
|
|
%endif
|
|
|
|
%if %{with java}
|
|
%files -n uwsgi-plugin-ring
|
|
%{_libdir}/uwsgi/ring_plugin.so
|
|
%endif
|
|
|
|
%files -n uwsgi-plugin-rrdtool
|
|
%{_libdir}/uwsgi/rrdtool_plugin.so
|
|
|
|
%files -n uwsgi-plugin-rpc
|
|
%{_libdir}/uwsgi/rpc_plugin.so
|
|
|
|
%files -n uwsgi-plugin-ruby
|
|
%{_libdir}/uwsgi/ruby19_plugin.so
|
|
|
|
%files -n uwsgi-plugin-spooler
|
|
%{_libdir}/uwsgi/spooler_plugin.so
|
|
|
|
%files -n uwsgi-plugin-sqlite3
|
|
%{_libdir}/uwsgi/sqlite3_plugin.so
|
|
|
|
%files -n uwsgi-plugin-ssi
|
|
%{_libdir}/uwsgi/ssi_plugin.so
|
|
|
|
%if %{with python3}
|
|
%files -n uwsgi-plugin-python%{python3_pkgversion}-tornado
|
|
%{_libdir}/uwsgi/python%{python3_pkgversion}_tornado_plugin.so
|
|
%endif
|
|
|
|
%files -n uwsgi-plugin-ugreen
|
|
%{_libdir}/uwsgi/ugreen_plugin.so
|
|
|
|
%if %{with v8}
|
|
%files -n uwsgi-plugin-v8
|
|
%{_libdir}/uwsgi/v8_plugin.so
|
|
%endif
|
|
|
|
%files -n uwsgi-plugin-webdav
|
|
%{_libdir}/uwsgi/webdav_plugin.so
|
|
|
|
%files -n uwsgi-plugin-xattr
|
|
%{_libdir}/uwsgi/xattr_plugin.so
|
|
|
|
%files -n uwsgi-plugin-xslt
|
|
%{_libdir}/uwsgi/xslt_plugin.so
|
|
|
|
%files -n uwsgi-plugin-zergpool
|
|
%{_libdir}/uwsgi/zergpool_plugin.so
|
|
|
|
# Routers
|
|
|
|
%if %{with tcp_wrappers}
|
|
%files -n uwsgi-router-access
|
|
%{_libdir}/uwsgi/router_access_plugin.so
|
|
%endif
|
|
|
|
%files -n uwsgi-router-basicauth
|
|
%{_libdir}/uwsgi/router_basicauth_plugin.so
|
|
|
|
%files -n uwsgi-router-cache
|
|
%{_libdir}/uwsgi/router_cache_plugin.so
|
|
|
|
%files -n uwsgi-router-expires
|
|
%{_libdir}/uwsgi/router_expires_plugin.so
|
|
|
|
%files -n uwsgi-router-fast
|
|
%{_libdir}/uwsgi/fastrouter_plugin.so
|
|
|
|
%files -n uwsgi-router-forkpty
|
|
%{_libdir}/uwsgi/forkptyrouter_plugin.so
|
|
|
|
%files -n uwsgi-router-hash
|
|
%{_libdir}/uwsgi/router_hash_plugin.so
|
|
|
|
%files -n uwsgi-router-http
|
|
%{_libdir}/uwsgi/router_http_plugin.so
|
|
|
|
%files -n uwsgi-router-memcached
|
|
%{_libdir}/uwsgi/router_memcached_plugin.so
|
|
|
|
%files -n uwsgi-router-metrics
|
|
%{_libdir}/uwsgi/router_metrics_plugin.so
|
|
|
|
%files -n uwsgi-router-radius
|
|
%{_libdir}/uwsgi/router_radius_plugin.so
|
|
|
|
%files -n uwsgi-router-raw
|
|
%{_libdir}/uwsgi/rawrouter_plugin.so
|
|
|
|
%files -n uwsgi-router-redirect
|
|
%{_libdir}/uwsgi/router_redirect_plugin.so
|
|
|
|
%files -n uwsgi-router-redis
|
|
%{_libdir}/uwsgi/router_redis_plugin.so
|
|
|
|
%files -n uwsgi-router-rewrite
|
|
%{_libdir}/uwsgi/router_rewrite_plugin.so
|
|
|
|
%files -n uwsgi-router-spnego
|
|
%{_libdir}/uwsgi/router_spnego_plugin.so
|
|
|
|
%files -n uwsgi-router-ssl
|
|
%{_libdir}/uwsgi/sslrouter_plugin.so
|
|
|
|
%files -n uwsgi-router-static
|
|
%{_libdir}/uwsgi/router_static_plugin.so
|
|
|
|
%if %{with tuntap}
|
|
%files -n uwsgi-router-tuntap
|
|
%{_libdir}/uwsgi/tuntap_plugin.so
|
|
%endif
|
|
|
|
%files -n uwsgi-router-uwsgi
|
|
%{_libdir}/uwsgi/router_uwsgi_plugin.so
|
|
|
|
%files -n uwsgi-router-xmldir
|
|
%{_libdir}/uwsgi/router_xmldir_plugin.so
|
|
|
|
# Emperors
|
|
|
|
%files -n uwsgi-emperor-amqp
|
|
%{_libdir}/uwsgi/emperor_amqp_plugin.so
|
|
|
|
%if %{with pq}
|
|
%files -n uwsgi-emperor-pg
|
|
%{_libdir}/uwsgi/emperor_pg_plugin.so
|
|
%endif
|
|
|
|
%if %{with zeromq}
|
|
%files -n uwsgi-emperor-zeromq
|
|
%{_libdir}/uwsgi/emperor_zeromq_plugin.so
|
|
%endif
|
|
|
|
|
|
# The rest
|
|
|
|
%if %{with mod_proxy_uwsgi}
|
|
%files -n mod_proxy_uwsgi
|
|
%{_httpd_moddir}/mod_proxy_uwsgi.so
|
|
%endif
|
|
|
|
|
|
%changelog
|
|
* Wed Apr 17 2024 wulei <wu_lei@hoperun.com> - 2.0.23-2
|
|
- Fix pkgship service startup failure
|
|
|
|
* Thu Jan 18 2024 wangkai <13474090681@163.com> - 2.0.23-1
|
|
- Update to 2.0.23 and add plugin rpm packages
|
|
|
|
* Thu Jul 06 2023 chenchen <chen_aka_jan@163.com> - 2.0.21-2
|
|
- remove pip for fix build error
|
|
|
|
* Wed Apr 19 2023 xu_ping <707078654@qq.com> - 2.0.21-1
|
|
- Upgrade package to 2.0.21
|
|
|
|
* Fri Aug 26 2022 yaoxin <yaoxin30@h-partners.com> - 2.0.20-2
|
|
- Remove rpath
|
|
|
|
* Thu Mar 31 2022 wangkai <wangkai385@huawei.com> - 2.0.20-1
|
|
- Update to 2.0.20
|
|
|
|
* Tue Aug 31 2021 chenyanpanHW <chenyanpan@huawei.com> - 2.0.19.1-3
|
|
- DESC: uwsgi add BuildRequires openssl-devel to support --https
|
|
|
|
* Mon May 31 2021 huanghaitao <huanghaitao8@huawei.com> - 2.0.19.1-2
|
|
- Completing build dependencies to fix gcc compiler missing error
|
|
|
|
* Wed Aug 05 2020 Python_Bot <Python_Bot@openeuler.org>
|
|
- Package Spec generated
|