net-libs/gsoap: add 2.8.130

Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Sam James
2023-09-13 03:40:58 +01:00
parent 7fff6ca110
commit c259222bef
3 changed files with 222 additions and 0 deletions

View File

@@ -1 +1,2 @@
DIST gsoap_2.8.114.zip 34599617 BLAKE2B fe68b057fa288b033f068be33e3f8871af8daf812d77a2fc87399f6750a4a8e23cb323dade3385c9b2147b2cde46980e9c52d393eff6eb16fa52cdbcc7a62537 SHA512 205d38a36c56780fd34bad8ea56525a04d4dc5b58af55676783c78d6eecf47dd0e9c86b0106f68127cfb2f45cb94f6ac9ebe353d1c6687e9faa13badb4a9690a
DIST gsoap_2.8.130.zip 55318989 BLAKE2B 5b118027811787c818c2e4e9be86eae954fc15fcc9f0bc237afec6fb71c697c659ce5071d572ee3178315c9d140e32c0e0c226bfaeb6aba0df7d84a4b90fcd3a SHA512 b82ebc7d058a9e2f59d325e2c50e96f6bd712c65285389cb120c4a9bbf51da1b99a833d8f81ba674e37f34090fde8317990de1906c97434342cbe84568d66b6c

View File

@@ -0,0 +1,140 @@
https://bugs.gentoo.org/583398
https://build.opensuse.org/package/view_file/openSUSE:Factory/gsoap/gsoap-01-sharedlibs.diff?expand=1
See also: https://src.fedoraproject.org/rpms/gsoap/blob/rawhide/f/gsoap-libtool.patch
From: Jan Engelhardt <jengelh@medozas.de>
Date: 2011-07-01 17:19:00 +0200
build: always use shared libraries
--- a/configure.ac
+++ b/configure.ac
@@ -15,8 +15,8 @@ AM_PROG_CC_C_O
AM_PROG_LEX([noyywrap])
AC_PROG_YACC
AC_PROG_CPP
-AC_PROG_RANLIB
-#AM_PROG_LIBTOOL
+m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
+LT_INIT
AC_PROG_LN_S
AC_PROG_AWK
AC_PROG_INSTALL
@@ -310,7 +310,7 @@ if test "x$with_openssl" = "xyes"; then
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_LIB="libgsoapssl++.la"
else
if test "x$with_wolfssl" = "xyes"; then
AC_MSG_RESULT(yes)
@@ -318,7 +318,7 @@ if test "x$with_openssl" = "xyes"; then
WSDL2H_EXTRA_LIBS="${WSDL2H_EXTRA_LIBS} -lwolfssl -lz"
SAMPLE_INCLUDES=
SAMPLE_SSL_LIBS="-lwolfssl -lz"
- WSDL2H_SOAP_CPP_LIB="libgsoapssl++.a"
+ WSDL2H_SOAP_CPP_LIB="libgsoapssl++.la"
else
AC_MSG_RESULT(no)
WSDL2H_EXTRA_FLAGS="-DWITH_OPENSSL -DWITH_GZIP"
@@ -326,7 +326,7 @@ if test "x$with_openssl" = "xyes"; then
WSDL2H_EXTRA_LIBS="${WSDL2H_EXTRA_LIBS} -lssl -lcrypto -lz"
SAMPLE_INCLUDES=
SAMPLE_SSL_LIBS="-lssl -lcrypto -lz"
- WSDL2H_SOAP_CPP_LIB="libgsoapssl++.a"
+ WSDL2H_SOAP_CPP_LIB="libgsoapssl++.la"
fi
fi
if test -n "$ZLIB"; then
@@ -346,7 +346,7 @@ else
WSDL2H_EXTRA_FLAGS=
SAMPLE_SSL_LIBS=
SAMPLE_INCLUDES=
- WSDL2H_SOAP_CPP_LIB="libgsoap++.a"
+ WSDL2H_SOAP_CPP_LIB="libgsoap++.la"
fi
AM_CONDITIONAL([WITH_OPENSSL], [test "x$with_openssl" = "xyes" -a "x$with_gnutls" != "xyes" -a "x$with_wolfssl" != "xyes"])
AC_SUBST(WSDL2H_EXTRA_FLAGS)
--- a/gsoap/Makefile.am
+++ b/gsoap/Makefile.am
@@ -34,20 +34,34 @@ stdsoap2_ssl_cpp.cpp: stdsoap2.cpp
dom_cpp.cpp: dom.cpp
$(LN_S) -f $(top_srcdir)/gsoap/dom.cpp dom_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 dom.c
-libgsoap_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) $(SOAPCPP2_IPV6_V6ONLY) -D$(platform)
-libgsoap___a_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp
-libgsoap___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) $(SOAPCPP2_IPV6_V6ONLY) -D$(platform)
-libgsoapck_a_SOURCES = stdsoap2_ck.c dom.c
-libgsoapck_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) $(SOAPCPP2_IPV6_V6ONLY) -D$(platform) -DWITH_COOKIES
-libgsoapck___a_SOURCES = stdsoap2_ck_cpp.cpp dom_cpp.cpp
-libgsoapck___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) $(SOAPCPP2_IPV6_V6ONLY) -D$(platform) -DWITH_COOKIES
-libgsoapssl_a_SOURCES = stdsoap2_ssl.c dom.c
-libgsoapssl_a_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) $(SOAPCPP2_IPV6_V6ONLY) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
-libgsoapssl___a_SOURCES = stdsoap2_ssl_cpp.cpp dom_cpp.cpp
-libgsoapssl___a_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) $(SOAPCPP2_IPV6_V6ONLY) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
+libgsoap_la_SOURCES = stdsoap2.c dom.c
+libgsoap_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) $(SOAPCPP2_IPV6_V6ONLY) -D$(platform)
+libgsoap___la_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp
+libgsoap___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) $(SOAPCPP2_IPV6_V6ONLY) -D$(platform)
+libgsoapck_la_SOURCES = stdsoap2_ck.c dom.c
+libgsoapck_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) $(SOAPCPP2_IPV6_V6ONLY) -D$(platform) -DWITH_COOKIES
+libgsoapck___la_SOURCES = stdsoap2_ck_cpp.cpp dom_cpp.cpp
+libgsoapck___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) $(SOAPCPP2_IPV6_V6ONLY) -D$(platform) -DWITH_COOKIES
+libgsoapssl_la_SOURCES = stdsoap2_ssl.c dom.c
+libgsoapssl_la_CFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) $(SOAPCPP2_IPV6_V6ONLY) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
+libgsoapssl___la_SOURCES = stdsoap2_ssl_cpp.cpp dom_cpp.cpp
+libgsoapssl___la_CXXFLAGS = $(SOAPCPP2_DEBUG) $(SOAPCPP2_NONAMESPACES) $(SOAPCPP2_NO_C_LOCALE) $(SOAPCPP2_IPV6) $(SOAPCPP2_IPV6_V6ONLY) -D$(platform) $(WSDL2H_EXTRA_FLAGS) -DWITH_DOM -DWITH_COOKIES
+libgsoap_la_LDFLAGS = -release ${PACKAGE_VERSION} -Wl,--version-script=gsoap.sym
+libgsoap___la_LDFLAGS = -release ${PACKAGE_VERSION} -Wl,--version-script=gsoap++.sym
+libgsoapck_la_LDFLAGS = -release ${PACKAGE_VERSION} -Wl,--version-script=gsoapck.sym
+libgsoapck___la_LDFLAGS = -release ${PACKAGE_VERSION} -Wl,--version-script=gsoapck++.sym
+libgsoapssl_la_LDFLAGS = -release ${PACKAGE_VERSION} -Wl,--version-script=gsoapssl.sym
+libgsoapssl_la_LIBADD = ${SAMPLE_SSL_LIBS}
+libgsoapssl___la_LDFLAGS = -release ${PACKAGE_VERSION} -Wl,--version-script=gsoapssl++.sym
+libgsoapssl___la_LIBADD = ${libgsoapssl_la_LIBADD}
+EXTRA_libgsoap_la_DEPENDENCIES = gsoap.sym
+EXTRA_libgsoap___la_DEPENDENCIES = gsoap++.sym
+EXTRA_libgsoapck_la_DEPENDENCIES = gsoapck.sym
+EXTRA_libgsoapck___la_DEPENDENCIES = gsoapck++.sym
+EXTRA_libgsoapssl_la_DEPENDENCIES = gsoapssl.sym
+EXTRA_libgsoapssl___la_DEPENDENCIES = gsoapssl++.sym
BUILT_SOURCES = stdsoap2_cpp.cpp dom_cpp.cpp stdsoap2_ck.c stdsoap2_ck_cpp.cpp stdsoap2_ssl.c stdsoap2_ssl_cpp.cpp
--- /dev/null
+++ b/gsoap/gsoap++.sym
@@ -0,0 +1 @@
+GSOAPXX { global: *; };
--- /dev/null
+++ b/gsoap/gsoap.sym
@@ -0,0 +1 @@
+GSOAP { global: *; };
--- /dev/null
+++ b/gsoap/gsoapck++.sym
@@ -0,0 +1 @@
+GSOAPCKXX { global: *; };
--- /dev/null
+++ b/gsoap/gsoapck.sym
@@ -0,0 +1 @@
+GSOAPCK { global: *; };
--- /dev/null
+++ b/gsoap/gsoapckssl++.sym
@@ -0,0 +1 @@
+GSOAPCKSSLXX { global: *; };
--- /dev/null
+++ b/gsoap/gsoapckssl.sym
@@ -0,0 +1 @@
+GSOAPCKSSL { global: *; };
--- /dev/null
+++ b/gsoap/gsoapssl++.sym
@@ -0,0 +1 @@
+GSOAPSSLXX { global: *; };
--- /dev/null
+++ b/gsoap/gsoapssl.sym
@@ -0,0 +1 @@
+GSOAPSSL { global: *; };

