[gsoap/f15] Update the IPv6 patch Drop the examples sub-package - the examples are written to be built in the so

Mattias Ellert ellert at fedoraproject.org
Sun Aug 28 12:55:16 UTC 2011


commit 5397d04641dbdc8162df39f00a6f96e7bdbc0222
Author: Mattias Ellert <mattias.ellert at fysast.uu.se>
Date:   Sun Aug 28 13:43:17 2011 +0200

    Update the IPv6 patch
    Drop the examples sub-package - the examples are written to be built
    in the source tree, installing them does not make sense without a
    major rewrite
    Add manpages from Debian

 gsoap-2.7-examples.patch                         |  306 ----------------------
 gsoap-2.7-noexec-examples.patch                  |  168 ------------
 gsoap-2.7-iostream.patch => gsoap-iostream.patch |    0
 gsoap-ipv6.patch                                 |  125 ++++++++-
 use_libtool-2.7.17.patch => gsoap-libtool.patch  |   62 +++---
 gsoap.spec                                       |  107 +++-----
 soapcpp2.1                                       |  104 ++++++++
 wsdl2h.1                                         |  129 +++++++++
 8 files changed, 411 insertions(+), 590 deletions(-)
---
diff --git a/gsoap-2.7-iostream.patch b/gsoap-iostream.patch
similarity index 100%
rename from gsoap-2.7-iostream.patch
rename to gsoap-iostream.patch
diff --git a/gsoap-ipv6.patch b/gsoap-ipv6.patch
index a107690..f2a2ca5 100644
--- a/gsoap-ipv6.patch
+++ b/gsoap-ipv6.patch
@@ -1,9 +1,12 @@
 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-05-09 20:09:56.000000000 +0200
-+++ gsoap-2.7/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp	2011-02-12 22:29:46.652886775 +0100
-@@ -4185,8 +4185,8 @@
++++ gsoap-2.7/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp	2011-08-28 08:32:55.171231499 +0200
+@@ -4183,10 +4183,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 +15,31 @@ diff -ur gsoap-2.7.orig/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp gsoap
  #else
    int level = IPPROTO_IPV6;
  #endif
+@@ -4286,7 +4286,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-05-09 20:10:11.000000000 +0200
-+++ gsoap-2.7/gsoap/samples/wsse/stdsoap2.c	2011-02-12 22:29:46.648886828 +0100
-@@ -4185,8 +4185,8 @@
++++ gsoap-2.7/gsoap/samples/wsse/stdsoap2.c	2011-08-28 08:32:55.171231499 +0200
+@@ -4183,10 +4183,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,12 +48,31 @@ diff -ur gsoap-2.7.orig/gsoap/samples/wsse/stdsoap2.c gsoap-2.7/gsoap/samples/ws
  #else
    int level = IPPROTO_IPV6;
  #endif
+@@ -4286,7 +4286,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	2010-05-09 20:10:13.000000000 +0200
-+++ gsoap-2.7/gsoap/stdsoap2.c	2011-02-12 22:29:46.648886828 +0100
-@@ -4185,8 +4185,8 @@
++++ gsoap-2.7/gsoap/stdsoap2.c	2011-08-28 08:32:55.171231499 +0200
+@@ -4183,10 +4183,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;
@@ -40,12 +81,31 @@ diff -ur gsoap-2.7.orig/gsoap/stdsoap2.c gsoap-2.7/gsoap/stdsoap2.c
  #else
    int level = IPPROTO_IPV6;
  #endif
+@@ -4286,7 +4286,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	2010-05-09 20:10:13.000000000 +0200
-+++ gsoap-2.7/gsoap/stdsoap2.cpp	2011-02-12 22:29:46.652886775 +0100
-@@ -4185,8 +4185,8 @@
++++ gsoap-2.7/gsoap/stdsoap2.cpp	2011-08-28 08:32:55.171231499 +0200
+@@ -4183,10 +4183,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;
@@ -54,12 +114,31 @@ diff -ur gsoap-2.7.orig/gsoap/stdsoap2.cpp gsoap-2.7/gsoap/stdsoap2.cpp
  #else
    int level = IPPROTO_IPV6;
  #endif
+@@ -4286,7 +4286,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-05-09 20:10:14.000000000 +0200
-+++ gsoap-2.7/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp	2011-02-12 22:29:46.652886775 +0100
-@@ -4185,8 +4185,8 @@
++++ gsoap-2.7/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp	2011-08-28 08:32:55.171231499 +0200
+@@ -4183,10 +4183,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;
@@ -68,3 +147,19 @@ diff -ur gsoap-2.7.orig/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp gsoap-
  #else
    int level = IPPROTO_IPV6;
  #endif
