summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wendler <polynomial-c@gentoo.org>2017-04-28 09:43:30 +0200
committerLars Wendler <polynomial-c@gentoo.org>2017-04-28 09:45:20 +0200
commitff57f004b947cea5023fd3f203e41e6312822fc4 (patch)
treeac60f0fa1d5eb69d445ec836f48bbdeec0383438
parentnet-misc/tigervnc: Make USE=nls dependencies conditional (bug #616742). (diff)
downloadgentoo-ff57f004.tar.gz
gentoo-ff57f004.tar.bz2
gentoo-ff57f004.zip
net-libs/gsoap: Bump to version 2.8.45
Build shared libs (bug #583398). Package-Manager: Portage-2.3.5, Repoman-2.3.2
-rw-r--r--net-libs/gsoap/Manifest1
-rw-r--r--net-libs/gsoap/files/gsoap-2.7.40-shared_libs.patch146
-rw-r--r--net-libs/gsoap/gsoap-2.8.45.ebuild82
3 files changed, 229 insertions, 0 deletions
diff --git a/net-libs/gsoap/Manifest b/net-libs/gsoap/Manifest
index c5cda68fa203..4f811882a748 100644
--- a/net-libs/gsoap/Manifest
+++ b/net-libs/gsoap/Manifest
@@ -2,3 +2,4 @@ DIST gsoap_2.7.17.zip 10224444 SHA256 d3af1ce9464b28cacdf1dfbe09b689f8927cbcf394
DIST gsoap_2.8.23.zip 22482000 SHA256 e1c30743f1c2cf40b2760568127e14af1b2a00c3026b2e5f0750e8c33d94c061 SHA512 cc90aadfe09aa6406172c9ffa07696851ff594ca7c5b40819494badd8ce978d908d66de63a5831e7aec1bca18ee8b51ed02187057688a3b36eb0a21fe6e0f5a4 WHIRLPOOL e5cfc9c5758847d1fc94cbd38108b80c7548abc0316fe201b58604a3b22d30b9748c81d4aec13f53356593f3ddc2dcba14170a53d63795eab9229ec49d4bc585
DIST gsoap_2.8.39.zip 36767952 SHA256 7922bfea5f8d0889ea578026d368abd666983e36fed8745f807c39a072028760 SHA512 655be576d8c7bd461a59bcf934ce1abeb3c284e87662dffcf06f0a0d4aa8655ce7b1b646f4ec3fa866c6c617cd527e1fa486b9e72249b3ea0e7e3cbdc3f9bfe4 WHIRLPOOL 6da9507a0a3e1e1ea8510dfcb2f67154081d6afa9bc8a9f677973300a9c2eefb8c4e2f2d3c249bfdcb6bb9f2d488a50f23b3fe03790fc0ac8b189364f7de5683
DIST gsoap_2.8.40.zip 36317175 SHA256 54ef56d9c55a6a7a00ae57f8cb0b3266af1b26e623070be2ef20833626157f77 SHA512 fc26899e780a7d797544f21aa7beaabc6c1507b7097c4a229a641e4be763733a40e96ce0d5181024eae19653de9513a5b35d51c8b12e85078423e30d0b898a6f WHIRLPOOL 6f795590a5b1e36d796200e3669b3a2aa45c016aa3acaae6291c09543422530a12e977a159a2f892b328cd7813633f41966432e75fd36268bfe4c6d9d1bb6fbf
+DIST gsoap_2.8.45.zip 33590780 SHA256 81946d1ecd99ea414383d5f090e6b292908ff3ac0211cb097a1d1d54e9808bce SHA512 db45f2f8403143387f2860339a77695079fd3224700791846eb436d510a1008fe217c85b61b980340a4982d20ed0fef87dfd8d3de07be9953b627b539ca4af2a WHIRLPOOL 73b2327a05fb065c398573cb70eafc37066c0992787f51eb39e9b0e61193aeaa6f59e608d179c805d3488875dfe538116c512660bf24554811be8ecb8442229b
diff --git a/net-libs/gsoap/files/gsoap-2.7.40-shared_libs.patch b/net-libs/gsoap/files/gsoap-2.7.40-shared_libs.patch
new file mode 100644
index 000000000000..829e0e45a58c
--- /dev/null
+++ b/net-libs/gsoap/files/gsoap-2.7.40-shared_libs.patch
@@ -0,0 +1,146 @@
+diff -Naur a/configure.ac b/configure.ac
+--- a/configure.ac 2016-12-11 04:12:26.000000000 +0000
++++ b/configure.ac 2017-01-10 13:41:24.743162628 +0000
+@@ -17,7 +17,7 @@
+ AC_PROG_YACC
+ AC_PROG_CPP
+ AC_PROG_RANLIB
+-#AM_PROG_LIBTOOL
++AM_PROG_LIBTOOL
+ AC_PROG_LN_S
+ AC_PROG_AWK
+ AC_PROG_INSTALL
+@@ -242,16 +242,18 @@
+ WSDL2H_EXTRA_LIBS="${WSDL2H_EXTRA_LIBS} -lgnutls -lgcrypt -lgpg-error -lz"
+ SAMPLE_INCLUDES=
+ SAMPLE_SSL_LIBS="-lgnutls -lgcrypt -lgpg-error -lz"
+- WSDL2H_SOAP_CPP_LIB="libgsoapssl++.a"
++ WSDL2H_SOAP_CPP_STATIC_LIB="libgsoapssl++.a"
++ WSDL2H_SOAP_CPP_SHARED_LIB="libgsoapssl++.la"
+ else
+ AC_MSG_RESULT(no)
+ WSDL2H_EXTRA_FLAGS="-DWITH_OPENSSL -DWITH_GZIP"
+ # an ugly hack to get httpda and smdevp plugins to conditionally
+ # compile with wsdl2h when OPENSSL is available
+- WSDL2H_EXTRA_LIBS="${WSDL2H_EXTRA_LIBS} ../plugin/httpda.c ../plugin/smdevp.c ../plugin/threads.c -lssl -lcrypto -lz"
++ WSDL2H_EXTRA_LIBS="${WSDL2H_EXTRA_LIBS} ../plugin/httpda.c ../plugin/smdevp.c ../plugin/threads.c -lcrypto"
+ SAMPLE_INCLUDES=
+ SAMPLE_SSL_LIBS="-lssl -lcrypto -lz"
+- WSDL2H_SOAP_CPP_LIB="libgsoapssl++.a"
++ WSDL2H_SOAP_CPP_STATIC_LIB="libgsoapssl++.a"
++ WSDL2H_SOAP_CPP_SHARED_LIB="libgsoapssl++.la"
+ fi
+ if test -n "$ZLIB"; then
+ WSDL2H_EXTRA_FLAGS="-I${ZLIB}/include ${WSDL2H_EXTRA_FLAGS}"
+@@ -270,13 +272,15 @@
+ WSDL2H_EXTRA_FLAGS=
+ SAMPLE_SSL_LIBS=
+ SAMPLE_INCLUDES=
+- WSDL2H_SOAP_CPP_LIB="libgsoap++.a"
++ WSDL2H_SOAP_CPP_STATIC_LIB="libgsoapssl++.a"
++ WSDL2H_SOAP_CPP_SHARED_LIB="libgsoapssl++.la"
+ fi
+ AC_SUBST(WSDL2H_EXTRA_FLAGS)
+ AC_SUBST(WSDL2H_EXTRA_LIBS)
+ AC_SUBST(SAMPLE_INCLUDES)
+ AC_SUBST(SAMPLE_SSL_LIBS)
+-AC_SUBST(WSDL2H_SOAP_CPP_LIB)
++AC_SUBST(WSDL2H_SOAP_CPP_SHARED_LIB)
++AC_SUBST(WSDL2H_SOAP_CPP_STATIC_LIB)
+
+ # enable the compile of the samples
+ AC_ARG_ENABLE(samples,
+diff -Naur a/gsoap/Makefile.am b/gsoap/Makefile.am
+--- a/gsoap/Makefile.am 2016-12-11 04:12:27.000000000 +0000
++++ b/gsoap/Makefile.am 2017-01-10 13:41:36.487140423 +0000
+@@ -49,6 +49,29 @@
+ 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
+
++lib_LTLIBRARIES = libgsoap.la libgsoap++.la libgsoapck.la libgsoapck++.la libgsoapssl.la libgsoapssl++.la
++SOVERSION = 0
++libgsoap_la_SOURCES = stdsoap2.c dom.c
++libgsoap_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform)
++libgsoap_la_LDFLAGS = -version-info $(SOVERSION)
++libgsoap___la_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp
++libgsoap___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform)
++libgsoap___la_LDFLAGS = -version-info $(SOVERSION)
++libgsoapck_la_SOURCES = stdsoap2_ck.c dom.c
++libgsoapck_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES
++libgsoapck_la_LDFLAGS = -version-info $(SOVERSION)
++libgsoapck___la_SOURCES = stdsoap2_ck_cpp.cpp dom_cpp.cpp
++libgsoapck___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) -DWITH_COOKIES
++libgsoapck___la_LDFLAGS = -version-info $(SOVERSION)
++libgsoapssl_la_SOURCES = stdsoap2_ssl.c dom.c
++libgsoapssl_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
++libgsoapssl_la_LDFLAGS = -version-info $(SOVERSION)
++libgsoapssl_la_LIBADD = -lssl -lcrypto -lz
++libgsoapssl___la_SOURCES = stdsoap2_ssl_cpp.cpp dom_cpp.cpp
++libgsoapssl___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_IPV6) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
++libgsoapssl___la_LDFLAGS = -version-info $(SOVERSION)
++libgsoapssl___la_LIBADD = -lssl -lcrypto -lz
++
+ 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 -Naur a/gsoap/samples/autotest/Makefile.am b/gsoap/samples/autotest/Makefile.am
+--- a/gsoap/samples/autotest/Makefile.am 2016-12-11 04:12:27.000000000 +0000
++++ b/gsoap/samples/autotest/Makefile.am 2017-01-10 13:44:39.954389922 +0000
+@@ -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_SHARED_LIB=$(top_builddir)/gsoap/libgsoap++.a
+
+ $(SOAP_CPP_SRC) : $(WSDLINPUT)
+ $(WSDL) $(WSDL_FLAGS) $(WSDLINPUT)
+@@ -40,6 +40,6 @@
+ autotest_CPPFLAGS=$(C_DEBUG_FLAGS) -D$(platform)
+ autotest_CXXFLAGS=$(WSDL2H_EXTRA_FLAGS)
+ autotest_SOURCES=$(SOAP_CPP_SRC) soapTester.cpp duration.cpp long_time.cpp struct_tm.cpp struct_tm_date.cpp
+-autotest_LDADD=$(SOAP_CPP_LIB) $(SAMPLE_EXTRA_LIBS)
++autotest_LDADD=$(SOAP_CPP_SHARED_LIB) $(SAMPLE_EXTRA_LIBS)
+
+ CLEANFILES= *~ *.h *.cpp *.xml *.log *.nsmap
+diff -Naur a/gsoap/samples/databinding/Makefile.am b/gsoap/samples/databinding/Makefile.am
+--- a/gsoap/samples/databinding/Makefile.am 2016-12-11 04:12:27.000000000 +0000
++++ b/gsoap/samples/databinding/Makefile.am 2017-01-10 13:43:51.788258087 +0000
+@@ -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_SHARED_LIB=$(top_builddir)/gsoap/libgsoap++.la
+
+ $(SOAP_CPP_SRC) : $(WSDLINPUT)
+ $(WSDL) $(WSDL_FLAGS) $(WSDLINPUT)
+@@ -28,6 +28,6 @@
+ address_CPPFLAGS=$(C_DEBUG_FLAGS) -D$(platform)
+ address_CXXFLAGS=$(WSDL2H_EXTRA_FLAGS)
+ address_SOURCES=$(SOAP_CPP_SRC) address.cpp
+-address_LDADD=$(SOAP_CPP_LIB)
++address_LDADD=$(SOAP_CPP_SHARED_LIB)
+
+ CLEANFILES= *~ address.h *C.cpp *H.h *Stub.h *.nsmap
+diff -Naur a/gsoap/wsdl/Makefile.am b/gsoap/wsdl/Makefile.am
+--- a/gsoap/wsdl/Makefile.am 2016-12-11 04:12:28.000000000 +0000
++++ b/gsoap/wsdl/Makefile.am 2017-01-10 13:42:08.991078959 +0000
+@@ -10,7 +10,7 @@
+ AM_LDFLAGS=-L$(srcdir) -I$(top_srcdir)/gsoap -I$(top_srcdir)/gsoap/plugin
+ AM_CPPFLAGS=-I$(top_srcdir)/gsoap -I$(top_srcdir)/gsoap/plugin
+ SOAP=$(top_builddir)/gsoap/src/soapcpp2$(EXEEXT)
+-SOAP_CPP_LIB=$(top_builddir)/gsoap/$(WSDL2H_SOAP_CPP_LIB)
++SOAP_CPP_SHARED_LIB=$(top_builddir)/gsoap/$(WSDL2H_SOAP_CPP_SHARED_LIB)
+ SOAP_CPP_SRC=wsdlC.cpp
+ SOAPHEADER=$(srcdir)/wsdl.h
+ SOAP_FLAGS=-SC -pwsdl -I$(srcdir) -I$(top_srcdir)/gsoap/import
+@@ -29,6 +29,6 @@
+ wsdl2h_CXXFLAGS=$(C_DEBUG_FLAGS) $(WSDL2H_EXTRA_FLAGS) $(WSDL2H_IMPORTPATH)
+ wsdl2h_CPPFLAGS=$(AM_CPPFLAGS) $(SOAPCPP2_NONAMESPACES) -D$(platform)
+ wsdl2h_SOURCES=wsdl2h.cpp wsdl.cpp wadl.cpp schema.cpp types.cpp service.cpp soap.cpp mime.cpp wsp.cpp bpel.cpp $(SOAP_CPP_SRC)
+-wsdl2h_LDADD=$(SOAP_CPP_LIB) $(WSDL2H_EXTRA_LIBS)
++wsdl2h_LDADD=$(SOAP_CPP_SHARED_LIB) $(WSDL2H_EXTRA_LIBS)
+
+ CLEANFILES= *~ *C.cpp *H.h *Stub.h *.nsmap
+
diff --git a/net-libs/gsoap/gsoap-2.8.45.ebuild b/net-libs/gsoap/gsoap-2.8.45.ebuild
new file mode 100644
index 000000000000..aef077767cc0
--- /dev/null
+++ b/net-libs/gsoap/gsoap-2.8.45.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools eutils
+
+MY_P="${PN}-2.8"
+
+DESCRIPTION="A cross-platform open source C and C++ SDK for SOAP/XML Web services"
+HOMEPAGE="http://gsoap2.sourceforge.net"
+SRC_URI="mirror://sourceforge/gsoap2/gsoap_${PV}.zip"
+
+LICENSE="GPL-2 gSOAP"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc debug examples ipv6 libressl gnutls +ssl"
+
+RDEPEND="
+ sys-libs/zlib
+ gnutls? ( net-libs/gnutls )
+ ssl? (
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl )
+ )
+"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ sys-devel/flex
+ sys-devel/bison
+"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ default
+
+ # Fix Pre-ISO headers
+ eapply "${FILESDIR}/${PN}-2.7.10-fedora-install_soapcpp2_wsdl2h_aux.patch"
+
+ # enable shared libs https://bugs.gentoo.org/583398
+ eapply "${FILESDIR}/${PN}-2.7.40-shared_libs.patch"
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=()
+ use ssl || myconf+=( --disable-ssl )
+ use gnutls && myconf+=( --enable-gnutls )
+ use ipv6 && myconf+=( --enable-ipv6 )
+ econf \
+ ${myconf[@]} \
+ $(use_enable debug) \
+ $(use_enable examples samples)
+}
+
+src_compile() {
+ emake -j1
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ # yes, we also install the license-file since
+ # it contains info about how to apply the licenses
+ dodoc *.txt
+
+ dohtml changelog.md
+
+ prune_libtool_files --all
+
+ if use examples; then
+ rm -rf gsoap/samples/Makefile* gsoap/samples/*/Makefile* gsoap/samples/*/*.o || die
+ insinto /usr/share/doc/${PF}/examples
+ doins -r gsoap/samples/*
+ fi
+
+ if use doc; then
+ dohtml -r gsoap/doc/*
+ fi
+}