View File

@@ -0,0 +1,81 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools
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"
S="${WORKDIR}/${MY_P}"
LICENSE="|| ( gSOAP-1.3b GPL-2+-with-openssl-exception ) GPL-2+"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="doc debug examples ipv6 gnutls +ssl"
RDEPEND="
sys-libs/zlib
gnutls? ( net-libs/gnutls )
ssl? (
dev-libs/openssl:=
)
"
DEPEND="
${RDEPEND}
"
BDEPEND="
app-arch/unzip
sys-devel/bison
sys-devel/flex
"
PATCHES=(
# Enable shared libs (bug #583398)
"${FILESDIR}/${PN}-2.8.130-shared_libs.patch"
)
src_prepare() {
default
eautoreconf
}
src_configure() {
unset YACC LEX
local myeconfargs=(
# Don't include xlocale.h as it got removed in >=glibc-2.26
--disable-xlocale
$(use_enable debug)
$(use_enable gnutls)
$(usev ipv6 --enable-ipv6)
$(usev !ssl --disable-ssl)
)
econf "${myeconfargs[@]}"
}
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
docinto html
dodoc changelog.md
find "${ED}" \( -name "*.a" -o -name "*.la" \) -delete || die
if use examples; then
insinto /usr/share/${PN}/examples
doins -r gsoap/samples/*
fi
if use doc; then
docinto html
dodoc -r gsoap/doc/*
fi
}