Bumped version to 1.9.8 for f19

This version has tons of new things and improvements.
This commit is contained in:
Jorge Gallegos 2013-04-23 22:17:02 -07:00
parent 5249bc55f0
commit cc0b262296
8 changed files with 221 additions and 63 deletions

3
.gitignore vendored
View File

@ -1,6 +1,9 @@
*.src.rpm
/uwsgi-1.0.4.tar.gz /uwsgi-1.0.4.tar.gz
/uwsgi-1.2.3.tar.gz /uwsgi-1.2.3.tar.gz
/uwsgi-wiki-doc-v41.txt /uwsgi-wiki-doc-v41.txt
/uwsgi-1.2.4.tar.gz /uwsgi-1.2.4.tar.gz
/uwsgi-wiki-doc-v43.txt /uwsgi-wiki-doc-v43.txt
/uwsgi-1.2.6.tar.gz /uwsgi-1.2.6.tar.gz
/uwsgi-1.4.5.tar.gz
/uwsgi-1.9.8.tar.gz

View File

@ -1,5 +1,17 @@
[uwsgi] [uwsgi]
inherit = base inherit = core
embedded_plugins = echo, ping, http bin_name = uwsgi
plugins = rack, psgi, python, nagios, fastrouter, admin, ruby19, cache, cgi, rpc, ugreen, greenlet, lua, php, carbon, rrdtool, rsyslog, syslog xml = true
yaml = true
json = true
pcre = true
routing = true
debug = true
sqlite3 = true
ssl = true
xml_implementation = libxml2
yaml_implementation = auto
malloc_implementation = libc
embedded_plugins = echo, ping, corerouter, http
plugins = rack, psgi, python, nagios, fastrouter, admin, ruby19, cache, cgi, rpc, ugreen, greenlet, lua, php, carbon, rrdtool, rsyslog, syslog, erlang, pyerl, pam, jvm, logsocket, router_uwsgi, router_redirect, router_basicauth, zergpool, redislog, mongodblog, router_rewrite, router_http, logfile, router_cache, rawrouter, router_static, sslrouter

View File

@ -1,2 +1 @@
e704bf8e315129a16ea233342580e5d1 uwsgi-1.2.6.tar.gz f9844674deb5da5565620a53c4b230d1 uwsgi-1.9.8.tar.gz
c2fa5a293ccac33e1c9c0277963c841e uwsgi-wiki-doc-v43.txt

View File