+@@ -4286,7 +4286,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/use_libtool-2.7.17.patch b/gsoap-libtool.patch
similarity index 66%
rename from use_libtool-2.7.17.patch
rename to gsoap-libtool.patch
index c52d746..9780dab 100644
--- a/use_libtool-2.7.17.patch
+++ b/gsoap-libtool.patch
@@ -1,7 +1,7 @@
-diff -up gsoap-2.7/configure.in.orig gsoap-2.7/configure.in
---- gsoap-2.7/configure.in.orig	2010-05-10 00:09:24.000000000 +0600
-+++ gsoap-2.7/configure.in	2010-07-27 18:05:21.000000000 +0600
-@@ -15,8 +15,7 @@ AC_PROG_CC
+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
@@ -11,7 +11,7 @@ diff -up gsoap-2.7/configure.in.orig gsoap-2.7/configure.in
  AC_PROG_LN_S
  AC_PROG_AWK
  AC_PROG_INSTALL
-@@ -159,12 +158,12 @@ if test "x$with_openssl" = "xyes"; then
+@@ -159,12 +158,12 @@
    AC_MSG_RESULT(no)
    WSDL2H_EXTRA_FLAGS="-DWITH_OPENSSL -DWITH_GZIP"
    WSDL2H_EXTRA_LIBS="-lssl -lcrypto -lz"
@@ -26,15 +26,16 @@ diff -up gsoap-2.7/configure.in.orig gsoap-2.7/configure.in
  fi
  AC_SUBST(WSDL2H_EXTRA_FLAGS)
  AC_SUBST(WSDL2H_EXTRA_LIBS)
-diff -up gsoap-2.7/gsoap/Makefile.am.orig gsoap-2.7/gsoap/Makefile.am
---- gsoap-2.7/gsoap/Makefile.am.orig	2010-05-10 00:09:33.000000000 +0600
-+++ gsoap-2.7/gsoap/Makefile.am	2010-07-27 18:05:21.000000000 +0600
-@@ -31,20 +31,19 @@ stdsoap2_ssl.c: stdsoap2.cpp
+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
@@ -47,7 +48,6 @@ diff -up gsoap-2.7/gsoap/Makefile.am.orig gsoap-2.7/gsoap/Makefile.am
 -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
-+lib_LTLIBRARIES = libgsoap.la libgsoap++.la libgsoapck.la libgsoapck++.la libgsoapssl.la libgsoapssl++.la
 +libgsoap_la_SOURCES = stdsoap2.c
 +libgsoap_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform)
 +libgsoap___la_SOURCES = stdsoap2_cpp.cpp
@@ -63,43 +63,43 @@ diff -up gsoap-2.7/gsoap/Makefile.am.orig gsoap-2.7/gsoap/Makefile.am
  
  BUILT_SOURCES = stdsoap2_cpp.cpp $(lib_LIBRARIES)
  
-diff -up gsoap-2.7/gsoap/samples/autotest/Makefile.am.orig gsoap-2.7/gsoap/samples/autotest/Makefile.am
---- gsoap-2.7/gsoap/samples/autotest/Makefile.am.orig	2010-07-27 18:08:26.000000000 +0600
-+++ gsoap-2.7/gsoap/samples/autotest/Makefile.am	2010-07-27 18:08:46.000000000 +0600
-@@ -14,7 +14,7 @@ SOAP_FLAGS=-SL -T -I$(top_srcdir)/gsoap/
+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/.libs/libgsoap++.so
++SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.la
  
  $(SOAP_CPP_SRC) : $(WSDLINPUT)
  	$(WSDL) $(WSDL_FLAGS) $(WSDLINPUT)
-diff -up gsoap-2.7/gsoap/samples/databinding/Makefile.am.orig gsoap-2.7/gsoap/samples/databinding/Makefile.am
---- gsoap-2.7/gsoap/samples/databinding/Makefile.am.orig	2010-07-27 18:07:34.000000000 +0600
-+++ gsoap-2.7/gsoap/samples/databinding/Makefile.am	2010-07-27 18:07:58.000000000 +0600
-@@ -14,7 +14,7 @@ SOAP_FLAGS=-2 -CS -p address -I$(top_src
+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/.libs/libgsoap++.so
++SOAP_CPP_LIB=$(top_builddir)/gsoap/libgsoap++.la
  
  $(SOAP_CPP_SRC) : $(WSDLINPUT)
  	$(WSDL) $(WSDL_FLAGS) $(WSDLINPUT)
-diff -up gsoap-2.7/gsoap/samples/Makefile.defines.orig gsoap-2.7/gsoap/samples/Makefile.defines
---- gsoap-2.7/gsoap/samples/Makefile.defines.orig	2010-07-27 18:06:04.000000000 +0600
-+++ gsoap-2.7/gsoap/samples/Makefile.defines	2010-07-27 18:10:11.000000000 +0600
-@@ -15,13 +15,13 @@ SOAP_H_FILES=soapH.h soapStub.h 
+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/.libs/libgsoap.so
-+SOAP_C_LIB_CK=$(top_builddir)/gsoap/.libs/libgsoapck.so
-+SOAP_C_LIB_SSL=$(top_builddir)/gsoap/.libs/libgsoapssl.so
++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)
@@ -107,6 +107,6 @@ diff -up gsoap-2.7/gsoap/samples/Makefile.defines.orig gsoap-2.7/gsoap/samples/M
 -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/.libs/libgsoap++.so
