From 42f326b768738b3cd6e05c2e532083ddd5642f84 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Mar 29 2018 16:29:23 +0000 Subject: Adjust the sources to build in rawhide --- diff --git a/uwsgi-2.0.16-strict.patch b/uwsgi-2.0.16-strict.patch new file mode 100644 index 0000000..363f837 --- /dev/null +++ b/uwsgi-2.0.16-strict.patch @@ -0,0 +1,48 @@ +diff -up uwsgi-2.0.16/plugins/rack/rack_plugin.c.strict uwsgi-2.0.16/plugins/rack/rack_plugin.c +--- uwsgi-2.0.16/plugins/rack/rack_plugin.c.strict 2018-02-10 11:00:57.000000000 +0100 ++++ uwsgi-2.0.16/plugins/rack/rack_plugin.c 2018-03-29 18:02:35.274649402 +0200 +@@ -71,7 +71,7 @@ static struct uwsgi_buffer *uwsgi_ruby_e + + static struct uwsgi_buffer *uwsgi_ruby_exception_msg(struct wsgi_request *wsgi_req) { + VALUE err = rb_errinfo(); +- VALUE e = rb_funcall(err, rb_intern("message"), 0, 0); ++ VALUE e = rb_funcall(err, rb_intern("message"), 0); + struct uwsgi_buffer *ub = uwsgi_buffer_new(RSTRING_LEN(e)); + if (uwsgi_buffer_append(ub, RSTRING_PTR(e), RSTRING_LEN(e))) { + uwsgi_buffer_destroy(ub); +@@ -114,7 +114,7 @@ error: + static void uwsgi_ruby_exception_log(struct wsgi_request *wsgi_req) { + VALUE err = rb_errinfo(); + VALUE eclass = rb_class_name(rb_class_of(err)); +- VALUE msg = rb_funcall(err, rb_intern("message"), 0, 0); ++ VALUE msg = rb_funcall(err, rb_intern("message"), 0); + + VALUE ary = rb_funcall(err, rb_intern("backtrace"), 0); + int i; +diff -up uwsgi-2.0.16/plugins/router_basicauth/router_basicauth.c.strict uwsgi-2.0.16/plugins/router_basicauth/router_basicauth.c +--- uwsgi-2.0.16/plugins/router_basicauth/router_basicauth.c.strict 2018-02-10 11:00:57.000000000 +0100 ++++ uwsgi-2.0.16/plugins/router_basicauth/router_basicauth.c 2018-03-29 18:02:57.311779724 +0200 +@@ -2,7 +2,10 @@ + + #ifdef UWSGI_ROUTING + +-#if defined(__linux__) && defined(__GLIBC__) ++#if defined(__linux__) && (defined(__GLIBC__) && __GLIBC__ == 2) && \ ++ (defined(__GLIBC_MINOR__) && __GLIBC_MINOR__ >= 2 && __GLIBC_MINOR__ < 4) ++ /* work around glibc-2.2.5 bug, ++ * has been fixed at some time in glibc-2.3.X */ + #include + #elif defined(__CYGWIN__) + #include +@@ -66,7 +69,10 @@ static uint16_t htpasswd_check(char *fil + + if (clen > 13) cpwd[13] = 0; + +-#if defined(__linux__) && defined(__GLIBC__) ++#if defined(__linux__) && (defined(__GLIBC__) && __GLIBC__ == 2) && \ ++ (defined(__GLIBC_MINOR__) && __GLIBC_MINOR__ >= 2 && __GLIBC_MINOR__ < 4) ++ /* work around glibc-2.2.5 bug, ++ * has been fixed at some time in glibc-2.3.X */ + struct crypt_data cd; + cd.initialized = 0; + // we do as nginx here diff --git a/uwsgi.spec b/uwsgi.spec index 50249f6..09a3d3e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -144,6 +144,8 @@ Patch3: uwsgi_fix_lua.patch Patch5: uwsgi_fix_mongodb.patch Patch6: uwsgi_v8-314_compatibility.patch Patch7: uwsgi_fix_mono.patch +# https://github.com/unbit/uwsgi/pull/1768 +Patch8: uwsgi-2.0.16-strict.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel %if %{with tcp_wrappers} @@ -1141,6 +1143,7 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %if %{with mono} %patch7 -p1 %endif +%patch8 -p1 -b .strict #disable plug-ins %if %{without mongodblibs}