diff --git a/gsoap-00-builtsource.diff b/gsoap-00-builtsource.diff new file mode 100644 index 0000000..9385c8d --- /dev/null +++ b/gsoap-00-builtsource.diff @@ -0,0 +1,24 @@ +From: Jan Engelhardt +Date: 2016-01-28 19:30:10.973606466 +0100 +References: http://sf.net/p/gsoap2/patches/156/ + +Every .c/.cpp file which is updated/created needs to be in +BUILT_SOURCES. + +--- + gsoap/Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: gsoap-2.8.28/gsoap/Makefile.am +=================================================================== +--- gsoap-2.8.28.orig/gsoap/Makefile.am ++++ gsoap-2.8.28/gsoap/Makefile.am +@@ -49,7 +49,7 @@ libgsoapssl_a_CFLAGS = $(SOAPCPP2_DEBUG) + libgsoapssl___a_SOURCES = stdsoap2_ssl_cpp.cpp dom_cpp.cpp + libgsoapssl___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES + +-BUILT_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp $(lib_LIBRARIES) ++BUILT_SOURCES = stdsoap2_ck.c stdsoap2_cpp.cpp stdsoap2_ck_cpp.cpp stdsoap2_ssl.c stdsoap2_ssl_cpp.cpp dom.cpp + + include_HEADERS = stdsoap2.h + diff --git a/gsoap-01-sharedlibs.diff b/gsoap-01-sharedlibs.diff index 737bedd..8a09bc1 100644 --- a/gsoap-01-sharedlibs.diff +++ b/gsoap-01-sharedlibs.diff @@ -10,10 +10,10 @@ build: always use shared libraries gsoap/samples/databinding/Makefile.am | 2 +- 4 files changed, 28 insertions(+), 20 deletions(-) -Index: gsoap-2.8.21/configure.ac +Index: gsoap-2.8.28/configure.ac =================================================================== ---- gsoap-2.8.21.orig/configure.ac -+++ gsoap-2.8.21/configure.ac +--- gsoap-2.8.28.orig/configure.ac ++++ gsoap-2.8.28/configure.ac @@ -15,8 +15,8 @@ AM_PROG_CC_C_O AM_PROG_LEX AC_PROG_YACC @@ -52,10 +52,10 @@ Index: gsoap-2.8.21/configure.ac fi AC_SUBST(WSDL2H_EXTRA_FLAGS) AC_SUBST(WSDL2H_EXTRA_LIBS) -Index: gsoap-2.8.21/gsoap/Makefile.am +Index: gsoap-2.8.28/gsoap/Makefile.am =================================================================== ---- gsoap-2.8.21.orig/gsoap/Makefile.am -+++ gsoap-2.8.21/gsoap/Makefile.am +--- gsoap-2.8.28.orig/gsoap/Makefile.am ++++ gsoap-2.8.28/gsoap/Makefile.am @@ -34,20 +34,28 @@ stdsoap2_ssl_cpp.cpp: stdsoap2.cpp dom_cpp.cpp: dom.cpp $(LN_S) -f $(srcdir)/dom.cpp dom_cpp.cpp @@ -72,36 +72,36 @@ Index: gsoap-2.8.21/gsoap/Makefile.am -libgsoapck___a_SOURCES = stdsoap2_ck_cpp.cpp dom_cpp.cpp -libgsoapck___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES -libgsoapssl_a_SOURCES = stdsoap2_ssl.c dom.c --libgsoapssl_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM +-libgsoapssl_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES -libgsoapssl___a_SOURCES = stdsoap2_ssl_cpp.cpp dom_cpp.cpp --libgsoapssl___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM +-libgsoapssl___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES +libgsoap_la_SOURCES = stdsoap2.c dom.c +libgsoap_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) -+libgsoap_la_LDFLAGS = -release ${PACKAGE_VERSION} +libgsoap___la_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp +libgsoap___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) -+libgsoap___la_LDFLAGS = ${libgsoap_la_LDFLAGS} +libgsoapck_la_SOURCES = stdsoap2_ck.c dom.c +libgsoapck_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES -+libgsoapck_la_LDFLAGS = ${libgsoap_la_LDFLAGS} +libgsoapck___la_SOURCES = stdsoap2_ck_cpp.cpp dom_cpp.cpp +libgsoapck___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES -+libgsoapck___la_LDFLAGS = ${libgsoap_la_LDFLAGS} +libgsoapssl_la_SOURCES = stdsoap2_ssl.c dom.c -+libgsoapssl_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM ++libgsoapssl_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES ++libgsoapssl___la_SOURCES = stdsoap2_ssl_cpp.cpp dom_cpp.cpp ++libgsoapssl___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES ++libgsoap_la_LDFLAGS = -release ${PACKAGE_VERSION} ++libgsoap___la_LDFLAGS = ${libgsoap_la_LDFLAGS} ++libgsoapck_la_LDFLAGS = ${libgsoap_la_LDFLAGS} ++libgsoapck___la_LDFLAGS = ${libgsoap_la_LDFLAGS} +libgsoapssl_la_LDFLAGS = ${libgsoap_la_LDFLAGS} +libgsoapssl_la_LIBADD = ${SAMPLE_SSL_LIBS} -+libgsoapssl___la_SOURCES = stdsoap2_ssl_cpp.cpp dom_cpp.cpp -+libgsoapssl___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM +libgsoapssl___la_LDFLAGS = ${libgsoap_la_LDFLAGS} +libgsoapssl___la_LIBADD = ${SAMPLE_SSL_LIBS} - BUILT_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp $(lib_LIBRARIES) + BUILT_SOURCES = stdsoap2_ck.c stdsoap2_cpp.cpp stdsoap2_ck_cpp.cpp stdsoap2_ssl.c stdsoap2_ssl_cpp.cpp dom.cpp -Index: gsoap-2.8.21/gsoap/samples/autotest/Makefile.am +Index: gsoap-2.8.28/gsoap/samples/autotest/Makefile.am =================================================================== ---- gsoap-2.8.21.orig/gsoap/samples/autotest/Makefile.am -+++ gsoap-2.8.21/gsoap/samples/autotest/Makefile.am +--- gsoap-2.8.28.orig/gsoap/samples/autotest/Makefile.am ++++ gsoap-2.8.28/gsoap/samples/autotest/Makefile.am @@ -14,7 +14,7 @@ SOAP_FLAGS=-SL -T -I$(top_srcdir)/gsoap/ WSDLINPUT=$(srcdir)/examples.wsdl SOAPHEADER=$(srcdir)/examples.h @@ -111,10 +111,10 @@ Index: gsoap-2.8.21/gsoap/samples/autotest/Makefile.am $(SOAP_CPP_SRC) : $(WSDLINPUT) $(WSDL) $(WSDL_FLAGS) $(WSDLINPUT) -Index: gsoap-2.8.21/gsoap/samples/databinding/Makefile.am +Index: gsoap-2.8.28/gsoap/samples/databinding/Makefile.am =================================================================== ---- gsoap-2.8.21.orig/gsoap/samples/databinding/Makefile.am -+++ gsoap-2.8.21/gsoap/samples/databinding/Makefile.am +--- gsoap-2.8.28.orig/gsoap/samples/databinding/Makefile.am ++++ gsoap-2.8.28/gsoap/samples/databinding/Makefile.am @@ -14,7 +14,7 @@ SOAP_FLAGS=-0 -CS -p address -I$(top_src WSDLINPUT=$(srcdir)/address.xsd SOAPHEADER=$(srcdir)/address.h diff --git a/gsoap-02-typepuns.diff b/gsoap-02-typepuns.diff index ebb509a..a807506 100644 --- a/gsoap-02-typepuns.diff +++ b/gsoap-02-typepuns.diff @@ -1,9 +1,14 @@ -References: https://sourceforge.net/p/gsoap2/patches/124/attachment/gsoap-aliasing.patch +References: https://sf.net/p/gsoap2/patches/124/ -diff -ur gsoap-2.8.orig/gsoap/plugin/wsaapi.c gsoap-2.8/gsoap/plugin/wsaapi.c ---- gsoap-2.8.orig/gsoap/plugin/wsaapi.c 2015-04-14 08:46:30.000000000 +0200 -+++ gsoap-2.8/gsoap/plugin/wsaapi.c 2015-05-05 09:19:27.985619710 +0200 -@@ -599,7 +599,7 @@ +--- + gsoap/plugin/wsaapi.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: gsoap-2.8.22/gsoap/plugin/wsaapi.c +=================================================================== +--- gsoap-2.8.22.orig/gsoap/plugin/wsaapi.c ++++ gsoap-2.8.22/gsoap/plugin/wsaapi.c +@@ -599,7 +599,7 @@ soap_wsa_rand_uuid(struct soap *soap) k += 0x7FFFFFFF; r2 = k; k &= 0x8FFFFFFF; @@ -12,42 +17,6 @@ diff -ur gsoap-2.8.orig/gsoap/plugin/wsaapi.c gsoap-2.8/gsoap/plugin/wsaapi.c #endif r3 = soap_random; r4 = soap_random; -diff -ur gsoap-2.8.orig/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp gsoap-2.8/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp ---- gsoap-2.8.orig/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp 2015-04-14 08:46:34.000000000 +0200 -+++ gsoap-2.8/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp 2015-05-05 09:01:31.633153838 +0200 -@@ -3105,11 +3105,11 @@ - int - SOAP_FMAC2 - soap_rand() --{ unsigned char buf[4]; -+{ int buf; - if (!soap_ssl_init_done) - soap_ssl_init(); -- RAND_pseudo_bytes(buf, 4); -- return *(int*)buf; -+ RAND_pseudo_bytes((unsigned char*)&buf, sizeof(int)); -+ return buf; - } - #endif - #endif -diff -ur gsoap-2.8.orig/gsoap/stdsoap2.c gsoap-2.8/gsoap/stdsoap2.c ---- gsoap-2.8.orig/gsoap/stdsoap2.c 2015-04-14 08:46:36.000000000 +0200 -+++ gsoap-2.8/gsoap/stdsoap2.c 2015-05-05 09:01:31.633153838 +0200 -@@ -3105,11 +3105,11 @@ - int - SOAP_FMAC2 - soap_rand() --{ unsigned char buf[4]; -+{ int buf; - if (!soap_ssl_init_done) - soap_ssl_init(); -- RAND_pseudo_bytes(buf, 4); -- return *(int*)buf; -+ RAND_pseudo_bytes((unsigned char*)&buf, sizeof(int)); -+ return buf; - } - #endif - #endif diff -ur gsoap-2.8.orig/gsoap/stdsoap2.cpp gsoap-2.8/gsoap/stdsoap2.cpp --- gsoap-2.8.orig/gsoap/stdsoap2.cpp 2015-04-14 08:46:36.000000000 +0200 +++ gsoap-2.8/gsoap/stdsoap2.cpp 2015-05-05 09:01:31.633153838 +0200 @@ -66,21 +35,3 @@ diff -ur gsoap-2.8.orig/gsoap/stdsoap2.cpp gsoap-2.8/gsoap/stdsoap2.cpp } #endif #endif -diff -ur gsoap-2.8.orig/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp gsoap-2.8/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp ---- gsoap-2.8.orig/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp 2015-04-14 08:46:36.000000000 +0200 -+++ gsoap-2.8/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp 2015-05-05 09:01:31.633153838 +0200 -@@ -3105,11 +3105,11 @@ - int - SOAP_FMAC2 - soap_rand() --{ unsigned char buf[4]; -+{ int buf; - if (!soap_ssl_init_done) - soap_ssl_init(); -- RAND_pseudo_bytes(buf, 4); -- return *(int*)buf; -+ RAND_pseudo_bytes((unsigned char*)&buf, sizeof(int)); -+ return buf; - } - #endif - #endif diff --git a/gsoap-03-seqpoint.diff b/gsoap-03-seqpoint.diff new file mode 100644 index 0000000..c8c4095 --- /dev/null +++ b/gsoap-03-seqpoint.diff @@ -0,0 +1,33 @@ +From: Jan Engelhardt +Date: 2016-01-28 19:19:57.092815111 +0100 +References: http://sf.net/p/gsoap2/patches/157/ + +In file included from stdsoap2_ssl.c:60:0: +stdsoap2_ssl.c: In function ‘soap_getgziphdr’: +stdsoap2.h:2347:128: warning: operation on ‘soap->bufidx’ may be undefined [-Wsequence-point] + # define soap_get1(soap) (((soap)->bufidx>=(soap)->buflen && soap_recv(soap)) ? EOF : (unsigned char)(soap)->buf[(soap)->bufidx++]) + ^ +stdsoap2_ssl.c:15576:14: note: in expansion of macro ‘soap_get1’ + { for (i = soap_get1(soap) | (soap_get1(soap) << 8); i; i--) + ^ + +--- + gsoap/stdsoap2.cpp | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +Index: gsoap-2.8.28/gsoap/stdsoap2.cpp +=================================================================== +--- gsoap-2.8.28.orig/gsoap/stdsoap2.cpp ++++ gsoap-2.8.28/gsoap/stdsoap2.cpp +@@ -16408,7 +16408,10 @@ soap_getgziphdr(struct soap *soap) + f = c; + } + if (f & 0x04) /* FEXTRA */ +- { for (i = soap_get1(soap) | (soap_get1(soap) << 8); i; i--) ++ { ++ int i = soap_get1(soap); ++ i |= soap_get1(soap) << 8; ++ while (i-- > 0) + { if ((int)soap_get1(soap) == EOF) + return soap->error = SOAP_ZLIB_ERROR; + } diff --git a/gsoap-2.8.22.tar.xz b/gsoap-2.8.22.tar.xz deleted file mode 100644 index 647d337..0000000 --- a/gsoap-2.8.22.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7eeffcda67a1de66ed8b91833cce7d1648c0e9a13f947b4a051c4837e3d2fb5a -size 6722668 diff --git a/gsoap-2.8.28.tar.xz b/gsoap-2.8.28.tar.xz new file mode 100644 index 0000000..f03cfc4 --- /dev/null +++ b/gsoap-2.8.28.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:96f5730f2f1104925666f13137b531364b3412bcec28cfd42cfbde999ab668a9 +size 8006356 diff --git a/gsoap-allocator.diff b/gsoap-allocator.diff deleted file mode 100644 index 39560d8..0000000 --- a/gsoap-allocator.diff +++ /dev/null @@ -1,39 +0,0 @@ ---- - gsoap/stdsoap2.cpp | 17 +++++++++++++++-- - 1 file changed, 15 insertions(+), 2 deletions(-) - -Index: gsoap-2.8.22/gsoap/stdsoap2.cpp -=================================================================== ---- gsoap-2.8.22.orig/gsoap/stdsoap2.cpp -+++ gsoap-2.8.22/gsoap/stdsoap2.cpp -@@ -7256,7 +7256,13 @@ SOAP_FMAC1 - struct soap* - SOAP_FMAC2 - soap_versioning(soap_new)(soap_mode imode, soap_mode omode) --{ struct soap *soap = (struct soap*)malloc(sizeof(struct soap)); -+{ -+#ifdef __cplusplus -+ struct soap *soap = new struct soap; -+#else -+ struct soap *soap = malloc(sizeof(struct soap)); -+ soap->dummy = NULL; -+#endif - if (soap) - soap_versioning(soap_init)(soap, imode, omode); - return soap; -@@ -8983,7 +8989,14 @@ SOAP_FMAC1 - struct soap* - SOAP_FMAC2 - soap_copy(const struct soap *soap) --{ return soap_copy_context((struct soap*)malloc(sizeof(struct soap)), soap); -+{ -+#ifdef __cplusplus -+ return soap_copy_context(new struct soap, soap); -+#else -+ struct soap *s = malloc(sizeof(struct soap)); -+ s->dummy = NULL; -+ return soap_copy_context(s, soap); -+#endif - } - #endif - diff --git a/gsoap-mindeflateratio.diff b/gsoap-mindeflateratio.diff index e4fe859..465d5d0 100644 --- a/gsoap-mindeflateratio.diff +++ b/gsoap-mindeflateratio.diff @@ -1,4 +1,5 @@ From: Jan Engelhardt +References: http://sf.net/p/gsoap2/patches/158/ gsoap has a weird "protection": if content is compressed too well, it is considered evil and dropped. @@ -11,11 +12,11 @@ However, the comment above explicitly says the minimum is gsoap/stdsoap2.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -Index: gsoap-2.8.22/gsoap/stdsoap2.h +Index: gsoap-2.8.28/gsoap/stdsoap2.h =================================================================== ---- gsoap-2.8.22.orig/gsoap/stdsoap2.h -+++ gsoap-2.8.22/gsoap/stdsoap2.h -@@ -1159,7 +1159,7 @@ extern "C" { +--- gsoap-2.8.28.orig/gsoap/stdsoap2.h ++++ gsoap-2.8.28/gsoap/stdsoap2.h +@@ -1212,7 +1212,7 @@ extern "C" { to the limit of 1032:1. */ #ifndef SOAP_MINDEFLATERATIO diff --git a/gsoap-no-tcpfastopen-fail.diff b/gsoap-no-tcpfastopen-fail.diff new file mode 100644 index 0000000..e9f080b --- /dev/null +++ b/gsoap-no-tcpfastopen-fail.diff @@ -0,0 +1,29 @@ +From: Folkert van Heusden / Jan Engelhardt +References: http://sf.net/p/gsoap2/patches/159/ + +setsockopt TCP_FASTOPEN can fail with -ENOPROTOSUPPORT if the kernel +can't do it, and then all of gsoap aborts :( +Ignore return value, so that the zarafa-server still starts even +in the absence of TCP_FASTOPEN. + +--- + gsoap/stdsoap2.cpp | 6 +----- + 1 file changed, 1 insertion(+), 5 deletions(-) + +Index: gsoap-2.8.22/gsoap/stdsoap2.cpp +=================================================================== +--- gsoap-2.8.22.orig/gsoap/stdsoap2.cpp ++++ gsoap-2.8.22/gsoap/stdsoap2.cpp +@@ -5140,11 +5140,7 @@ soap_bind(struct soap *soap, const char + } + #endif + #ifdef TCP_FASTOPEN +- if (!(soap->omode & SOAP_IO_UDP) && setsockopt(soap->master, SOL_TCP, TCP_FASTOPEN, (char*)&set, sizeof(int))) +- { soap->errnum = soap_socket_errno(soap->master); +- soap_set_receiver_error(soap, tcp_error(soap), "setsockopt TCP_FASTOPEN failed in soap_bind()", SOAP_TCP_ERROR); +- return SOAP_INVALID_SOCKET; +- } ++ if (!(soap->omode & SOAP_IO_UDP)) setsockopt(soap->master, SOL_TCP, TCP_FASTOPEN, (char*)&set, sizeof(int)); + #endif + #endif + #endif diff --git a/gsoap.changes b/gsoap.changes index 5da39ee..39fad51 100644 --- a/gsoap.changes +++ b/gsoap.changes @@ -1,3 +1,42 @@ +------------------------------------------------------------------- +Wed Feb 3 09:07:07 UTC 2016 - jengelh@inai.de + +- Update to new upstream release 2.8.28 +* Added many new API functions to a fully redisigned XML DOM API + v5 for C and C++ with new DOM API documentation. The redesigned + DOM API v5 is mostly backward compatible to DOM API v4, but + with DOM string data members changed to text members. Many API + functions are added to define a clean interface without having + to use the DOM structure data members. The + soap_dom_next_element() function now takes a second parameter + that is an element pointer to stop deep traversal at (use NULL + for old behavior). See updated XML DOM and XPath documentation + for details. +* Added C serialization to/from strings with new C soap struct + members const char *soap::is input string to parse from and + const char **soap:os pointer to string that is set by the + engine to point to the output. Note that C++ code is unchanged + and the soap::is and soap::os are still members pointers to + istream and ostream streams (use std::stringstream for + input/output from/to strings). +* Added JSON API C function set_size to set/change array sizes + and JSON API C function set_struct to create an empty JSON + object. +* Improved jsoncpp command line tool to generate JSONPath C code + and improved overall to generate more compact code. +* Improved SOAP_DEFAULTNS flag to emit XML default namespace + declarations. +* Improved strictness of XML verification under default settings + (i.e. without requiring SOAP_XML_STRICT). +* Changed string deserialization when XML content with tags is + encountered: XML tags are no longer parsed as part of strings. + You must use XML string type to parse literal XML content or + use DOM. +- Remove gsoap-allocator.diff, gsoap-reset-error-code.diff + (merged upstream) +- Add gsoap-00-builtsource.diff, gsoap-03-seqpoint.diff, + gsoap-no-tcpfastopen-fail.diff + ------------------------------------------------------------------- Tue Jun 2 11:19:46 UTC 2015 - jengelh@inai.de @@ -38,7 +77,6 @@ Thu Jan 15 18:34:35 UTC 2015 - jengelh@inai.de UTF8 content that is outside the allowed range of XML 1.0. - Remove gsoap-05-ipv6.diff, gsoap-06-ipv6retry.diff (merged upstream) -- Add gsoap-mindeflateratio.diff ------------------------------------------------------------------- Sun Aug 3 23:16:48 UTC 2014 - jengelh@inai.de diff --git a/gsoap.spec b/gsoap.spec index 2382515..6a7f972 100644 --- a/gsoap.spec +++ b/gsoap.spec @@ -1,7 +1,7 @@ # # spec file for package gsoap # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,7 +18,7 @@ Name: gsoap %define lname libgsoap-2_8 -Version: 2.8.22 +Version: 2.8.28 Release: 0 Summary: Toolkit for C/C++ server and client web service applications License: SUSE-GPL-2.0+-with-openssl-exception @@ -29,10 +29,12 @@ Url: http://gsoap2.sf.net/ Source: gsoap-%version.tar.xz Source2: sanitize_source.sh Patch13: gsoap-automake1_13.diff +Patch0: gsoap-00-builtsource.diff Patch1: gsoap-01-sharedlibs.diff Patch2: gsoap-02-typepuns.diff -Patch3: gsoap-mindeflateratio.diff -Patch4: gsoap-allocator.diff +Patch3: gsoap-03-seqpoint.diff +Patch4: gsoap-mindeflateratio.diff +Patch6: gsoap-no-tcpfastopen-fail.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: autoconf BuildRequires: automake @@ -41,7 +43,6 @@ BuildRequires: flex BuildRequires: gcc-c++ BuildRequires: libtool BuildRequires: pkg-config -BuildRequires: xz BuildRequires: pkgconfig(gnutls) BuildRequires: pkgconfig(libcrypto) BuildRequires: pkgconfig(libssl) @@ -93,36 +94,35 @@ symlinks for libgsoap. %prep %setup -q cmp gsoap/stdsoap2.cpp gsoap/stdsoap2.c -%patch -P 13 -P 1 -P 2 -P 3 -P 4 -p1 -cp gsoap/stdsoap2.cpp gsoap/stdsoap2.c +%patch -P 13 -P 0 -P 1 -P 2 -P 3 -P 4 -P 6 -p1 +ln -fs stdsoap2.cpp gsoap/stdsoap2.c %build # Rebuild configure - fix that utterly long mktime test. -autoreconf -fi; +autoreconf -fi %configure --enable-ipv6 --disable-static -pushd gsoap/src/; +pushd gsoap/src/ # build prerequisites for parallel build first -make soapcpp2_yacc.c; -popd; -make %{?_smp_mflags}; +make soapcpp2_yacc.c +popd +make %{?_smp_mflags} %install -b="%buildroot"; -make install DESTDIR="$b"; -rm -f "$b/%_libdir"/*.la; +b="%buildroot" +make install DESTDIR="$b" +rm -f "$b/%_libdir"/*.la %if 0%{?fdupes:1} %fdupes %buildroot %endif -%post -n %lname -p /sbin/ldconfig - +%post -n %lname -p /sbin/ldconfig %postun -n %lname -p /sbin/ldconfig %files devel %defattr(-,root,root) %_bindir/* -%_datadir/%name +%_datadir/%name/ %files -n %lname %defattr(-,root,root) diff --git a/sanitize_source.sh b/sanitize_source.sh index 3ec6157..9e2ab14 100644 --- a/sanitize_source.sh +++ b/sanitize_source.sh @@ -1,4 +1,4 @@ -#!/bin/sh -x +#!/bin/sh -ex # # Shrink the gsoap archive from 20 MB -> 6 MB. # @@ -13,7 +13,7 @@ if ! which hardlink >/dev/null; then exit 1; fi; -version="2.8.22"; +version="2.8.28"; shortver="2.8"; # agh... rm -Rf "gsoap-$shortver" "gsoap-$version";