[gsoap/el6] Update the IPv6 patch Add manpages from Debian
Mattias Ellert
ellert at fedoraproject.org
Sun Aug 28 12:55:11 UTC 2011
commit 6644d908041469a0617924d648c7ad437e96b79f
Author: Mattias Ellert <mattias.ellert at fysast.uu.se>
Date: Sun Aug 28 13:56:07 2011 +0200
Update the IPv6 patch
Add manpages from Debian
gsoap-2.7-openssl.patch | 17 -----
gsoap-iostream.patch | 28 ++++++++
gsoap-ipv6.patch | 153 +++++++++++++++++++++++++++++++++++++++++++---
gsoap-libtool.patch | 112 +++++++++++++++++++++++++++++++++
gsoap-openssl.patch | 60 ++++++++++++++++++
gsoap.spec | 88 +++++++++++---------------
soapcpp2.1 | 104 +++++++++++++++++++++++++++++++
use_libtool-2.7.16.patch | 64 -------------------
wsdl2h.1 | 129 ++++++++++++++++++++++++++++++++++++++
9 files changed, 615 insertions(+), 140 deletions(-)
---
diff --git a/gsoap-iostream.patch b/gsoap-iostream.patch
new file mode 100644
index 0000000..1f94f8d
--- /dev/null
+++ b/gsoap-iostream.patch
@@ -0,0 +1,28 @@
+diff -up gsoap-2.7/gsoap/samples/factorytest/factorytest.cpp.iostream gsoap-2.7/gsoap/samples/factorytest/factorytest.cpp
+--- gsoap-2.7/gsoap/samples/factorytest/factorytest.cpp.iostream 2010-07-26 18:31:00.000000000 +0600
++++ gsoap-2.7/gsoap/samples/factorytest/factorytest.cpp 2010-07-26 18:31:22.000000000 +0600
+@@ -49,7 +49,9 @@ A commercial use license is available fr
+ #include "soapH.h"
+ #include "factorytest.nsmap"
+
+-#include <iostream.h>
++#include <iostream>
++
++using namespace std;
+
+ // default factory service endpoint:
+ const char *factory = "http://localhost:18085";
+diff -up gsoap-2.7/gsoap/samples/lu/luclient.cpp.iostream gsoap-2.7/gsoap/samples/lu/luclient.cpp
+--- gsoap-2.7/gsoap/samples/lu/luclient.cpp.iostream 2010-07-26 18:29:34.000000000 +0600
++++ gsoap-2.7/gsoap/samples/lu/luclient.cpp 2010-07-26 18:29:58.000000000 +0600
+@@ -32,7 +32,9 @@ A commercial use license is available fr
+ */
+
+ #include "soapH.h"
+-#include <iostream.h>
++#include <iostream>
++
++using namespace std;
+
+ const char luserver[] = "http://websrv.cs.fsu.edu/~engelen/luserver.cgi";
+
diff --git a/gsoap-ipv6.patch b/gsoap-ipv6.patch
index d9e214c..50ce838 100644
--- a/gsoap-ipv6.patch
+++ b/gsoap-ipv6.patch
@@ -1,9 +1,78 @@
+diff -ur gsoap-2.7.orig/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp gsoap-2.7/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp
+--- gsoap-2.7.orig/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp 2010-04-06 18:22:54.000000000 +0200
++++ gsoap-2.7/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp 2011-08-28 10:05:28.091810439 +0200
+@@ -4106,10 +4106,10 @@
+ struct addrinfo hints;
+ struct addrinfo res;
+ int err;
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_NO_IPV6_V6ONLY
+ int unset = 0;
+-#ifdef SOL_IP
+- int level = SOL_IP;
++#ifdef SOL_IPV6
++ int level = SOL_IPV6;
+ #else
+ int level = IPPROTO_IPV6;
+ #endif
+@@ -4211,7 +4211,14 @@
+ #endif
+ #endif
+ #ifdef WITH_IPV6
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_IPV6_V6ONLY
++ if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&set, sizeof(int)))
++ { soap->errnum = soap_socket_errno(soap->master);
++ soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
++ return SOAP_INVALID_SOCKET;
++ }
++#endif
++#ifdef WITH_NO_IPV6_V6ONLY
+ if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&unset, sizeof(int)))
+ { soap->errnum = soap_socket_errno(soap->master);
+ soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
+diff -ur gsoap-2.7.orig/gsoap/samples/wsse/stdsoap2.c gsoap-2.7/gsoap/samples/wsse/stdsoap2.c
+--- gsoap-2.7.orig/gsoap/samples/wsse/stdsoap2.c 2010-04-06 18:23:12.000000000 +0200
++++ gsoap-2.7/gsoap/samples/wsse/stdsoap2.c 2011-08-28 10:05:28.094810400 +0200
+@@ -4106,10 +4106,10 @@
+ struct addrinfo hints;
+ struct addrinfo res;
+ int err;
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_NO_IPV6_V6ONLY
+ int unset = 0;
+-#ifdef SOL_IP
+- int level = SOL_IP;
++#ifdef SOL_IPV6
++ int level = SOL_IPV6;
+ #else
+ int level = IPPROTO_IPV6;
+ #endif
+@@ -4211,7 +4211,14 @@
+ #endif
+ #endif
+ #ifdef WITH_IPV6
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_IPV6_V6ONLY
++ if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&set, sizeof(int)))
++ { soap->errnum = soap_socket_errno(soap->master);
++ soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
++ return SOAP_INVALID_SOCKET;
++ }
++#endif
++#ifdef WITH_NO_IPV6_V6ONLY
+ if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&unset, sizeof(int)))
+ { soap->errnum = soap_socket_errno(soap->master);
+ soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
diff -ur gsoap-2.7.orig/gsoap/stdsoap2.c gsoap-2.7/gsoap/stdsoap2.c
---- gsoap-2.7.orig/gsoap/stdsoap2.c 2009-03-21 22:24:44.000000000 +0100
-+++ gsoap-2.7/gsoap/stdsoap2.c 2010-12-13 13:43:26.000000000 +0100
-@@ -4268,8 +4268,8 @@
+--- gsoap-2.7.orig/gsoap/stdsoap2.c 2010-04-06 18:23:14.000000000 +0200
++++ gsoap-2.7/gsoap/stdsoap2.c 2011-08-28 10:05:28.103810289 +0200
+@@ -4106,10 +4106,10 @@
+ struct addrinfo hints;
+ struct addrinfo res;
int err;
- #ifdef IPV6_V6ONLY
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_NO_IPV6_V6ONLY
int unset = 0;
-#ifdef SOL_IP
- int level = SOL_IP;
@@ -12,12 +81,64 @@ diff -ur gsoap-2.7.orig/gsoap/stdsoap2.c gsoap-2.7/gsoap/stdsoap2.c
#else
int level = IPPROTO_IPV6;
#endif
+@@ -4211,7 +4211,14 @@
+ #endif
+ #endif
+ #ifdef WITH_IPV6
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_IPV6_V6ONLY
++ if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&set, sizeof(int)))
++ { soap->errnum = soap_socket_errno(soap->master);
++ soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
++ return SOAP_INVALID_SOCKET;
++ }
++#endif
++#ifdef WITH_NO_IPV6_V6ONLY
+ if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&unset, sizeof(int)))
+ { soap->errnum = soap_socket_errno(soap->master);
+ soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
diff -ur gsoap-2.7.orig/gsoap/stdsoap2.cpp gsoap-2.7/gsoap/stdsoap2.cpp
---- gsoap-2.7.orig/gsoap/stdsoap2.cpp 2009-03-21 22:24:44.000000000 +0100
-+++ gsoap-2.7/gsoap/stdsoap2.cpp 2010-12-13 14:45:31.000000000 +0100
-@@ -4268,8 +4268,8 @@
+--- gsoap-2.7.orig/gsoap/stdsoap2.cpp 2010-04-06 18:23:14.000000000 +0200
++++ gsoap-2.7/gsoap/stdsoap2.cpp 2011-08-28 10:05:28.108810225 +0200
+@@ -4106,10 +4106,10 @@
+ struct addrinfo hints;
+ struct addrinfo res;
+ int err;
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_NO_IPV6_V6ONLY
+ int unset = 0;
+-#ifdef SOL_IP
+- int level = SOL_IP;
++#ifdef SOL_IPV6
++ int level = SOL_IPV6;
+ #else
+ int level = IPPROTO_IPV6;
+ #endif
+@@ -4211,7 +4211,14 @@
+ #endif
+ #endif
+ #ifdef WITH_IPV6
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_IPV6_V6ONLY
++ if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&set, sizeof(int)))
++ { soap->errnum = soap_socket_errno(soap->master);
++ soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
++ return SOAP_INVALID_SOCKET;
++ }
++#endif
++#ifdef WITH_NO_IPV6_V6ONLY
+ if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&unset, sizeof(int)))
+ { soap->errnum = soap_socket_errno(soap->master);
+ soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
+diff -ur gsoap-2.7.orig/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp gsoap-2.7/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp
+--- gsoap-2.7.orig/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp 2010-04-06 18:23:15.000000000 +0200
++++ gsoap-2.7/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp 2011-08-28 10:05:28.143809786 +0200
+@@ -4106,10 +4106,10 @@
+ struct addrinfo hints;
+ struct addrinfo res;
int err;
- #ifdef IPV6_V6ONLY
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_NO_IPV6_V6ONLY
int unset = 0;
-#ifdef SOL_IP
- int level = SOL_IP;
@@ -26,3 +147,19 @@ diff -ur gsoap-2.7.orig/gsoap/stdsoap2.cpp gsoap-2.7/gsoap/stdsoap2.cpp
#else
int level = IPPROTO_IPV6;
#endif
+@@ -4211,7 +4211,14 @@
+ #endif
+ #endif
+ #ifdef WITH_IPV6
+-#ifdef IPV6_V6ONLY
++#ifdef WITH_IPV6_V6ONLY
++ if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&set, sizeof(int)))
++ { soap->errnum = soap_socket_errno(soap->master);
++ soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
++ return SOAP_INVALID_SOCKET;
++ }
++#endif
++#ifdef WITH_NO_IPV6_V6ONLY
+ if (setsockopt(soap->master, level, IPV6_V6ONLY, (char*)&unset, sizeof(int)))
+ { soap->errnum = soap_socket_errno(soap->master);
+ soap_set_receiver_error(soap, tcp_error(soap), "setsockopt IPV6_V6ONLY failed in soap_bind()", SOAP_TCP_ERROR);
diff --git a/gsoap-libtool.patch b/gsoap-libtool.patch
new file mode 100644
index 0000000..9780dab
--- /dev/null
+++ b/gsoap-libtool.patch
@@ -0,0 +1,112 @@
+diff -ur gsoap-2.7.orig/configure.in gsoap-2.7/configure.in
+--- gsoap-2.7.orig/configure.in 2010-05-09 20:09:24.000000000 +0200
++++ gsoap-2.7/configure.in 2011-08-28 08:09:19.477930098 +0200
+@@ -15,8 +15,7 @@
+ AM_PROG_LEX
+ AC_PROG_YACC
+ AC_PROG_CPP
+-AC_PROG_RANLIB
+-#AC_PROG_LIBTOOL
++AM_PROG_LIBTOOL
+ AC_PROG_LN_S
+ AC_PROG_AWK
+ AC_PROG_INSTALL
+@@ -159,12 +158,12 @@
+ AC_MSG_RESULT(no)
+ WSDL2H_EXTRA_FLAGS="-DWITH_OPENSSL -DWITH_GZIP"
+ WSDL2H_EXTRA_LIBS="-lssl -lcrypto -lz"
+- WSDL2H_SOAP_CPP_LIB="libgsoapssl++.a"
++ WSDL2H_SOAP_CPP_LIB="libgsoapssl++.la"
+ else
+ AC_MSG_RESULT(yes)
+ WSDL2H_EXTRA_FLAGS=
+ WSDL2H_EXTRA_LIBS=
+- WSDL2H_SOAP_CPP_LIB="libgsoap++.a"
++ WSDL2H_SOAP_CPP_LIB="libgsoap++.la"
+ fi
+ AC_SUBST(WSDL2H_EXTRA_FLAGS)
+ AC_SUBST(WSDL2H_EXTRA_LIBS)
+diff -ur gsoap-2.7.orig/gsoap/Makefile.am gsoap-2.7/gsoap/Makefile.am
+--- gsoap-2.7.orig/gsoap/Makefile.am 2010-05-09 20:09:33.000000000 +0200
++++ gsoap-2.7/gsoap/Makefile.am 2011-08-28 08:14:24.920111548 +0200
+@@ -31,20 +31,20 @@
+ stdsoap2_ssl_cpp.cpp: stdsoap2.cpp
+ $(LN_S) -f $(srcdir)/stdsoap2.cpp stdsoap2_ssl_cpp.cpp
+
+-lib_LIBRARIES = libgsoap.a libgsoap++.a libgsoapck.a libgsoapck++.a libgsoapssl.a libgsoapssl++.a
++lib_LTLIBRARIES = libgsoap.la libgsoap++.la libgsoapck.la libgsoapck++.la libgsoapssl.la libgsoapssl++.la
+
+-libgsoap_a_SOURCES = stdsoap2.c
+-libgsoap_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform)
+-libgsoap___a_SOURCES = stdsoap2_cpp.cpp
+-libgsoap___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform)
+-libgsoapck_a_SOURCES = stdsoap2_ck.c
+-libgsoapck_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_COOKIES
+-libgsoapck___a_SOURCES = stdsoap2_ck_cpp.cpp
+-libgsoapck___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_COOKIES
+-libgsoapssl_a_SOURCES = stdsoap2_ssl.c
+-libgsoapssl_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_OPENSSL -DWITH_DOM -DWITH_GZIP
+-libgsoapssl___a_SOURCES = stdsoap2_ssl_cpp.cpp
+-libgsoapssl___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_OPENSSL -DWITH_DOM -DWITH_GZIP
++libgsoap_la_SOURCES = stdsoap2.c
++libgsoap_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform)
++libgsoap___la_SOURCES = stdsoap2_cpp.cpp
++libgsoap___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform)
++libgsoapck_la_SOURCES = stdsoap2_ck.c
++libgsoapck_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_COOKIES
++libgsoapck___la_SOURCES = stdsoap2_ck_cpp.cpp
++libgsoapck___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_COOKIES
++libgsoapssl_la_SOURCES = stdsoap2_ssl.c
++libgsoapssl_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_OPENSSL -DWITH_DOM -DWITH_GZIP
++libgsoapssl___la_SOURCES = stdsoap2_ssl_cpp.cpp
++libgsoapssl___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_OPENSSL -DWITH_DOM -DWITH_GZIP
+
+ BUILT_SOURCES = stdsoap2_cpp.cpp $(lib_LIBRARIES)
+
+diff -ur gsoap-2.7.orig/gsoap/samples/autotest/Makefile.am gsoap-2.7/gsoap/samples/autotest/Makefile.am
+--- gsoap-2.7.orig/gsoap/samples/autotest/Makefile.am 2010-05-09 20:09:52.000000000 +0200
++++ gsoap-2.7/gsoap/samples/autotest/Makefile.am 2011-08-28 08:11:01.642652864 +0200
+@@ -14,7 +14,7 @@
+ WSDLINPUT=$(srcdir)/examples.wsdl
+ SOAPHEADER=$(srcdir)/examples.h
+ SOAP_CPP_SRC=soapC.cpp soapServer.cpp
+-SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.a
++SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.la
+
+ $(SOAP_CPP_SRC) : $(WSDLINPUT)
+ $(WSDL) $(WSDL_FLAGS) $(WSDLINPUT)
+diff -ur gsoap-2.7.orig/gsoap/samples/databinding/Makefile.am gsoap-2.7/gsoap/samples/databinding/Makefile.am
+--- gsoap-2.7.orig/gsoap/samples/databinding/Makefile.am 2010-05-09 20:09:58.000000000 +0200
++++ gsoap-2.7/gsoap/samples/databinding/Makefile.am 2011-08-28 08:11:01.642652864 +0200
+@@ -14,7 +14,7 @@
+ WSDLINPUT=$(srcdir)/address.xsd
+ SOAPHEADER=$(srcdir)/address.h
+ SOAP_CPP_SRC=addressC.cpp
+-SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.a
++SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.la
+
+ $(SOAP_CPP_SRC) : $(WSDLINPUT)
+ $(WSDL) $(WSDL_FLAGS) $(WSDLINPUT)
+diff -ur gsoap-2.7.orig/gsoap/samples/Makefile.defines gsoap-2.7/gsoap/samples/Makefile.defines
+--- gsoap-2.7.orig/gsoap/samples/Makefile.defines 2010-05-09 20:10:04.000000000 +0200
++++ gsoap-2.7/gsoap/samples/Makefile.defines 2011-08-28 08:12:59.014185520 +0200
+@@ -15,13 +15,13 @@
+ SOAP_C_CORE=soapC.c
+ SOAP_C_CLIENT=soapClient.c $(SOAP_C_CORE)
+ SOAP_C_SERVER=soapServer.c $(SOAP_C_CORE)
+-SOAP_C_LIB=$(top_builddir)/gsoap/libgsoap.a
+-SOAP_C_LIB_CK=$(top_builddir)/gsoap/libgsoapck.a
+-SOAP_C_LIB_SSL=$(top_builddir)/gsoap/libgsoapssl.a
++SOAP_C_LIB=$(top_builddir)/gsoap/libgsoap.la
++SOAP_C_LIB_CK=$(top_builddir)/gsoap/libgsoapck.la
++SOAP_C_LIB_SSL=$(top_builddir)/gsoap/libgsoapssl.la
+
+ SOAP_CPP_CORE=soapC.cpp
+ SOAP_CPP_CLIENT=soapClient.cpp $(SOAP_CPP_CORE)
+ SOAP_CPP_SERVER=soapServer.cpp $(SOAP_CPP_CORE)
+-SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.a
+-SOAP_CPP_LIB_CK=$(top_builddir)/gsoap/libgsoapck++.a
+-SOAP_CPP_LIB_SSL=$(top_builddir)/gsoap/libgsoapssl++.a
++SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.la
++SOAP_CPP_LIB_CK=$(top_builddir)/gsoap/libgsoapck++.la
++SOAP_CPP_LIB_SSL=$(top_builddir)/gsoap/libgsoapssl++.la
diff --git a/gsoap-openssl.patch b/gsoap-openssl.patch
new file mode 100644
index 0000000..0e3bae1
--- /dev/null
+++ b/gsoap-openssl.patch
@@ -0,0 +1,60 @@
+diff -ur gsoap-2.7.orig/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp gsoap-2.7/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp
+--- gsoap-2.7.orig/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp 2010-04-06 18:22:54.000000000 +0200
++++ gsoap-2.7/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp 2011-08-28 11:00:40.860395132 +0200
+@@ -3998,7 +3998,7 @@
+ { X509_EXTENSION *ext = X509_get_ext(peer, i);
+ const char *ext_str = OBJ_nid2sn(OBJ_obj2nid(X509_EXTENSION_get_object(ext)));
+ if (ext_str && !strcmp(ext_str, "subjectAltName"))
+- { X509V3_EXT_METHOD *meth = X509V3_EXT_get(ext);
++ { X509V3_EXT_METHOD *meth = (X509V3_EXT_METHOD*)X509V3_EXT_get(ext);
+ void *ext_data;
+ #if (OPENSSL_VERSION_NUMBER >= 0x0090800fL)
+ const unsigned char *data;
+diff -ur gsoap-2.7.orig/gsoap/samples/wsse/stdsoap2.c gsoap-2.7/gsoap/samples/wsse/stdsoap2.c
+--- gsoap-2.7.orig/gsoap/samples/wsse/stdsoap2.c 2010-04-06 18:23:12.000000000 +0200
++++ gsoap-2.7/gsoap/samples/wsse/stdsoap2.c 2011-08-28 11:00:40.860395132 +0200
+@@ -3998,7 +3998,7 @@
+ { X509_EXTENSION *ext = X509_get_ext(peer, i);
+ const char *ext_str = OBJ_nid2sn(OBJ_obj2nid(X509_EXTENSION_get_object(ext)));
+ if (ext_str && !strcmp(ext_str, "subjectAltName"))
+- { X509V3_EXT_METHOD *meth = X509V3_EXT_get(ext);
++ { X509V3_EXT_METHOD *meth = (X509V3_EXT_METHOD*)X509V3_EXT_get(ext);
+ void *ext_data;
+ #if (OPENSSL_VERSION_NUMBER >= 0x0090800fL)
+ const unsigned char *data;
+diff -ur gsoap-2.7.orig/gsoap/stdsoap2.c gsoap-2.7/gsoap/stdsoap2.c
+--- gsoap-2.7.orig/gsoap/stdsoap2.c 2010-04-06 18:23:14.000000000 +0200
++++ gsoap-2.7/gsoap/stdsoap2.c 2011-08-28 11:00:40.860395132 +0200
+@@ -3998,7 +3998,7 @@
+ { X509_EXTENSION *ext = X509_get_ext(peer, i);
+ const char *ext_str = OBJ_nid2sn(OBJ_obj2nid(X509_EXTENSION_get_object(ext)));
+ if (ext_str && !strcmp(ext_str, "subjectAltName"))
+- { X509V3_EXT_METHOD *meth = X509V3_EXT_get(ext);
++ { X509V3_EXT_METHOD *meth = (X509V3_EXT_METHOD*)X509V3_EXT_get(ext);
+ void *ext_data;
+ #if (OPENSSL_VERSION_NUMBER >= 0x0090800fL)
+ const unsigned char *data;
+diff -ur gsoap-2.7.orig/gsoap/stdsoap2.cpp gsoap-2.7/gsoap/stdsoap2.cpp
+--- gsoap-2.7.orig/gsoap/stdsoap2.cpp 2010-04-06 18:23:14.000000000 +0200
++++ gsoap-2.7/gsoap/stdsoap2.cpp 2011-08-28 11:00:40.860395132 +0200
+@@ -3998,7 +3998,7 @@
+ { X509_EXTENSION *ext = X509_get_ext(peer, i);
+ const char *ext_str = OBJ_nid2sn(OBJ_obj2nid(X509_EXTENSION_get_object(ext)));
+ if (ext_str && !strcmp(ext_str, "subjectAltName"))
+- { X509V3_EXT_METHOD *meth = X509V3_EXT_get(ext);
++ { X509V3_EXT_METHOD *meth = (X509V3_EXT_METHOD*)X509V3_EXT_get(ext);
+ void *ext_data;
+ #if (OPENSSL_VERSION_NUMBER >= 0x0090800fL)
+ const unsigned char *data;
+diff -ur gsoap-2.7.orig/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp gsoap-2.7/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp
+--- gsoap-2.7.orig/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp 2010-04-06 18:23:15.000000000 +0200
++++ gsoap-2.7/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp 2011-08-28 11:00:40.860395132 +0200
+@@ -3998,7 +3998,7 @@
+ { X509_EXTENSION *ext = X509_get_ext(peer, i);
+ const char *ext_str = OBJ_nid2sn(OBJ_obj2nid(X509_EXTENSION_get_object(ext)));
+ if (ext_str && !strcmp(ext_str, "subjectAltName"))
+- { X509V3_EXT_METHOD *meth = X509V3_EXT_get(ext);
++ { X509V3_EXT_METHOD *meth = (X509V3_EXT_METHOD*)X509V3_EXT_get(ext);
+ void *ext_data;
+ #if (OPENSSL_VERSION_NUMBER >= 0x0090800fL)
+ const unsigned char *data;
diff --git a/gsoap.spec b/gsoap.spec
index 05eb085..7cf36fe 100644
--- a/gsoap.spec
+++ b/gsoap.spec
@@ -1,14 +1,17 @@
Summary: Generator Tools for Coding SOAP/XML Web Services in C and C++
Name: gsoap
Version: 2.7.16
-Release: 2%{?dist}
+Release: 3%{?dist}
License: GPLv2+
Group: Development/Tools
URL: http://gsoap2.sourceforge.net
Source0: http://downloads.sourceforge.net/gsoap2/gsoap_2.7.16.zip
-Patch0: use_libtool-2.7.16.patch
-Patch2: gsoap-2.7-openssl.patch
-Patch3: gsoap-ipv6.patch
+Source1: soapcpp2.1
+Source2: wsdl2h.1
+Patch0: %{name}-libtool.patch
+Patch1: %{name}-ipv6.patch
+Patch2: %{name}-iostream.patch
+Patch3: %{name}-openssl.patch
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
BuildRequires: flex
@@ -22,41 +25,43 @@ BuildRequires: libtool
Requires: openssl
-
%description
The gSOAP Web services development toolkit offers an XML to C/C++
language binding to ease the development of SOAP/XML Web services in C
and C/C++.
-
%package devel
Summary: Devel libraries and headers for linking with gSOAP generated stubs
Group: Development/System
Requires: %name = %version-%release
Requires: pkgconfig
-
%description devel
gSOAP libraries, headers and generators for linking with and creating
gSOAP generated stubs
-
%prep
%setup -q -n gsoap-2.7
# enable use of libtool in configure.in and a few Makefile.am files
%patch0 -p1
-
+%patch1 -p1
%patch2 -p1
-
%patch3 -p1
-# a number of ~ files are distribute, but we do not want them
-find . -name "*~" -exec rm {} \;
+# XML files non-executable
+find . -name "*.xml" -exec chmod a-x {} \;
# we want all txt files to have unix end-of-line encoding
dos2unix README.txt LICENSE.txt NOTES.txt
+# remove .DS_Stores
+rm -rf gsoap/doc/.DS_Store
+rm -rf gsoap/doc/wsse/html/.DS_Store
+
+# remove stuff with gsoap license only - not GPL
+rm -rf gsoap/extras gsoap/mod_gsoap gsoap/Symbian
+sed 's!$(srcdir)/extras/\*!!' -i gsoap/Makefile.am
%build
# patches change autoconf and automake files, so we must reconfigure
@@ -67,40 +72,26 @@ sed 's/Cflags:/& -DWITH_IPV6/' -i gsoap*.pc.in
CFLAGS="-DWITH_IPV6 %{optflags}"
CXXFLAGS="-DWITH_IPV6 %{optflags}"
-%configure --disable-static --prefix=/usr
+%configure --disable-static --prefix=/usr --enable-samples
# dependencies are not declared properly
#make %{?_smp_mflags}
make
-# during the build a number of files that we should not distribute are
-# created in soapcpp2/samples/ (a doc directory), we must remove them
-#find soapcpp2/samples/ -name ".deps" -prune -exec rm -rf {} \;
-
-# we do not want to bother distributing samples for Windows or OS X
-#rm -rf soapcpp2/samples/magic_VC
-#rm -rf soapcpp2/samples/quote_VC
-#rm -rf soapcpp2/samples/quote_MAC_ProjBuild
-
-# samples do not need to be executable by default
-#chmod a-x soapcpp2/samples/ssl/root.sh
-#chmod a-x soapcpp2/samples/ssl/cacerts.pem
-
-
%install
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}
rm -f %{buildroot}/%_libdir/*.la
+mkdir -p %{buildroot}/%_mandir/man1
+install -m 644 -p %{SOURCE1} %{SOURCE2} %{buildroot}/%_mandir/man1
%clean
rm -rf %{buildroot}
-
%check
make check
-
%files
%defattr(-,root,root,-)
%doc README.txt NOTES.txt LICENSE.txt
@@ -117,12 +108,13 @@ make check
%_libdir/libgsoapssl.so.0.0.0
%_libdir/libgsoapssl++.so.0.0.0
-
%files devel
%defattr(-,root,root,-)
%doc README.txt NOTES.txt LICENSE.txt
%_bindir/soapcpp2
%_bindir/wsdl2h
+%_mandir/man1/soapcpp2.1*
+%_mandir/man1/wsdl2h.1*
%_libdir/libgsoapck.so
%_libdir/libgsoapck++.so
%_libdir/libgsoap.so
@@ -163,8 +155,6 @@ make check
%_datadir/gsoap/import/xmlmime5.h
%_datadir/gsoap/import/xmlmime.h
%_datadir/gsoap/import/xop.h
-%_datadir/gsoap/import/stdstring.h
-%_datadir/gsoap/import/xsd.h
%dir %_datadir/gsoap/WS
%_datadir/gsoap/WS/README.txt
%_datadir/gsoap/WS/WS-Addressing.xsd
@@ -190,17 +180,6 @@ make check
%_datadir/gsoap/custom/struct_timeval.h
%_datadir/gsoap/custom/struct_tm.c
%_datadir/gsoap/custom/struct_tm.h
-%_datadir/gsoap/custom/duration.c
-%_datadir/gsoap/custom/duration.h
-%dir %_datadir/gsoap/extras
-%_datadir/gsoap/extras/README.txt
-%_datadir/gsoap/extras/ckdb.c
-%_datadir/gsoap/extras/ckdb.h
-%_datadir/gsoap/extras/ckdbtest.c
-%_datadir/gsoap/extras/ckdbtest.h
-%_datadir/gsoap/extras/fault.cpp
-%_datadir/gsoap/extras/logging.cpp
-%_datadir/gsoap/extras/soapdefs.h
%dir %_datadir/gsoap/plugin
%_datadir/gsoap/plugin/README.txt
%_datadir/gsoap/plugin/cacerts.c
@@ -237,11 +216,6 @@ make check
%_datadir/gsoap/plugin/wsse2api.h
%_datadir/gsoap/plugin/wsseapi.c
%_datadir/gsoap/plugin/wsseapi.h
-%_datadir/gsoap/plugin/wsseapi.cpp
-%_datadir/gsoap/plugin/httpposttest.c
-%_datadir/gsoap/plugin/httpposttest.h
-%_datadir/gsoap/plugin/wsrmapi.c
-%_datadir/gsoap/plugin/wsrmapi.h
%_libdir/pkgconfig/gsoapck.pc
%_libdir/pkgconfig/gsoapck++.pc
%_libdir/pkgconfig/gsoap.pc
@@ -257,15 +231,27 @@ make check
%_datadir/gsoap/import/wsrm.h
%_datadir/gsoap/import/wsrm4.h
%_datadir/gsoap/import/wsrx.h
-
+# Additions in 2.7.13-1
+%_datadir/gsoap/import/stdstring.h
+%_datadir/gsoap/import/xsd.h
+%_datadir/gsoap/plugin/wsseapi.cpp
+# Additions in 2.7.16-1
+%_datadir/gsoap/custom/duration.c
+%_datadir/gsoap/custom/duration.h
+%_datadir/gsoap/plugin/httpposttest.c
+%_datadir/gsoap/plugin/httpposttest.h
+%_datadir/gsoap/plugin/wsrmapi.c
+%_datadir/gsoap/plugin/wsrmapi.h
%post -p /sbin/ldconfig
-
%postun -p /sbin/ldconfig
-
%changelog
+* Sun Aug 28 2011 Mattias Ellert <mattias.ellert at fysast.uu.se> - 2.7.16-3
+- Update the IPv6 patch
+- Add manpages from Debian
+
* Mon Dec 13 2010 Mattias Ellert <mattias.ellert at fysast.uu.se> - 2.7.16-2
- Enable IPv6 support
diff --git a/soapcpp2.1 b/soapcpp2.1
new file mode 100644
index 0000000..f324625
--- /dev/null
+++ b/soapcpp2.1
@@ -0,0 +1,104 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH SOAPCPP2 1 "Juni 27, 2003"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+soapcpp2 \- the gSOAP Stub and Skeleton Compiler for C and C++
+.SH SYNOPSIS
+\fBsoapcpp2\fR [\fIOPTIONS\fR] \fIINPUT\fR
+.SH DESCRIPTION
+Please see /usr/share/doc/gsoap/soapdoc2.html for details.
+.PP
+Create stubs and client and server code from input \fIINPUT\fR or
+standard input if \fIINPUT\fR is not specified.
+.SH OPTIONS
+.TP
+\fB\-1\fR
+Generate SOAP 1.1 bindings.
+.TP
+\fB\-2\fR
+Generate SOAP 1.2 bindings.
+.TP
+\fB\-C\fR
+Generate client-side code only.
+.TP
+\fB\-S\fR
+Generate server-side code only.
+.TP
+\fB\-T\fR
+Generate server-side auto-test code.
+.TP
+\fB\-L\fR
+Do not generate \fBsoapClientLib\fR/\fBsoapServerLib\fR.
+.TP
+\fB\-a\fR
+Use \fBSOAPAction\fR HTTP/WSA header to invoke server-side operations.
+.TP
+\fB\-b\fR
+Serialize byte arrays char[N] as string.
+.TP
+\fB\-c\fR
+Generate C source code.
+.TP
+\fB\-d\fIpath\fR
+Use \fIpath\fR to save files.
+.TP
+\fB\-e\fR
+Generate SOAP RPC encoding style bindings.
+.TP
+\fB\-h\fR
+Display help info.
+.TP
+\fB\-i\fR
+Generate service proxies and objects inherited from \fBsoap\fR struct.
+.TP
+\fB\-I\fIpath\fR
+use \fIpath\fR(s) for \fB#import\fR.
+.TP
+\fB\-l\fR
+Generate linkable modules (experimental).
+.TP
+\fB\-m\fR
+Generate Matlab(tm) code for MEX compiler.
+.TP
+\fB\-n\fR
+Use service name to rename service functions and namespace table.
+.TP
+\fB\-p\fIname\fR
+Save files with new prefix \fIname\fR instead of \fBsoap\fR.
+.TP
+\fB\-q\fIname\fR
+Use \fIname\fR as the C++ namespace of all declarations.
+.TP
+\fB\-s\fR
+Generate deserialization code with strict XML validation checks.
+.TP
+\fB\-t\fR
+Generate code for fully \fBxsi:type\fR typed SOAP/XML messaging.
+.TP
+\fB\-v\fR
+Display version info.
+.TP
+\fB\-w\fR
+Do not generate WSDL and schema files.
+.TP
+\fB\-x\fR
+Do not generate sample XML message files.
+.SH SEE ALSO
+.BR wsdl2h (1).
+.SH AUTHOR
+This manual page was written by Thomas Wana <greuff at debian.org>,
+for the Debian project (but may be used by others).
diff --git a/wsdl2h.1 b/wsdl2h.1
new file mode 100644
index 0000000..7c90254
--- /dev/null
+++ b/wsdl2h.1
@@ -0,0 +1,129 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH WSDL2H 1 "December 23, 2004"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+wsdl2h \- the gSOAP WSDL parser for C and C++
+.SH SYNOPSIS
+\fBwsdl2h\fR [\fIOPTIONS\fR] \fISOURCE\fR ...
+.SH DESCRIPTION
+Please see /usr/share/doc/gsoap/soapdoc2.html for details.
+.PP
+Converts a \fBWSDL\fR or\fBXSD\fR input file, or from an HTTP address,
+\fISOURCE\fR to a declaration file that can be parsed by
+\fBsoapcpp2\fR(1). If no \fISOURCE\fR argument is specified, read
+from standard input.
+.SH OPTIONS
+.TP
+\fB\-a\fR
+Generate indexed struct names for local elements with anonymous
+types.
+.TP
+\fB\-c\fR
+Generate C source code.
+.TP
+\fB\-d\fR
+Use DOM to populate \fBxs\fR:\fIany\fR, \fBxs\fR:\fIanyType\fR and
+\fBxs\fR:\fIanyAttribute\fR.
+.TP
+\fB\-e\fR
+Don not qualify enum names.
+.TP
+\fB\-f\fR
+Generate flat C++ class hierarchy.
+.TP
+\fB\-g\fR
+Generate global top-level element declarations.
+.TP
+\fB\-h\fR
+Display help info
+.TP
+\fB\-I\fIpath\fR
+Use \fIpath\fR to find files.
+.TP
+\fB\-j\fR
+Don not generate \fBSOAP_ENV__Header\fR and \fBSOAP_ENV__Detail\fR
+definitions.
+.TP
+\fB\-k\fR
+Don not generate \fBSOAP_ENV__Header\fR mustUnderstand qualifiers.
+.TP
+\fB\-l\fR
+Display license information.
+.TP
+\fB\-m\fR
+Use \fBxsd.h\fR module to import primitive types.
+.TP
+\fB\-n\fIname\fR
+Use \fIname\fR as the base namespace prefix instead of \fBns\fR.
+.TP
+\fB\-N\fIname\fR
+Use \fIname\fR as the base namespace prefix for service namespaces.
+.TP
+\fB\-o\fIfile\fR
+Output to file \fIfile\fR.
+.TP
+\fB\-p\fR
+Create polymorphic types with C++ inheritance from base
+\fBxsd__anyType\fR.
+.TP
+\fB\-P\fR
+Do not create polymorphic types with C++ inheritance from \fBxsd__anyType\fR.
+.TP
+\fB\-q\fIname\fR
+Use \fIname\fR for the C++ namespace of all declarations.
+.TP
+\fB\-r\fIhost\fR[:\fIport\fR[:\fIuid\fR:\fIpwd\fR]]
+Connect via proxy \fIhost\fR, \fIport\fR and proxy credentials.
+.TP
+\fB\-s\fR
+Don not generate STL code (no \fBstd::string\fR and no
+\fBstd::vector\fR).
+.TP
+\fB\-t\fIfile\fR
+Use type map file \fIfile\fR instead of the default file
+\fBtypemap.dat\fR.
+.TP
+\fB\-u\fR
+Don not generate unions.
+.TP
+\fB\-v\fR
+Verbose output.
+.TP
+\fB\-w\fR
+Always wrap response parameters in a response struct (<=1.1.4
+behaviour).
+.TP
+\fB\-x\fR
+Do not generate \fB_XML\fR \fIany\fR/\fIanyAttribute\fR extensibility
+elements.
+.TP
+\fB\-y\fR
+Generate typedef synonyms for structs and enums.
+.TP
+\fB\-z1\fR
+Compatibility with 2.7.6e: Generate pointer-based arrays.
+.TP
+\fB\-z2\fR
+Compatibility with 2.7.15: Qualify element/attribute referenced members.
+.TP
+\fB\-_\fR
+Do not generate _USCORE (replace with UNICODE _x005f).
+.SH SEE ALSO
+.BR soapcpp2 (1),
+.SH AUTHOR
+This manual page was written by Thomas Wana <greuff at debian.org>,
+for the Debian project (but may be used by others).
More information about the scm-commits
mailing list