-+SOAP_CPP_LIB_CK=$(top_builddir)/gsoap/.libs/libgsoapck++.so
-+SOAP_CPP_LIB_SSL=$(top_builddir)/gsoap/.libs/libgsoapssl++.so
++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.spec b/gsoap.spec
index d5c51a6..c7261f6 100644
--- a/gsoap.spec
+++ b/gsoap.spec
@@ -1,16 +1,16 @@
 Summary: Generator Tools for Coding SOAP/XML Web Services in C and C++
 Name: gsoap
 Version: 2.7.17
-Release: 3%{?dist}
+Release: 4%{?dist}
 License: GPLv2+
 Group: Development/Tools
 URL: http://gsoap2.sourceforge.net
 Source0: http://downloads.sourceforge.net/gsoap2/gsoap_2.7.17.zip
-Patch0: use_libtool-2.7.17.patch
-Patch2: gsoap-ipv6.patch
-Patch3: gsoap-2.7-iostream.patch
-Patch4: gsoap-2.7-examples.patch
-Patch5: gsoap-2.7-noexec-examples.patch
+Source1: soapcpp2.1
+Source2: wsdl2h.1
+Patch0: %{name}-libtool.patch
+Patch1: %{name}-ipv6.patch
+Patch2: %{name}-iostream.patch
 BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
 
 BuildRequires: flex
@@ -23,36 +23,25 @@ BuildRequires: automake
 BuildRequires: libtool
 
 Requires: openssl
-
+Obsoletes: %{name}-examples < 2.7.17-4
 
 %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
 
-%package examples
-Summary: gSOAP examples binaries and sources 
-Group: Development/System
-Requires: %name = %version-%release
-BuildArch: noarch
-
-%description examples
-gSOAP examples binaries and sources 
-
 %package doc
-Summary: gSOAP documentation
+Summary: Documentation for gSOAP
 Group: Development/System
 Requires: %name = %version-%release
 BuildArch: noarch
@@ -65,14 +54,11 @@ gSOAP documentation in html
 
 # enable use of libtool in configure.in and a few Makefile.am files
 %patch0 -p1
-
+%patch1 -p1
 %patch2 -p1
-%patch3 -p1
-%patch4 -p1
-%patch5 -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
@@ -81,6 +67,9 @@ dos2unix README.txt LICENSE.txt NOTES.txt
 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
@@ -97,35 +86,20 @@ CXXFLAGS="-DWITH_IPV6 %{optflags}"
 #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
-
-find . -name "*.xml" -exec chmod a-x {} \;
-
-
 %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
@@ -142,12 +116,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
@@ -188,8 +163,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
@@ -215,17 +188,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
@@ -262,11 +224,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
@@ -282,29 +239,39 @@ 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
 # Additions in 2.7.17-1
 %_datadir/gsoap/WS/WS-Policy12.xsd
 %_datadir/gsoap/WS/WS-SecurityPolicy.xsd
 %_datadir/gsoap/import/wsse11.h
 
-%files examples
-%defattr(-,root,root,-)
-%doc README.txt NOTES.txt LICENSE.txt
-%_datadir/gsoap/examples/*
-
 %files doc
 %defattr(-,root,root,-)
 %doc gsoap/doc/*
 %doc README.txt NOTES.txt LICENSE.txt
 
-
 %post -p /sbin/ldconfig
 
-
 %postun -p /sbin/ldconfig
 
-
 %changelog
+* Sun Aug 28 2011 Mattias Ellert <mattias.ellert at fysast.uu.se> - 2.7.17-4
+- Update the IPv6 patch
+- Drop the examples sub-package - the examples are written to be built
+  in the source tree, installing them does not make sense without a
+  major rewrite
+- Add manpages from Debian
+
 * Sat Feb 12 2011 Mattias Ellert <mattias.ellert at fysast.uu.se> - 2.7.17-3
 - 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