ports/171629: [PATCH] devel/gsoap: update to 2.8.10
Michael Gmelin
freebsd at grem.de
Fri Sep 14 02:30:08 UTC 2012
>Number: 171629
>Category: ports
>Synopsis: [PATCH] devel/gsoap: update to 2.8.10
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: update
>Submitter-Id: current-users
>Arrival-Date: Fri Sep 14 02:30:07 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator: Michael Gmelin
>Release: FreeBSD 9.1-RC1 amd64
>Organization:
Grem Equity GmbH
>Environment:
System: FreeBSD srv05 9.1-RC1 FreeBSD 9.1-RC1 #1 r240177: Fri Sep 7 14:37:21 UTC 2012
>Description:
- Update to 2.8.10
This also includes a few trivial patches to allow building gsoap cleanly
using Clang and C++11 (CXX=clang++ CXXFLAGS=-std=c++11 -stdlib=libc++).
See also:
http://sourceforge.net/tracker/?func=detail&aid=3567530&group_id=52781&atid=468021
Added file(s):
- files/patch-gsoap-stdsoap2.c
- files/patch-gsoap-stdsoap2.cpp
- files/patch-gsoap-wsdl-service.cpp
- files/patch-gsoap-wsdl-types.cpp
- files/patch-gsoap-wsdl-wsdl2h.cpp
Port maintainer (sem at FreeBSD.org) is cc'd.
Generated with FreeBSD Port Tools 0.99_6 (mode: update, diff: suffix)
>How-To-Repeat:
>Fix:
--- gsoap-2.8.10.patch begins here ---
diff -ruN --exclude=CVS ../gsoap.orig/Makefile ./Makefile
--- ../gsoap.orig/Makefile 2012-05-03 20:55:48.000000000 +0200
+++ ./Makefile 2012-09-14 02:03:13.000000000 +0200
@@ -6,7 +6,7 @@
#
PORTNAME= gsoap
-PORTVERSION= 2.8.8
+PORTVERSION= 2.8.10
CATEGORIES= devel
MASTER_SITES= SF/${PORTNAME}2/gSOAP
DISTNAME= ${PORTNAME}_${PORTVERSION}
diff -ruN --exclude=CVS ../gsoap.orig/distinfo ./distinfo
--- ../gsoap.orig/distinfo 2012-05-03 20:55:48.000000000 +0200
+++ ./distinfo 2012-09-14 02:04:26.000000000 +0200
@@ -1,2 +1,2 @@
-SHA256 (gsoap_2.8.8.zip) = 8b1ad1cbd521bd5f85ff4c038bfd5a17a2530610c1ce8bf7318725bc568465cc
-SIZE (gsoap_2.8.8.zip) = 13782549
+SHA256 (gsoap_2.8.10.zip) = fddfd59ba9b0236daa59d1ced9149cb827d446e0a24b85395ed23c10858cabfb
+SIZE (gsoap_2.8.10.zip) = 19156778
diff -ruN --exclude=CVS ../gsoap.orig/files/patch-gsoap-stdsoap2.c ./files/patch-gsoap-stdsoap2.c
--- ../gsoap.orig/files/patch-gsoap-stdsoap2.c 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-gsoap-stdsoap2.c 2012-09-14 02:55:35.000000000 +0200
@@ -0,0 +1,39 @@
+--- gsoap/stdsoap2.c.orig
++++ gsoap/stdsoap2.c
+@@ -809,7 +809,7 @@ soap_flush_raw(struct soap *soap, const char *s, size_t n)
+ #ifndef WITH_LEANER
+ if ((soap->mode & SOAP_IO) == SOAP_IO_CHUNK)
+ { char t[16];
+- sprintf(t, "\r\n%lX\r\n" + (soap->chunksize ? 0 : 2), (unsigned long)n);
++ sprintf(t, &"\r\n%lX\r\n"[soap->chunksize ? 0 : 2], (unsigned long)n);
+ DBGMSG(SENT, t, strlen(t));
+ if ((soap->error = soap->fsend(soap, t, strlen(t))))
+ return soap->error;
+@@ -9534,7 +9534,8 @@ soap_element_start_end_out(struct soap *soap, const char *tag)
+ }
+ for (np = soap->nlist; np; np = np->next)
+ { if (np->index == 1 && np->ns)
+- { sprintf(soap->tmpbuf, *(np->id) ? "xmlns:%s" : "xmlns", np->id);
++ {
++ sprintf(soap->tmpbuf, *(np->id) ? "xmlns:%s" : "xmlns%s", *(np->id) ? np->id : "");
+ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Enabling utilized binding (level=%u) %s='%s'\n", np->level, soap->tmpbuf, np->ns));
+ soap_set_attr(soap, soap->tmpbuf, np->ns, 1);
+ np->index = 2;
+@@ -11635,7 +11636,7 @@ SOAP_FMAC1
+ const char*
+ SOAP_FMAC2
+ soap_LONG642s(struct soap *soap, LONG64 n)
+-{ sprintf(soap->tmpbuf, SOAP_LONG_FORMAT, n);
++{ sprintf(soap->tmpbuf, SOAP_LONG_FORMAT, (long long) (n));
+ return soap->tmpbuf;
+ }
+ #endif
+@@ -12453,7 +12454,7 @@ SOAP_FMAC1
+ const char*
+ SOAP_FMAC2
+ soap_ULONG642s(struct soap *soap, ULONG64 n)
+-{ sprintf(soap->tmpbuf, SOAP_ULONG_FORMAT, n);
++{ sprintf(soap->tmpbuf, SOAP_ULONG_FORMAT, (unsigned long long) (n));
+ return soap->tmpbuf;
+ }
+ #endif
diff -ruN --exclude=CVS ../gsoap.orig/files/patch-gsoap-stdsoap2.cpp ./files/patch-gsoap-stdsoap2.cpp
--- ../gsoap.orig/files/patch-gsoap-stdsoap2.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-gsoap-stdsoap2.cpp 2012-09-14 02:52:57.000000000 +0200
@@ -0,0 +1,39 @@
+--- gsoap/stdsoap2.cpp.orig
++++ gsoap/stdsoap2.cpp
+@@ -809,7 +809,7 @@ soap_flush_raw(struct soap *soap, const char *s, size_t n)
+ #ifndef WITH_LEANER
+ if ((soap->mode & SOAP_IO) == SOAP_IO_CHUNK)
+ { char t[16];
+- sprintf(t, "\r\n%lX\r\n" + (soap->chunksize ? 0 : 2), (unsigned long)n);
++ sprintf(t, &"\r\n%lX\r\n"[soap->chunksize ? 0 : 2], (unsigned long)n);
+ DBGMSG(SENT, t, strlen(t));
+ if ((soap->error = soap->fsend(soap, t, strlen(t))))
+ return soap->error;
+@@ -9534,7 +9534,8 @@ soap_element_start_end_out(struct soap *soap, const char *tag)
+ }
+ for (np = soap->nlist; np; np = np->next)
+ { if (np->index == 1 && np->ns)
+- { sprintf(soap->tmpbuf, *(np->id) ? "xmlns:%s" : "xmlns", np->id);
++ {
++ sprintf(soap->tmpbuf, *(np->id) ? "xmlns:%s" : "xmlns%s", *(np->id) ? np->id : "");
+ DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Enabling utilized binding (level=%u) %s='%s'\n", np->level, soap->tmpbuf, np->ns));
+ soap_set_attr(soap, soap->tmpbuf, np->ns, 1);
+ np->index = 2;
+@@ -11635,7 +11636,7 @@ SOAP_FMAC1
+ const char*
+ SOAP_FMAC2
+ soap_LONG642s(struct soap *soap, LONG64 n)
+-{ sprintf(soap->tmpbuf, SOAP_LONG_FORMAT, n);
++{ sprintf(soap->tmpbuf, SOAP_LONG_FORMAT, (long long) (n));
+ return soap->tmpbuf;
+ }
+ #endif
+@@ -12453,7 +12454,7 @@ SOAP_FMAC1
+ const char*
+ SOAP_FMAC2
+ soap_ULONG642s(struct soap *soap, ULONG64 n)
+-{ sprintf(soap->tmpbuf, SOAP_ULONG_FORMAT, n);
++{ sprintf(soap->tmpbuf, SOAP_ULONG_FORMAT, (unsigned long long) (n));
+ return soap->tmpbuf;
+ }
+ #endif
diff -ruN --exclude=CVS ../gsoap.orig/files/patch-gsoap-wsdl-service.cpp ./files/patch-gsoap-wsdl-service.cpp
--- ../gsoap.orig/files/patch-gsoap-wsdl-service.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-gsoap-wsdl-service.cpp 2012-09-14 02:53:29.000000000 +0200
@@ -0,0 +1,11 @@
+--- gsoap/wsdl/service.cpp.orig
++++ gsoap/wsdl/service.cpp
+@@ -2281,7 +2281,7 @@ static void ident()
+ char tmp[256];
+ int i;
+ strftime(tmp, 256, "%Y-%m-%d %H:%M:%S GMT", gmtime(p));
+- fprintf(stream, "/* %s\n Generated by wsdl2h "WSDL2H_VERSION" from ", outfile?outfile:"");
++ fprintf(stream, "/* %s\n Generated by wsdl2h " WSDL2H_VERSION " from ", outfile?outfile:"");
+ if (infiles)
+ { for (i = 0; i < infiles; i++)
+ fprintf(stream, "%s ", infile[i]);
diff -ruN --exclude=CVS ../gsoap.orig/files/patch-gsoap-wsdl-types.cpp ./files/patch-gsoap-wsdl-types.cpp
--- ../gsoap.orig/files/patch-gsoap-wsdl-types.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-gsoap-wsdl-types.cpp 2012-09-14 02:53:50.000000000 +0200
@@ -0,0 +1,29 @@
+--- gsoap/wsdl/types.cpp.orig
++++ gsoap/wsdl/types.cpp
+@@ -1206,7 +1206,7 @@ void Types::gen(const char *URI, const char *name, const xs__simpleType& simpleT
+ && simpleType.restriction->minExclusive
+ && simpleType.restriction->minExclusive->value
+ && is_integer(simpleType.restriction->minExclusive->value))
+- fprintf(stream, " "SOAP_LONG_FORMAT, to_integer(simpleType.restriction->minExclusive->value)+1);
++ fprintf(stream, " " SOAP_LONG_FORMAT, (long long) to_integer(simpleType.restriction->minExclusive->value)+1);
+ if (!anonymous
+ && simpleType.restriction->maxLength
+ && simpleType.restriction->maxLength->value)
+@@ -1228,7 +1228,7 @@ void Types::gen(const char *URI, const char *name, const xs__simpleType& simpleT
+ && simpleType.restriction->maxExclusive
+ && simpleType.restriction->maxExclusive->value
+ && is_integer(simpleType.restriction->maxExclusive->value))
+- fprintf(stream, ":"SOAP_LONG_FORMAT, to_integer(simpleType.restriction->maxExclusive->value)-1);
++ fprintf(stream, ":" SOAP_LONG_FORMAT, (long long) to_integer(simpleType.restriction->maxExclusive->value)-1);
+ if (!anonymous)
+ { fprintf(stream, ";\n");
+ if (pflag && simpleType.name)
+@@ -2974,7 +2974,7 @@ static const char *utf8(char *t, const char *s)
+ if (c < 0xFC)
+ c = ((c & 0x03) << 24) | (c1 << 18) | (c2 << 12) | (c3 << 6) | c4;
+ else
+- c = ((c & 0x01) << 30) | (c1 << 24) | (c2 << 18) | (c3 << 12) | (c4 << 6) | *++s & 0x3F;
++ c = ((c & 0x01) << 30) | (c1 << 24) | (c2 << 18) | (c3 << 12) | (c4 << 6) | (*++s & 0x3F);
+ }
+ }
+ }
diff -ruN --exclude=CVS ../gsoap.orig/files/patch-gsoap-wsdl-wsdl2h.cpp ./files/patch-gsoap-wsdl-wsdl2h.cpp
--- ../gsoap.orig/files/patch-gsoap-wsdl-wsdl2h.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-gsoap-wsdl-wsdl2h.cpp 2012-09-14 02:54:04.000000000 +0200
@@ -0,0 +1,20 @@
+--- gsoap/wsdl/wsdl2h.cpp.orig
++++ gsoap/wsdl/wsdl2h.cpp
+@@ -85,7 +85,7 @@ char *infile[MAXINFILES],
+ *proxy_host = NULL,
+ *proxy_userid = NULL,
+ *proxy_passwd = NULL;
+-extern const char
++const char
+ *mapfile = WSDL_TYPEMAP_FILE,
+ *import_path = WSDL2H_IMPORT_PATH,
+ *cwd_path = NULL,
+@@ -118,7 +118,7 @@ const char serviceformat[] = "//gsoap %-4s service %s:\t%s %s\n";
+ const char paraformat[] = " %-35s%s%s%s";
+ const char anonformat[] = " %-35s%s_%s%s";
+
+-const char copyrightnotice[] = "\n** The gSOAP WSDL/Schema processor for C and C++, wsdl2h release "WSDL2H_VERSION"\n** Copyright (C) 2000-2012 Robert van Engelen, Genivia Inc.\n** All Rights Reserved. This product is provided \"as is\", without any warranty.\n** The wsdl2h tool is released under one of the following two licenses:\n** GPL or the commercial license by Genivia Inc. Use option -l for details.\n\n";
++const char copyrightnotice[] = "\n** The gSOAP WSDL/Schema processor for C and C++, wsdl2h release " WSDL2H_VERSION "\n** Copyright (C) 2000-2012 Robert van Engelen, Genivia Inc.\n** All Rights Reserved. This product is provided \"as is\", without any warranty.\n** The wsdl2h tool is released under one of the following two licenses:\n** GPL or the commercial license by Genivia Inc. Use option -l for details.\n\n";
+
+ const char licensenotice[] = "\
+ --------------------------------------------------------------------------------\n\
--- gsoap-2.8.10.patch ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list