From 919b29c57af4526ae80443b98e7b60205029098aa62d2bf878650871e06844e4 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Tue, 22 Mar 2016 10:02:55 +0000 Subject: [PATCH] - Update to new upstream release 2.8.29 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gsoap?expand=0&rev=56 --- gsoap-00-builtsource.diff | 10 +++---- gsoap-01-sharedlibs.diff | 28 +++++++++--------- gsoap-03-seqpoint.diff | 33 --------------------- gsoap-2.8.28.tar.xz | 3 -- gsoap-2.8.29.tar.xz | 3 ++ gsoap-mindeflateratio.diff | 27 ----------------- gsoap-no-tcpfastopen-fail.diff | 29 ------------------- gsoap.changes | 18 ++++++++++++ gsoap.spec | 53 ++++++++++++++-------------------- sanitize_source.sh | 21 +++++++------- 10 files changed, 71 insertions(+), 154 deletions(-) delete mode 100644 gsoap-03-seqpoint.diff delete mode 100644 gsoap-2.8.28.tar.xz create mode 100644 gsoap-2.8.29.tar.xz delete mode 100644 gsoap-mindeflateratio.diff delete mode 100644 gsoap-no-tcpfastopen-fail.diff diff --git a/gsoap-00-builtsource.diff b/gsoap-00-builtsource.diff index 9385c8d..9a40b76 100644 --- a/gsoap-00-builtsource.diff +++ b/gsoap-00-builtsource.diff @@ -9,16 +9,16 @@ BUILT_SOURCES. gsoap/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -Index: gsoap-2.8.28/gsoap/Makefile.am +Index: gsoap-2.8.29/gsoap/Makefile.am =================================================================== ---- gsoap-2.8.28.orig/gsoap/Makefile.am -+++ gsoap-2.8.28/gsoap/Makefile.am +--- gsoap-2.8.29.orig/gsoap/Makefile.am ++++ gsoap-2.8.29/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 +-BUILT_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp stdsoap2_ck.c stdsoap2_ck_cpp.cpp stdsoap2_ssl.c stdsoap2_ssl_cpp.cpp $(lib_LIBRARIES) ++BUILT_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp stdsoap2_ck.c stdsoap2_ck_cpp.cpp stdsoap2_ssl.c stdsoap2_ssl_cpp.cpp include_HEADERS = stdsoap2.h diff --git a/gsoap-01-sharedlibs.diff b/gsoap-01-sharedlibs.diff index 8a09bc1..89996b1 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.28/configure.ac +Index: gsoap-2.8.29/configure.ac =================================================================== ---- gsoap-2.8.28.orig/configure.ac -+++ gsoap-2.8.28/configure.ac +--- gsoap-2.8.29.orig/configure.ac ++++ gsoap-2.8.29/configure.ac @@ -15,8 +15,8 @@ AM_PROG_CC_C_O AM_PROG_LEX AC_PROG_YACC @@ -35,7 +35,7 @@ Index: gsoap-2.8.28/configure.ac AC_MSG_RESULT(no) WSDL2H_EXTRA_FLAGS="-DWITH_OPENSSL -DWITH_GZIP" @@ -244,7 +244,7 @@ if test "x$with_openssl" = "xyes"; then - WSDL2H_EXTRA_LIBS="${WSDL2H_EXTRA_LIBS} ../plugin/httpda.c ../plugin/md5evp.c ../plugin/threads.c -lssl -lcrypto -lz" + WSDL2H_EXTRA_LIBS="${WSDL2H_EXTRA_LIBS} ../plugin/httpda.c ../plugin/smdevp.c ../plugin/threads.c -lssl -lcrypto -lz" SAMPLE_INCLUDES= SAMPLE_SSL_LIBS="-lssl -lcrypto -lz" - WSDL2H_SOAP_CPP_LIB="libgsoapssl++.a" @@ -52,10 +52,10 @@ Index: gsoap-2.8.28/configure.ac fi AC_SUBST(WSDL2H_EXTRA_FLAGS) AC_SUBST(WSDL2H_EXTRA_LIBS) -Index: gsoap-2.8.28/gsoap/Makefile.am +Index: gsoap-2.8.29/gsoap/Makefile.am =================================================================== ---- gsoap-2.8.28.orig/gsoap/Makefile.am -+++ gsoap-2.8.28/gsoap/Makefile.am +--- gsoap-2.8.29.orig/gsoap/Makefile.am ++++ gsoap-2.8.29/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 @@ -96,12 +96,12 @@ Index: gsoap-2.8.28/gsoap/Makefile.am +libgsoapssl___la_LDFLAGS = ${libgsoap_la_LDFLAGS} +libgsoapssl___la_LIBADD = ${SAMPLE_SSL_LIBS} - BUILT_SOURCES = stdsoap2_ck.c stdsoap2_cpp.cpp stdsoap2_ck_cpp.cpp stdsoap2_ssl.c stdsoap2_ssl_cpp.cpp dom.cpp + BUILT_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp stdsoap2_ck.c stdsoap2_ck_cpp.cpp stdsoap2_ssl.c stdsoap2_ssl_cpp.cpp -Index: gsoap-2.8.28/gsoap/samples/autotest/Makefile.am +Index: gsoap-2.8.29/gsoap/samples/autotest/Makefile.am =================================================================== ---- gsoap-2.8.28.orig/gsoap/samples/autotest/Makefile.am -+++ gsoap-2.8.28/gsoap/samples/autotest/Makefile.am +--- gsoap-2.8.29.orig/gsoap/samples/autotest/Makefile.am ++++ gsoap-2.8.29/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.28/gsoap/samples/autotest/Makefile.am $(SOAP_CPP_SRC) : $(WSDLINPUT) $(WSDL) $(WSDL_FLAGS) $(WSDLINPUT) -Index: gsoap-2.8.28/gsoap/samples/databinding/Makefile.am +Index: gsoap-2.8.29/gsoap/samples/databinding/Makefile.am =================================================================== ---- gsoap-2.8.28.orig/gsoap/samples/databinding/Makefile.am -+++ gsoap-2.8.28/gsoap/samples/databinding/Makefile.am +--- gsoap-2.8.29.orig/gsoap/samples/databinding/Makefile.am ++++ gsoap-2.8.29/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-03-seqpoint.diff b/gsoap-03-seqpoint.diff deleted file mode 100644 index c8c4095..0000000 --- a/gsoap-03-seqpoint.diff +++ /dev/null @@ -1,33 +0,0 @@ -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.28.tar.xz b/gsoap-2.8.28.tar.xz deleted file mode 100644 index f03cfc4..0000000 --- a/gsoap-2.8.28.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:96f5730f2f1104925666f13137b531364b3412bcec28cfd42cfbde999ab668a9 -size 8006356 diff --git a/gsoap-2.8.29.tar.xz b/gsoap-2.8.29.tar.xz new file mode 100644 index 0000000..d93022d --- /dev/null +++ b/gsoap-2.8.29.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9931e7f90a11ce348f69744860d58383c2407d38831184d799d1a57d7e022aae +size 8086964 diff --git a/gsoap-mindeflateratio.diff b/gsoap-mindeflateratio.diff deleted file mode 100644 index 465d5d0..0000000 --- a/gsoap-mindeflateratio.diff +++ /dev/null @@ -1,27 +0,0 @@ -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. - -In gsoap-2.8.22, the MINDEFAULT value was changed from 0.1 to 0.001. -However, the comment above explicitly says the minimum is -0.0009something. - ---- - gsoap/stdsoap2.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: gsoap-2.8.28/gsoap/stdsoap2.h -=================================================================== ---- 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 --# define SOAP_MINDEFLATERATIO (0.001) /* ratio of deflated/inflated > 0.1% */ -+# define SOAP_MINDEFLATERATIO (1.0/1032) /* 0.001 would still reject 1032:1 streams */ - #endif - - #ifdef VXWORKS diff --git a/gsoap-no-tcpfastopen-fail.diff b/gsoap-no-tcpfastopen-fail.diff deleted file mode 100644 index e9f080b..0000000 --- a/gsoap-no-tcpfastopen-fail.diff +++ /dev/null @@ -1,29 +0,0 @@ -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 dbedfaf..d9d95a3 100644 --- a/gsoap.changes +++ b/gsoap.changes @@ -1,3 +1,21 @@ +------------------------------------------------------------------- +Tue Mar 22 09:38:28 UTC 2016 - jengelh@inai.de + +- Update to new upstream release 2.8.29 +* Added new soapcpp2 option `-r` to generate a soapReadme.md report + that summarizes the input .h file information, the serializable + C/C++ types, the services, and the generated code. +* Added new wsdl2h option `-M` to suppress error "must understand + element with wsdl:required='true'". +* Upgraded HTTP digest authentication "httpda" plugin to 2.0 to + support RFC7616 "HTTP Digest Access Authentication" with SHA2 + (replaciing MD5) that is compatibale with RFC2617 +* Updated `wsdl2h` HTTPS-enabled build steps to use upgraded + "httpda" plugin. +* Fixed wsdl2h skipping mime:multipartRelated/mime:part. +- Drop gsoap-03-seqpoint.diff, gsoap-mindeflateratio.diff, + gsoap-no-tcpfastopen-fail.diff (applied upstream) + ------------------------------------------------------------------- Thu Feb 18 21:39:20 UTC 2016 - jengelh@inai.de diff --git a/gsoap.spec b/gsoap.spec index 3b4b41d..1ba78b7 100644 --- a/gsoap.spec +++ b/gsoap.spec @@ -17,24 +17,21 @@ Name: gsoap -%define lname libgsoap-2_8_28 -Version: 2.8.28 +%define lname libgsoap-2_8_29 +Version: 2.8.29 Release: 0 Summary: Toolkit for C/C++ server and client web service applications License: SUSE-GPL-2.0+-with-openssl-exception Group: Development/Libraries/C and C++ -Url: http://gsoap2.sf.net/ +Url: http://www.genivia.com/dev.html -#DL-URL: http://downloads.sf.net/gsoap2/gsoap_2.8.22.zip +#DL-URL: http://downloads.sf.net/gsoap2/gsoap_2.8.29.zip 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-03-seqpoint.diff -Patch4: gsoap-mindeflateratio.diff -Patch6: gsoap-no-tcpfastopen-fail.diff +Patch6: gsoap-automake1_13.diff +Patch7: gsoap-00-builtsource.diff +Patch8: gsoap-01-sharedlibs.diff +Patch9: gsoap-02-typepuns.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: autoconf BuildRequires: automake @@ -64,9 +61,12 @@ available or under development. %package devel Summary: Development files for the gSOAP toolkit Group: Development/Libraries/C and C++ +Obsoletes: libgsoap-devel < %version-%release +Provides: libgsoap-devel = %version-%release %description devel -This package contains the runtime development programs for gSOAP. +This package contains the runtime development programs, include +headers and development library symlinks for libgsoap. %package -n %lname Summary: Runtime libraries for gSOAP @@ -82,19 +82,10 @@ SOAP-over-UDP, request-response and one-way messaging. The toolkit also supports WS-Addressing and WS-Security, with several other WS-* available or under development. -%package -n libgsoap-devel -Summary: Development files for libgsoap -Group: Development/Libraries/C and C++ -Requires: %lname = %version - -%description -n libgsoap-devel -This package contains the include headers and development library -symlinks for libgsoap. - %prep %setup -q cmp gsoap/stdsoap2.cpp gsoap/stdsoap2.c -%patch -P 13 -P 0 -P 1 -P 2 -P 3 -P 4 -P 6 -p1 +%patch -P 6 -P 7 -P 8 -P 9 -p1 ln -fs stdsoap2.cpp gsoap/stdsoap2.c %build @@ -126,22 +117,20 @@ rm -f "$b/%_libdir"/*.la %files devel %defattr(-,root,root) -%_bindir/* +%_bindir/*soap* +%_bindir/*wsdl* %_datadir/%name/ - -%files -n %lname -%defattr(-,root,root) -%_libdir/libgsoap*-%version.so - -%files -n libgsoap-devel -%defattr(-,root,root) -%_includedir/* +%_includedir/*soap* %_libdir/libgsoap.so %_libdir/libgsoapck.so %_libdir/libgsoapssl.so %_libdir/libgsoap++.so %_libdir/libgsoapck++.so %_libdir/libgsoapssl++.so -%_libdir/pkgconfig/* +%_libdir/pkgconfig/*gsoap*.pc + +%files -n %lname +%defattr(-,root,root) +%_libdir/libgsoap*-%version.so %changelog diff --git a/sanitize_source.sh b/sanitize_source.sh index 9e2ab14..d8ad065 100644 --- a/sanitize_source.sh +++ b/sanitize_source.sh @@ -13,27 +13,26 @@ if ! which hardlink >/dev/null; then exit 1; fi; -version="2.8.28"; -shortver="2.8"; # agh... +version="2.8.29" +shortver="2.8" # agh... -rm -Rf "gsoap-$shortver" "gsoap-$version"; -unzip "gsoap_$version.zip"; +rm -Rf "gsoap-$shortver" "gsoap-$version" +unzip "gsoap_$version.zip" # Someone failed at sane version number tagging. -mv "gsoap-$shortver" "gsoap-$version"; +mv "gsoap-$shortver" "gsoap-$version" # Remove executables, backups, cache files, non-Linux parts... rm -Rf "gsoap-$version/gsoap/bin" \ "gsoap-$version/samples/link++/xmas" \ "gsoap-$version"/*.old \ - "gsoap-$version/autom4te.cache"; + "gsoap-$version/autom4te.cache" find "gsoap-$version" -type d -name "*.pbxindex" -exec rm -Rf "{}" "+" -rm -Rf "gsoap-$version/gsoap/ios_plugin"; +rm -Rf "gsoap-$version/gsoap/ios_plugin" find "gsoap-$version" -type f "(" \ -iname "*.exe" -o -iname "*.dll" -o -name "*.o" -o \ - -name "*~" -o -name .DS_Store ")" -delete; -hardlink "gsoap-$version"; -echo Now... + -name "*~" -o -name .DS_Store ")" -delete +hardlink "gsoap-$version" find "gsoap-$version" -print0 | sort -z | \ tar -T- --null --owner=root --group=root --no-recur --use=xz \ - -cvf "gsoap-$version.tar.xz"; + -cvf "gsoap-$version.tar.xz"