@ -1,26 +1,24 @@
%define wikiversion 43
Name: uwsgi Name: uwsgi
Version: 1.2.6 Version: 1.9.8
Release: 10%{?dist} Release: 0%{dist}
Summary: Fast, self-healing, application container server Summary: Fast, self-healing, application container server
Group: System Environment/Daemons Group: System Environment/Daemons
License: GPLv2 License: GPLv2
URL: http://projects.unbit.it/uwsgi URL: http://projects.unbit.it/uwsgi
Source0: http://projects.unbit.it/downloads/%{name}-%{version}.tar.gz Source0: http://projects.unbit.it/downloads/%{name}-%{version}.tar.gz
Source1: fedora.ini Source1: fedora.ini
# curl -o uwsgi-wiki-doc-v${wikiversion}.txt "http://projects.unbit.it/uwsgi/wiki/Doc?version=${wikiversion}&format=txt" Source2: uwsgi.service
Source2: uwsgi-wiki-doc-v%{wikiversion}.txt Source3: emperor.ini
Source3: uwsgi.service
Source4: emperor.ini
Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch0: uwsgi_trick_chroot_rpmbuild.patch
Patch1: uwsgi_fix_rpath.patch Patch1: uwsgi_fix_rpath.patch
Patch2: uwsgi_ruby20_compatibility.patch Patch2: uwsgi_ruby20_compatibility.patch
Patch3: uwsgi_fix_lua.patch
BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel
BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed
BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-devel BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-devel
BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel
BuildRequires: bzip2-devel, gmp-devel, systemd-units BuildRequires: bzip2-devel, gmp-devel, systemd-units, erlang, pam-devel
BuildRequires: java-1.7.0-openjdk-devel, sqlite-devel
Requires(pre): shadow-utils Requires(pre): shadow-utils
Requires(post): systemd-units Requires(post): systemd-units
@ -179,17 +177,81 @@ Requires: %{name}-plugin-common
%description -n %{name}-plugin-syslog %description -n %{name}-plugin-syslog
This package contains the syslog plugin for uWSGI This package contains the syslog plugin for uWSGI
%package -n %{name}-plugin-erlang
Summary: uWSGI - Plugin for erlang support
Group: System Environment/Daemons
Requires: %{name}-plugin-common, erlang
%description -n %{name}-plugin-erlang
This package contains the erlang plugin for uWSGI
%package -n %{name}-plugin-pam
Summary: uWSGI - Plugin for PAM support
Group: System Environment/Daemons
Requires: %{name}-plugin-common, pam
%description -n %{name}-plugin-pam
This package contains the PAM plugin for uWSGI
%package -n %{name}-plugin-jvm
Summary: uWSGI - Plugin for JVM support
Group: System Environment/Daemons
Requires: %{name}-plugin-common, java-1.7.0-openjdk
%description -n %{name}-plugin-jvm
This package contains the JVM plugin for uWSGI
%package -n %{name}-plugin-zergpool
Summary: uWSGI - Plugin for zergpool support
Group: System Environment/Daemons
Requires: %{name}-plugin-common
%description -n %{name}-plugin-zergpool
This package contains the zergpool plugin for uWSGI
%package -n %{name}-loggers
Summary: uWSGI - Logging plugins
Group: System Environment/Daemons
Requires: %{name}-plugin-common
%description -n %{name}-loggers
This package contains the logging plugins for uWSGI
%package -n %{name}-routers
Summary: uWSGI - Router plugins
Group: System Environment/Daemons
Requires: %{name}-plugin-common
%description -n %{name}-routers
This package contains the router plugins for uWSGI
%package -n %{name}-plugin-sslrouter
Summary: uWSGI - SSL Router plugin
Group: System Environment/Daemons
Requires: %{name}-plugin-common
%description -n %{name}-plugin-sslrouter
This package contains the SSL router plugin for uWSGI
%package -n %{name}-plugin-rawrouter
Summary: uWSGI - Raw Router plugin
Group: System Environment/Daemons
Requires: %{name}-plugin-common
%description -n %{name}-plugin-rawrouter
This package contains the Raw router plugin for uWSGI
%prep %prep
%setup -q %setup -q
cp -p %{SOURCE1} buildconf/ cp -p %{SOURCE1} buildconf/
cp -p %{SOURCE2} uwsgi-wiki-doc-v%{wikiversion}.txt cp -p %{SOURCE2} %{name}.service
cp -p %{SOURCE3} %{name}.service cp -p %{SOURCE3} %{name}.ini
cp -p %{SOURCE4} %{name}.ini
sed -i 's/\r//' uwsgi-wiki-doc-v%{wikiversion}.txt
echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1})
%patch0 -p1 %patch0 -p1
%patch1 -p1 %patch1 -p1
%patch2 -p1 %patch2 -p1
%patch3 -p1
%build %build
CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini
@ -201,10 +263,12 @@ mkdir -p %{buildroot}%{_unitdir}
mkdir -p %{buildroot}%{_sbindir} mkdir -p %{buildroot}%{_sbindir}
mkdir -p %{buildroot}%{_includedir}/%{name} mkdir -p %{buildroot}%{_includedir}/%{name}
mkdir -p %{buildroot}%{_libdir}/%{name} mkdir -p %{buildroot}%{_libdir}/%{name}
mkdir -p %{buildroot}%{_javadir}
mkdir -p %{buildroot}/run/%{name} mkdir -p %{buildroot}/run/%{name}
%{__install} -p -m 0755 %{name} %{buildroot}%{_sbindir} %{__install} -p -m 0755 %{name} %{buildroot}%{_sbindir}
%{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} %{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name}
%{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} %{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name}
%{__install} -p -m 0644 plugins/jvm/%{name}.jar %{buildroot}%{_javadir}
%{__install} -p -m 0644 %{name}.ini %{buildroot}%{_sysconfdir}/%{name}.ini %{__install} -p -m 0644 %{name}.ini %{buildroot}%{_sysconfdir}/%{name}.ini
%{__install} -p -m 0644 %{name}.service %{buildroot}%{_unitdir}/%{name}.service %{__install} -p -m 0644 %{name}.service %{buildroot}%{_unitdir}/%{name}.service
@ -255,8 +319,7 @@ exit 0
%{_unitdir}/%{name}.service %{_unitdir}/%{name}.service
%dir %{_sysconfdir}/%{name}.d %dir %{_sysconfdir}/%{name}.d
%dir /run/%{name} %dir /run/%{name}
%doc ChangeLog LICENSE README %doc LICENSE README
%doc uwsgi-wiki-doc-v%{wikiversion}.txt
%files -n %{name}-devel %files -n %{name}-devel
%{_includedir}/%{name} %{_includedir}/%{name}
@ -313,8 +376,46 @@ exit 0
%files -n %{name}-plugin-syslog %files -n %{name}-plugin-syslog
%{_libdir}/%{name}/syslog_plugin.so %{_libdir}/%{name}/syslog_plugin.so
%files -n %{name}-plugin-erlang
%{_libdir}/%{name}/erlang_plugin.so
%{_libdir}/%{name}/pyerl_plugin.so
%files -n %{name}-plugin-pam
%{_libdir}/%{name}/pam_plugin.so
%files -n %{name}-plugin-jvm
%{_libdir}/%{name}/jvm_plugin.so
%{_javadir}/uwsgi.jar
%files -n %{name}-plugin-zergpool
%{_libdir}/%{name}/zergpool_plugin.so
%files -n %{name}-loggers
%{_libdir}/%{name}/logfile_plugin.so
%{_libdir}/%{name}/logsocket_plugin.so
%{_libdir}/%{name}/mongodblog_plugin.so
%{_libdir}/%{name}/redislog_plugin.so
%files -n %{name}-routers
%{_libdir}/%{name}/router_*_plugin.so
%files -n %{name}-plugin-sslrouter
%{_libdir}/%{name}/sslrouter_plugin.so
%files -n %{name}-plugin-rawrouter
%{_libdir}/%{name}/rawrouter_plugin.so
%changelog %changelog
* Thu Apr 23 2013 Jorge A Gallegos <kad@blegh.net> - 1.9.8-0
- Rebuilt with latest stable version from upstream
* Thu Apr 11 2013 Jorge A Gallegos <kad@blegh.net> - 1.9.5-0
- Rebuilt with latest stable version from upstream
- Added Erlang, PAM and JVM plugins
- Added router-related plugins
- Added logger plugins
* Tue Apr 02 2013 Vít Ondruch <vondruch@redhat.com> - 1.2.6-10 * Tue Apr 02 2013 Vít Ondruch <vondruch@redhat.com> - 1.2.6-10
- Rebuild for https://fedoraproject.org/wiki/Features/Ruby_2.0.0 - Rebuild for https://fedoraproject.org/wiki/Features/Ruby_2.0.0

