gsoap: update to 2.8.54
gsoap>=2.8.49 supports glibc 2.26.
This commit is contained in:
parent
5a77508a9b
commit
1aa936243b
4 changed files with 49 additions and 61 deletions
|
@ -1,22 +0,0 @@
|
||||||
--- gsoap/stdsoap2.c.orig 2017-05-22 20:36:36.124570820 -0400
|
|
||||||
+++ gsoap/stdsoap2.c 2017-05-22 20:36:52.229856096 -0400
|
|
||||||
@@ -4395,7 +4395,7 @@
|
|
||||||
return soap->error = SOAP_EOM;
|
|
||||||
return SOAP_OK;
|
|
||||||
}
|
|
||||||
-#if defined(__GLIBC__) || (defined(HAVE_GETHOSTBYNAME_R) && (defined(FREEBSD) || defined(__FreeBSD__))) || defined(__ANDROID__)
|
|
||||||
+#if defined(__GLIBC__) || (defined(HAVE_GETHOSTBYNAME_R) && (defined(FREEBSD) || defined(__FreeBSD__))) || defined(__ANDROID__) || defined(LINUX)
|
|
||||||
if (gethostbyname_r(addr, &hostent, soap->buf, sizeof(soap->buf), &host, &soap->errnum) < 0)
|
|
||||||
host = NULL;
|
|
||||||
#elif defined(_AIX43) || ((defined(TRU64) || defined(HP_UX)) && defined(HAVE_GETHOSTBYNAME_R))
|
|
||||||
--- gsoap/stdsoap2.cpp 2017-05-22 20:43:17.974688879 -0400
|
|
||||||
+++ gsoap/stdsoap2.cpp.orig 2017-04-07 14:39:02.000000000 -0400
|
|
||||||
@@ -4395,7 +4395,7 @@
|
|
||||||
return soap->error = SOAP_EOM;
|
|
||||||
return SOAP_OK;
|
|
||||||
}
|
|
||||||
-#if defined(__GLIBC__) || (defined(HAVE_GETHOSTBYNAME_R) && (defined(FREEBSD) || defined(__FreeBSD__))) || defined(__ANDROID__)
|
|
||||||
+#if defined(__GLIBC__) || (defined(HAVE_GETHOSTBYNAME_R) && (defined(FREEBSD) || defined(__FreeBSD__))) || defined(__ANDROID__) || defined(LINUX)
|
|
||||||
if (gethostbyname_r(addr, &hostent, soap->buf, sizeof(soap->buf), &host, &soap->errnum) < 0)
|
|
||||||
host = NULL;
|
|
||||||
#elif defined(_AIX43) || ((defined(TRU64) || defined(HP_UX)) && defined(HAVE_GETHOSTBYNAME_R))
|
|
|
@ -1,32 +0,0 @@
|
||||||
With thanks to alpine.
|
|
||||||
https://git.alpinelinux.org/cgit/aports/tree/community/gsoap/musl-fixes.patch
|
|
||||||
|
|
||||||
The first patch I think should not be necessary, but is because the same source
|
|
||||||
file defines _GNU_SOURCE if gnu-linux and !defined(_GNU_SOURCE) (go read the
|
|
||||||
code, it's the first two places _GNU_SOURCE is used in gsoap/stdsoap2.cpp).
|
|
||||||
I don't know why, but it seems wrong to me.
|
|
||||||
EDIT: Turns out (I was told this) that gcc will define _GNU_SOURCE
|
|
||||||
automatically for C++ files. The first patch is definitely necessary.
|
|
||||||
|
|
||||||
--- ./gsoap/stdsoap2.cpp.orig
|
|
||||||
+++ ./gsoap/stdsoap2.cpp
|
|
||||||
@@ -18691,7 +18691,7 @@
|
|
||||||
{
|
|
||||||
#ifndef WIN32
|
|
||||||
# ifdef HAVE_STRERROR_R
|
|
||||||
-# if defined(_GNU_SOURCE) && !defined(__ANDROID__)
|
|
||||||
+# if defined(_GNU_SOURCE) && !defined(__ANDROID__) && defined(__GLIBC__)
|
|
||||||
return strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* GNU-specific */
|
|
||||||
# else
|
|
||||||
strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* XSI-compliant */
|
|
||||||
--- ./gsoap/stdsoap2.h.orig
|
|
||||||
+++ ./gsoap/stdsoap2.h
|
|
||||||
@@ -943,7 +943,7 @@
|
|
||||||
# endif
|
|
||||||
#elif defined(SOCKLEN_T)
|
|
||||||
# define SOAP_SOCKLEN_T SOCKLEN_T
|
|
||||||
-#elif defined(__socklen_t_defined) || defined(_SOCKLEN_T) || defined(CYGWIN) || defined(FREEBSD) || defined(__FreeBSD__) || defined(OPENBSD) || defined(__QNX__) || defined(QNX) || defined(OS390) || defined(__ANDROID__) || defined(_XOPEN_SOURCE)
|
|
||||||
+#elif defined(__socklen_t_defined) || defined(_SOCKLEN_T) || defined(CYGWIN) || defined(FREEBSD) || defined(__FreeBSD__) || defined(OPENBSD) || defined(__QNX__) || defined(QNX) || defined(OS390) || defined(__ANDROID__) || defined(_XOPEN_SOURCE) || defined (LINUX)
|
|
||||||
# define SOAP_SOCKLEN_T socklen_t
|
|
||||||
#elif defined(IRIX) || defined(WIN32) || defined(__APPLE__) || defined(SUN_OS) || defined(OPENSERVER) || defined(TRU64) || defined(VXWORKS)
|
|
||||||
# define SOAP_SOCKLEN_T int
|
|
42
srcpkgs/gsoap/patches/musl.patch
Normal file
42
srcpkgs/gsoap/patches/musl.patch
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
--- gsoap/stdsoap2.c.orig
|
||||||
|
+++ gsoap/stdsoap2.c
|
||||||
|
@@ -4462,7 +4462,7 @@ tcp_gethost(struct soap *soap, const char *addr, struct in_addr *inaddr)
|
||||||
|
return soap->error = SOAP_EOM;
|
||||||
|
return SOAP_OK;
|
||||||
|
}
|
||||||
|
-#if defined(__GLIBC__) || (defined(HAVE_GETHOSTBYNAME_R) && (defined(FREEBSD) || defined(__FreeBSD__))) || defined(__ANDROID__)
|
||||||
|
+#if defined(LINUX) || (defined(HAVE_GETHOSTBYNAME_R) && (defined(FREEBSD) || defined(__FreeBSD__))) || defined(__ANDROID__)
|
||||||
|
if (gethostbyname_r(addr, &hostent, soap->buf, sizeof(soap->buf), &host, &soap->errnum) < 0)
|
||||||
|
host = NULL;
|
||||||
|
#elif defined(_AIX43) || ((defined(TRU64) || defined(HP_UX)) && defined(HAVE_GETHOSTBYNAME_R))
|
||||||
|
--- gsoap/stdsoap2.cpp.orig
|
||||||
|
+++ gsoap/stdsoap2.cpp
|
||||||
|
@@ -4462,7 +4462,7 @@ tcp_gethost(struct soap *soap, const char *addr, struct in_addr *inaddr)
|
||||||
|
return soap->error = SOAP_EOM;
|
||||||
|
return SOAP_OK;
|
||||||
|
}
|
||||||
|
-#if defined(__GLIBC__) || (defined(HAVE_GETHOSTBYNAME_R) && (defined(FREEBSD) || defined(__FreeBSD__))) || defined(__ANDROID__)
|
||||||
|
+#if defined(LINUX) || (defined(HAVE_GETHOSTBYNAME_R) && (defined(FREEBSD) || defined(__FreeBSD__))) || defined(__ANDROID__)
|
||||||
|
if (gethostbyname_r(addr, &hostent, soap->buf, sizeof(soap->buf), &host, &soap->errnum) < 0)
|
||||||
|
host = NULL;
|
||||||
|
#elif defined(_AIX43) || ((defined(TRU64) || defined(HP_UX)) && defined(HAVE_GETHOSTBYNAME_R))
|
||||||
|
@@ -19658,7 +19658,7 @@ soap_strerror(struct soap *soap)
|
||||||
|
{
|
||||||
|
#ifndef WIN32
|
||||||
|
# ifdef HAVE_STRERROR_R
|
||||||
|
-# if defined(_GNU_SOURCE) && !defined(__ANDROID__)
|
||||||
|
+# if defined(_GNU_SOURCE) && !defined(__ANDROID__) && defined(__GLIBC__)
|
||||||
|
return strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* GNU-specific */
|
||||||
|
# else
|
||||||
|
strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* XSI-compliant */
|
||||||
|
--- gsoap/stdsoap2.h.orig
|
||||||
|
+++ gsoap/stdsoap2.h
|
||||||
|
@@ -947,7 +947,7 @@ extern "C" {
|
||||||
|
# endif
|
||||||
|
#elif defined(SOCKLEN_T)
|
||||||
|
# define SOAP_SOCKLEN_T SOCKLEN_T
|
||||||
|
-#elif defined(__socklen_t_defined) || defined(_SOCKLEN_T) || defined(CYGWIN) || defined(FREEBSD) || defined(__FreeBSD__) || defined(OPENBSD) || defined(__QNX__) || defined(QNX) || defined(OS390) || defined(__ANDROID__) || defined(_XOPEN_SOURCE)
|
||||||
|
+#elif defined(__socklen_t_defined) || defined(_SOCKLEN_T) || defined(CYGWIN) || defined(FREEBSD) || defined(__FreeBSD__) || defined(OPENBSD) || defined(__QNX__) || defined(QNX) || defined(OS390) || defined(__ANDROID__) || defined(_XOPEN_SOURCE) || defined (LINUX)
|
||||||
|
# define SOAP_SOCKLEN_T socklen_t
|
||||||
|
#elif defined(IRIX) || defined(WIN32) || defined(__APPLE__) || defined(SUN_OS) || defined(OPENSERVER) || defined(TRU64) || defined(VXWORKS)
|
||||||
|
# define SOAP_SOCKLEN_T int
|
|
@ -1,8 +1,11 @@
|
||||||
# Template file for 'gsoap'
|
# Template file for 'gsoap'
|
||||||
pkgname=gsoap
|
pkgname=gsoap
|
||||||
version=2.8.47
|
version=2.8.54
|
||||||
revision=1
|
revision=1
|
||||||
build_style=gnu-configure
|
build_style=gnu-configure
|
||||||
|
wrksrc="${pkgname}-${version%.*}"
|
||||||
|
disable_parallel_build=yes
|
||||||
|
configure_args="--enable-ipv6"
|
||||||
hostmakedepends="unzip flex autoconf"
|
hostmakedepends="unzip flex autoconf"
|
||||||
if [ "$CROSS_BUILD" ]; then
|
if [ "$CROSS_BUILD" ]; then
|
||||||
hostmakedepends+=" gsoap"
|
hostmakedepends+=" gsoap"
|
||||||
|
@ -10,16 +13,13 @@ fi
|
||||||
makedepends="libressl-devel zlib-devel"
|
makedepends="libressl-devel zlib-devel"
|
||||||
short_desc="Toolkit for SOAP and REST Web Services and XML-Based Applications"
|
short_desc="Toolkit for SOAP and REST Web Services and XML-Based Applications"
|
||||||
maintainer="Enno Boland <gottox@voidlinux.eu>"
|
maintainer="Enno Boland <gottox@voidlinux.eu>"
|
||||||
license="GPL-3"
|
license="GPL-2"
|
||||||
homepage="http://www.cs.fsu.edu/~engelen/soap.html"
|
homepage="http://www.cs.fsu.edu/~engelen/soap.html"
|
||||||
distfiles="${SOURCEFORGE_SITE}/gsoap2/gsoap_${version}.zip"
|
distfiles="${SOURCEFORGE_SITE}/gsoap2/gsoap_${version}.zip"
|
||||||
checksum=bef690f99f57367695aad5caa9e78f36e50bcd016d2ea662f038325819332cfa
|
checksum=158ed9c674941c382850e8e96ac9b0174f4e7aacb25794349bd07f52261921c8
|
||||||
wrksrc="${pkgname}-${version%.*}"
|
|
||||||
disable_parallel_build=yes
|
|
||||||
configure_args=" --enable-ipv6"
|
|
||||||
|
|
||||||
gsoap-devel_package() {
|
gsoap-devel_package() {
|
||||||
depends="gsoap>=${version}_${revision} $makedepends"
|
depends="${sourcepkg}>=${version}_${revision} ${makedepends}"
|
||||||
short_desc+=" - development files"
|
short_desc+=" - development files"
|
||||||
pkg_install() {
|
pkg_install() {
|
||||||
vmove usr/include
|
vmove usr/include
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue