diff --git a/devel/gsoap/Makefile b/devel/gsoap/Makefile index 2a866683a7e7..8f135207e787 100644 --- a/devel/gsoap/Makefile +++ b/devel/gsoap/Makefile @@ -2,58 +2,50 @@ # $FreeBSD$ PORTNAME= gsoap -PORTVERSION= 2.8.10 -PORTREVISION= 2 +PORTVERSION= 2.8.17 CATEGORIES= devel MASTER_SITES= SF/${PORTNAME}2/gSOAP DISTNAME= ${PORTNAME}_${PORTVERSION} +EXTRACT_SUFX= .zip MAINTAINER= ports@FreeBSD.org COMMENT= Generator Tools for Coding SOAP/XML Web Services in C and C++ -OPTIONS_DEFINE= OPENSSL GNUTLS -OPTIONS_DEFAULT= OPENSSL +LICENSE= GPLv2 -USE_ZIP= yes -GNU_CONFIGURE= yes -USES= pathfix -MAKE_JOBS_UNSAFE= yes -CFLAGS+= -DWSDL_TYPEMAP_FILE=\\\"${DATADIR}/WS/typemap.dat\\\" \ +CONFIGURE_ENV= LEX=flex YACC=yacc +CPPFLAGS+= -DWSDL_TYPEMAP_FILE=\\\"${DATADIR}/WS/typemap.dat\\\" \ -DSOAPCPP2_IMPORT_PATH=\\\"${DATADIR}/import\\\" - -.if defined(.PARSEDIR) -USE_GMAKE= yes -.endif - +GNU_CONFIGURE= yes +MAKE_JOBS_UNSAFE= yes +USES= pathfix WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION:R} -ONLY_FOR_ARCHS= i386 amd64 +OPTIONS_RADIO= SSL +OPTIONS_RADIO_SSL= GNUTLS OPENSSL +OPTIONS_DEFAULT= OPENSSL -NO_STAGE= yes -.include - -.if ${ARCH} == "amd64" -CFLAGS+= -fPIC -.endif - -.if ! ${PORT_OPTIONS:MOPENSSL} && ! ${PORT_OPTIONS:MGNUTLS} -CONFIGURE_ARGS+=--disable-ssl -.endif +.include .if ${PORT_OPTIONS:MGNUTLS} -LIB_DEPENDS+= gnutls.47:${PORTSDIR}/security/gnutls \ - gcrypt:${PORTSDIR}/security/libgcrypt \ - gpg-error.0:${PORTSDIR}/security/libgpg-error -CONFIGURE_ARGS+=--enable-gnutls +LIB_DEPENDS= libgnutls.so:${PORTSDIR}/security/gnutls \ + libgcrypt.so:${PORTSDIR}/security/libgcrypt \ + libgpg-error.so:${PORTSDIR}/security/libgpg-error +CONFIGURE_ARGS= --enable-gnutls LDFLAGS+= -L${LOCALBASE}/lib +.elif ${PORT_OPTIONS:MOPENSSL} +CONFIGURE_ARGS= --enable-ssl +.else +CONFIGURE_ARGS= --disable-ssl .endif post-patch: - ${REINPLACE_CMD} -e 's|sys/timeb.h||' ${WRKSRC}/${CONFIGURE_SCRIPT} + ${REINPLACE_CMD} -e 's| sys/timeb.h | |' ${WRKSRC}/${CONFIGURE_SCRIPT} post-install: - @${MKDIR} ${PREFIX}/lib/gsoap - @${CP} ${WRKSRC}/gsoap/stdsoap2.c ${PREFIX}/lib/gsoap - @${LN} -f ${PREFIX}/lib/gsoap/stdsoap2.c ${PREFIX}/lib/gsoap/stdsoap2.cpp + @${MKDIR} ${STAGEDIR}${PREFIX}/lib/gsoap + @${INSTALL_DATA} ${WRKSRC}/gsoap/stdsoap2.c \ + ${STAGEDIR}${PREFIX}/lib/gsoap + @${LN} -fs stdsoap2.c ${STAGEDIR}${PREFIX}/lib/gsoap/stdsoap2.cpp -.include +.include diff --git a/devel/gsoap/distinfo b/devel/gsoap/distinfo index f1e0a1ded65a..220229c6ee41 100644 --- a/devel/gsoap/distinfo +++ b/devel/gsoap/distinfo @@ -1,2 +1,2 @@ -SHA256 (gsoap_2.8.10.zip) = fddfd59ba9b0236daa59d1ced9149cb827d446e0a24b85395ed23c10858cabfb -SIZE (gsoap_2.8.10.zip) = 19156778 +SHA256 (gsoap_2.8.17.zip) = 30a53785708c842694227753badda17010cac64efd43f7a4f2b0e8de3de68f28 +SIZE (gsoap_2.8.17.zip) = 20695905 diff --git a/devel/gsoap/files/patch-gsoap-stdsoap2.c b/devel/gsoap/files/patch-gsoap-stdsoap2.c deleted file mode 100644 index b638c91bd6fb..000000000000 --- a/devel/gsoap/files/patch-gsoap-stdsoap2.c +++ /dev/null @@ -1,39 +0,0 @@ ---- 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 --git a/devel/gsoap/files/patch-gsoap-stdsoap2.cpp b/devel/gsoap/files/patch-gsoap-stdsoap2.cpp deleted file mode 100644 index e9e919a872df..000000000000 --- a/devel/gsoap/files/patch-gsoap-stdsoap2.cpp +++ /dev/null @@ -1,39 +0,0 @@ ---- 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 --git a/devel/gsoap/files/patch-gsoap-stdsoap2.h b/devel/gsoap/files/patch-gsoap-stdsoap2.h deleted file mode 100644 index 8e370f9829d3..000000000000 --- a/devel/gsoap/files/patch-gsoap-stdsoap2.h +++ /dev/null @@ -1,25 +0,0 @@ ---- gsoap/stdsoap2.h.orig 2008-01-27 22:02:36.000000000 +0100 -+++ gsoap/stdsoap2.h 2008-07-04 12:35:55.000000000 +0200 -@@ -314,9 +314,6 @@ - # define HAVE_STRRCHR - # define HAVE_STRTOD - # define HAVE_SSCANF --# define HAVE_STRTOD_L --# define HAVE_SSCANF_L --# define HAVE_SPRINTF_L - # define HAVE_STRTOL - # define HAVE_STRTOUL - # define HAVE_STRTOLL -@@ -1462,9 +1465,9 @@ - # endif - # ifndef DBGFUN - # define DBGFUN(FNAME) DBGLOG(TEST, SOAP_MESSAGE(fdebug, "%s(%d): %s()\n", __FILE__, __LINE__, FNAME)) --# define DBGFUN1(FNAME, FMT, ARG) DBGLOG(TEST, SOAP_MESSAGE(fdebug, "%s(%d): %s("FMT")\n", __FILE__, __LINE__, FNAME, (ARG))) --# define DBGFUN2(FNAME, FMT1, ARG1, FMT2, ARG2) DBGLOG(TEST, SOAP_MESSAGE(fdebug, "%s(%d): %s("FMT1", "FMT2")\n", __FILE__, __LINE__, FNAME, (ARG1), (ARG2))) --# define DBGFUN3(FNAME, FMT1, ARG1, FMT2, ARG2, FMT3, ARG3) DBGLOG(TEST, SOAP_MESSAGE(fdebug, "%s(%d): %s("FMT1", "FMT2", "FMT3")\n", __FILE__, __LINE__, FNAME, (ARG1), (ARG2), (ARG3))) -+# define DBGFUN1(FNAME, FMT, ARG) DBGLOG(TEST, SOAP_MESSAGE(fdebug, "%s(%d): %s(" FMT ")\n", __FILE__, __LINE__, FNAME, (ARG))) -+# define DBGFUN2(FNAME, FMT1, ARG1, FMT2, ARG2) DBGLOG(TEST, SOAP_MESSAGE(fdebug, "%s(%d): %s(" FMT1 ", " FMT2 ")\n", __FILE__, __LINE__, FNAME, (ARG1), (ARG2))) -+# define DBGFUN3(FNAME, FMT1, ARG1, FMT2, ARG2, FMT3, ARG3) DBGLOG(TEST, SOAP_MESSAGE(fdebug, "%s(%d): %s(" FMT1 ", " FMT2 ", " FMT3 ")\n", __FILE__, __LINE__, FNAME, (ARG1), (ARG2), (ARG3))) - # endif - # ifndef DBGHEX - # define DBGHEX(DBGFILE, MSG, LEN) \ diff --git a/devel/gsoap/files/patch-gsoap-wsdl-service.cpp b/devel/gsoap/files/patch-gsoap-wsdl-service.cpp deleted file mode 100644 index a6462a83de51..000000000000 --- a/devel/gsoap/files/patch-gsoap-wsdl-service.cpp +++ /dev/null @@ -1,11 +0,0 @@ ---- 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 --git a/devel/gsoap/files/patch-gsoap-wsdl-types.cpp b/devel/gsoap/files/patch-gsoap-wsdl-types.cpp deleted file mode 100644 index aa5ee6ea0d77..000000000000 --- a/devel/gsoap/files/patch-gsoap-wsdl-types.cpp +++ /dev/null @@ -1,29 +0,0 @@ ---- 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 --git a/devel/gsoap/files/patch-gsoap-wsdl-wsdl2h.cpp b/devel/gsoap/files/patch-gsoap-wsdl-wsdl2h.cpp deleted file mode 100644 index 2e024c09e586..000000000000 --- a/devel/gsoap/files/patch-gsoap-wsdl-wsdl2h.cpp +++ /dev/null @@ -1,20 +0,0 @@ ---- 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\