summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGokturk Yuksek <gokturk@binghamton.edu>2015-12-26 22:13:44 -0500
committerGokturk Yuksek <gokturk@binghamton.edu>2015-12-27 01:05:25 -0500
commit67a035a2c882f07ed42c2b6e4f90a3aa5f434ca2 (patch)
treebfb37099792581499ccc1e1bb4d50c5700afe734 /net-libs/gsoap
parentnet-libs/gsoap: add missing '|| die' statements (diff)
downloadgentoo-67a035a2c882f07ed42c2b6e4f90a3aa5f434ca2.tar.gz
gentoo-67a035a2c882f07ed42c2b6e4f90a3aa5f434ca2.tar.bz2
gentoo-67a035a2c882f07ed42c2b6e4f90a3aa5f434ca2.zip
net-libs/gsoap: backport missing cookie support #340647
For <gsoap-2.8.24, successful compilation results in missing cookie support due to undefined compilation flag. This is fixed in the later versions by upstream. Backport it for gsoap-2.7.17. Upstream-URL: https://sourceforge.net/p/gsoap2/code/85/tree//gsoap/Makefile.am?diff=51af4d3f5fcbc945b53d89a4:84 Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=340647 Package-Manager: portage-2.2.24
Diffstat (limited to 'net-libs/gsoap')
-rw-r--r--net-libs/gsoap/files/gsoap-2.7-fix-missing-cookie-support.patch24
-rw-r--r--net-libs/gsoap/gsoap-2.7.17-r2.ebuild71
2 files changed, 95 insertions, 0 deletions
diff --git a/net-libs/gsoap/files/gsoap-2.7-fix-missing-cookie-support.patch b/net-libs/gsoap/files/gsoap-2.7-fix-missing-cookie-support.patch
new file mode 100644
index 000000000000..7f3ad8d283b9
--- /dev/null
+++ b/net-libs/gsoap/files/gsoap-2.7-fix-missing-cookie-support.patch
@@ -0,0 +1,24 @@
+From: Gokturk Yuksek <gokturk@binghamton.edu>
+Subject: [PATCH] Backport missing cookie support
+
+For <gsoap-2.8.24, successful compilation results in missing cookie
+support due to undefined compilation flag. This is fixed in the later
+versions by upstream.
+
+Upstream-URL: https://sourceforge.net/p/gsoap2/code/85/tree//gsoap/Makefile.am?diff=51af4d3f5fcbc945b53d89a4:84
+Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=340647
+
+--- a/gsoap/Makefile.am
++++ b/gsoap/Makefile.am
+@@ -42,9 +42,9 @@
+ 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_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_OPENSSL -DWITH_DOM -DWITH_GZIP -DWITH_COOKIES
+ libgsoapssl___a_SOURCES = stdsoap2_ssl_cpp.cpp
+-libgsoapssl___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_OPENSSL -DWITH_DOM -DWITH_GZIP
++libgsoapssl___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) -D$(platform) -DWITH_OPENSSL -DWITH_DOM -DWITH_GZIP -DWITH_COOKIES
+
+ BUILT_SOURCES = stdsoap2_cpp.cpp $(lib_LIBRARIES)
+
diff --git a/net-libs/gsoap/gsoap-2.7.17-r2.ebuild b/net-libs/gsoap/gsoap-2.7.17-r2.ebuild
new file mode 100644
index 000000000000..a6a3adf82314
--- /dev/null
+++ b/net-libs/gsoap/gsoap-2.7.17-r2.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils
+
+MY_P="${PN}-2.7"
+
+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 +ssl"
+
+DEPEND="app-arch/unzip
+ sys-devel/flex
+ sys-devel/bison"
+RDEPEND="sys-libs/zlib
+ ssl? ( dev-libs/openssl:0= )"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ # Fix Pre-ISO headers
+ epatch "${FILESDIR}/${PN}-2.7-fix-pre-iso-headers.patch"
+ epatch "${FILESDIR}/${PN}-2.7.10-fedora-install_soapcpp2_wsdl2h_aux.patch"
+ epatch "${FILESDIR}/${PN}-2.7-fix-missing-cookie-support.patch" # 340647
+
+ # causes compilation of app-emulation/virtualbox-ose[vboxwebsrv] to
+ # break (bug #320901):
+ #epatch "${FILESDIR}/${PN}-2.7.15-use_libtool.patch"
+
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ $(use_enable ssl openssl) \
+ $(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.html
+
+ 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
+}