25
uwsgi_fix_lua.patch Normal file
View File

@ -0,0 +1,25 @@
diff --git a/plugins/lua/uwsgiplugin.py b/plugins/lua/uwsgiplugin.py
index ea12926..9b13f4d 100644
--- a/plugins/lua/uwsgiplugin.py
+++ b/plugins/lua/uwsgiplugin.py
@@ -3,17 +3,17 @@ import os,sys
try:
LUALIB = os.environ['UWSGICONFIG_LUALIB']
except:
- LUALIB = 'lua5.1'
+ LUALIB = 'lua'
try:
LUAINC = os.environ['UWSGICONFIG_LUAINC']
except:
- LUAINC = '/usr/include/lua5.1'
+ LUAINC = '/usr/include'
try:
LUALIBPATH = os.environ['UWSGICONFIG_LUALIBPATH']
except:
- LUALIBPATH = '/usr/lib/lua5.1'
+ LUALIBPATH = '/usr/lib/lua/5.1'
NAME='lua'
CFLAGS = ['-I%s' % LUAINC]

View File

@ -1,7 +1,24 @@
diff -r 655aa0eeb778 plugins/php/uwsgiplugin.py diff --git a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py
--- a/plugins/php/uwsgiplugin.py Tue Jun 26 07:59:35 2012 +0200 index ac7eb3e..0911288 100644
+++ b/plugins/php/uwsgiplugin.py Tue Jun 26 23:47:16 2012 -0700 --- a/plugins/jvm/uwsgiplugin.py
@@ -22,7 +22,6 @@ +++ b/plugins/jvm/uwsgiplugin.py
@@ -59,11 +59,6 @@ if "-framework JavaVM" in JVM_LIBPATH:
GCC_LIST = ['jvm_plugin']
-if 'LD_RUN_PATH' in os.environ:
- os.environ['LD_RUN_PATH'] += ':' + JVM_LIBPATH[0][2:]
-else:
- os.environ['LD_RUN_PATH'] = JVM_LIBPATH[0][2:]
-
def post_build(config):
if os.system("javac %s/plugins/jvm/uwsgi.java" % os.getcwd()) != 0:
os._exit(1)
diff --git a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py
index fb9e5bb..fd12c91 100644
--- a/plugins/php/uwsgiplugin.py
+++ b/plugins/php/uwsgiplugin.py
@@ -22,7 +22,6 @@ CFLAGS = [os.popen(PHPPATH + ' --includes').read().rstrip(), '-Wno-error=sign-co
LDFLAGS = os.popen(PHPPATH + ' --ldflags').read().rstrip().split() LDFLAGS = os.popen(PHPPATH + ' --ldflags').read().rstrip().split()
if ld_run_path: if ld_run_path:
LDFLAGS.append('-L%s' % ld_run_path) LDFLAGS.append('-L%s' % ld_run_path)
@ -9,10 +26,11 @@ diff -r 655aa0eeb778 plugins/php/uwsgiplugin.py
LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp5'] LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp5']
diff -r 655aa0eeb778 plugins/python/uwsgiplugin.py diff --git a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py
--- a/plugins/python/uwsgiplugin.py Tue Jun 26 07:59:35 2012 +0200 index c4f03e1..8d4b2e0 100644
+++ b/plugins/python/uwsgiplugin.py Tue Jun 26 23:47:16 2012 -0700 --- a/plugins/python/uwsgiplugin.py
@@ -20,10 +20,8 @@ +++ b/plugins/python/uwsgiplugin.py
@@ -45,10 +45,8 @@ if not 'UWSGI_PYTHON_NOLIB' in os.environ:
else: else:
try: try:
LDFLAGS.append("-L%s" % sysconfig.get_config_var('LIBDIR')) LDFLAGS.append("-L%s" % sysconfig.get_config_var('LIBDIR'))
@ -21,22 +39,25 @@ diff -r 655aa0eeb778 plugins/python/uwsgiplugin.py
LDFLAGS.append("-L%s/lib" % sysconfig.PREFIX) LDFLAGS.append("-L%s/lib" % sysconfig.PREFIX)
- os.environ['LD_RUN_PATH'] = "%s/lib" % sysconfig.PREFIX - os.environ['LD_RUN_PATH'] = "%s/lib" % sysconfig.PREFIX
LIBS.append('-lpython%s' % get_python_version())
else:
diff --git a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py
index 8dee214..2375bc9 100644
--- a/plugins/rack/uwsgiplugin.py
+++ b/plugins/rack/uwsgiplugin.py
@@ -44,7 +44,6 @@ LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LIBS']\""
version = sysconfig.get_config_var('VERSION') if has_shared == 'yes':
diff -r 655aa0eeb778 plugins/rack/uwsgiplugin.py LDFLAGS.append('-L' + libpath )
--- a/plugins/rack/uwsgiplugin.py Tue Jun 26 07:59:35 2012 +0200 - os.environ['LD_RUN_PATH'] = libpath
+++ b/plugins/rack/uwsgiplugin.py Tue Jun 26 23:47:16 2012 -0700 LIBS.append(os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip())
@@ -38,6 +38,5 @@ else:
GCC_LIST.append("%s/%s" % (libpath, os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LIBRUBY_A']\"" % rbconfig).read().rstrip()))
libpath = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['libdir']\"" % rbconfig).read().rstrip() diff --git a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py
LDFLAGS.append('-L' + libpath ) index ecea48d..4f35984 100644
-os.environ['LD_RUN_PATH'] = libpath --- a/plugins/ruby19/uwsgiplugin.py
LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip().split() +++ b/plugins/ruby19/uwsgiplugin.py
@@ -40,6 +40,5 @@ LDFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LDFLAG
diff -r 655aa0eeb778 plugins/ruby19/uwsgiplugin.py
--- a/plugins/ruby19/uwsgiplugin.py Tue Jun 26 07:59:35 2012 +0200
+++ b/plugins/ruby19/uwsgiplugin.py Tue Jun 26 23:47:16 2012 -0700
@@ -40,6 +40,5 @@
libpath = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['libdir']\"" % rbconfig).read().rstrip() libpath = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['libdir']\"" % rbconfig).read().rstrip()
LDFLAGS.append('-L' + libpath ) LDFLAGS.append('-L' + libpath )

View File

@ -1,6 +1,8 @@
diff --git a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py
index 2375bc9..b908417 100644
--- a/plugins/rack/uwsgiplugin.py --- a/plugins/rack/uwsgiplugin.py
+++ b/plugins/rack/uwsgiplugin.py +++ b/plugins/rack/uwsgiplugin.py
@@ -10,13 +10,14 @@ @@ -10,13 +10,14 @@ except:
rbconfig = 'Config' rbconfig = 'Config'
version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip() version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip()
@ -8,7 +10,7 @@
GCC_LIST = ['rack_plugin', 'rack_api'] GCC_LIST = ['rack_plugin', 'rack_api']
-if v[0] == '1' and v[1] == '9': -if (v[0] == '1' and v[1] == '9') or v[0] >= '2':
+if version >= '1.9': +if version >= '1.9':
CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split() CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split()
CFLAGS.append('-DRUBY19') CFLAGS.append('-DRUBY19')
@ -17,9 +19,11 @@
CFLAGS.append('-Wno-unused-parameter') CFLAGS.append('-Wno-unused-parameter')
rbconfig = 'RbConfig' rbconfig = 'RbConfig'
else: else:
diff --git a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py
index 4f35984..156018f 100644
--- a/plugins/ruby19/uwsgiplugin.py --- a/plugins/ruby19/uwsgiplugin.py
+++ b/plugins/ruby19/uwsgiplugin.py +++ b/plugins/ruby19/uwsgiplugin.py
@@ -10,13 +10,14 @@ @@ -10,13 +10,14 @@ except:
rbconfig = 'Config' rbconfig = 'Config'
version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip() version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip()
@ -36,15 +40,3 @@
CFLAGS.append('-Wno-unused-parameter') CFLAGS.append('-Wno-unused-parameter')
rbconfig = 'RbConfig' rbconfig = 'RbConfig'
else: else:
--- a/plugins/rack/rack_plugin.c
+++ b/plugins/rack/rack_plugin.c
@@ -163,7 +163,9 @@
}
#ifdef RUBY19
+#ifndef RUBY20
RUBY_GLOBAL_SETUP
+#endif
#endif
VALUE uwsgi_require_file(VALUE arg) {

View File

@ -1,11 +1,16 @@
diff -r 9768d97e85de uwsgiconfig.py diff --git a/uwsgiconfig.py b/uwsgiconfig.py
--- a/uwsgiconfig.py Sun May 20 20:51:46 2012 +0200 index e447123..4d55f2c 100644
+++ b/uwsgiconfig.py Tue Jun 26 22:33:08 2012 -0700 --- a/uwsgiconfig.py
@@ -899,7 +899,7 @@ +++ b/uwsgiconfig.py
@@ -1129,10 +1129,7 @@ def build_plugin(path, uc, cflags, ldflags, libs, name = None):
except: except:
pass pass
- plugin_dest = uc.get('plugin_dir') + '/' + name + '_plugin' - if uc:
- plugin_dest = uc.get('plugin_dir') + '/' + name + '_plugin'
- else:
- plugin_dest = name + '_plugin'
+ plugin_dest = name + '_plugin' + plugin_dest = name + '_plugin'
shared_flag = '-shared' shared_flag = '-shared'