summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-support/gsoap
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2024-05-19 17:15:33 -0700
committerKhem Raj <raj.khem@gmail.com>2024-05-23 08:44:43 -0700
commit805aaefe7778edd510112d96f3cd6634748ea576 (patch)
treee2184dda884b50b88ef7539640a09e0ad0d4fc8d /meta-oe/recipes-support/gsoap
parentca6bb4de1fbc961cb81377e7dc8e147cb7d045cd (diff)
downloadmeta-openembedded-805aaefe7778edd510112d96f3cd6634748ea576.tar.gz
gsoap: Upgrade to 2.8.134
Redo musl support patch such that it can always be applied Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-support/gsoap')
-rw-r--r--meta-oe/recipes-support/gsoap/gsoap/0001-Provide-strtod_l-signature-on-non-glibc-linux-musl-s.patch85
-rw-r--r--meta-oe/recipes-support/gsoap/gsoap/0001-Simplify-check-for-gethostbyname_r.patch96
-rw-r--r--meta-oe/recipes-support/gsoap/gsoap_2.8.134.bb (renamed from meta-oe/recipes-support/gsoap/gsoap_2.8.126.bb)6
3 files changed, 88 insertions, 99 deletions
diff --git a/meta-oe/recipes-support/gsoap/gsoap/0001-Provide-strtod_l-signature-on-non-glibc-linux-musl-s.patch b/meta-oe/recipes-support/gsoap/gsoap/0001-Provide-strtod_l-signature-on-non-glibc-linux-musl-s.patch
new file mode 100644
index 000000000..df27a59ee
--- /dev/null
+++ b/meta-oe/recipes-support/gsoap/gsoap/0001-Provide-strtod_l-signature-on-non-glibc-linux-musl-s.patch
@@ -0,0 +1,85 @@
1From 2b7a51556185539a0f9baef0f109e0814933d6b3 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 19 May 2024 17:11:20 -0700
4Subject: [PATCH] Provide strtod_l signature on non-glibc linux ( musl )
5 systems
6
7Upstream-Status: Pending
8Signed-off-by: Khem Raj <raj.khem@gmail.com>
9---
10 gsoap/stdsoap2.c | 5 +++++
11 1 file changed, 5 insertions(+)
12
13--- a/gsoap/stdsoap2.cpp
14+++ b/gsoap/stdsoap2.cpp
15@@ -74,6 +74,11 @@ A commercial use license is available fr
16
17 #include "stdsoap2.h"
18
19+#if defined(__linux__) && !defined(__GLIBC__)
20+struct __locale_struct;
21+double strtod_l(const char *__restrict, char **__restrict, struct __locale_struct *);
22+#endif
23+
24 #if GSOAP_VERSION != GSOAP_LIB_VERSION
25 # error "GSOAP VERSION MISMATCH IN LIBRARY: PLEASE REINSTALL PACKAGE"
26 #endif
27@@ -5457,7 +5462,7 @@ tcp_gethostbyname(struct soap *soap, con
28 {
29 #if (defined(_AIX43) || defined(TRU64) || defined(HP_UX)) && defined(HAVE_GETHOSTBYNAME_R)
30 struct hostent_data ht_data;
31-#elif (!defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600 || defined(__ANDROID__) || defined(FREEBSD) || defined(__FreeBSD__)) && !defined(SUN_OS) && !defined(__QNX__) && !defined(QNX) && defined(HAVE_GETHOSTBYNAME_R)
32+#elif (!defined(__GLIBC__) || (!(~_GNU_SOURCE+1) && !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600 || defined(__ANDROID__) || defined(FREEBSD) || defined(__FreeBSD__)) && !defined(SUN_OS) && !defined(__QNX__) && !defined(QNX) && defined(HAVE_GETHOSTBYNAME_R)
33 int r;
34 char *tmpbuf = soap->tmpbuf;
35 size_t tmplen = sizeof(soap->tmpbuf);
36@@ -5490,7 +5495,7 @@ tcp_gethostbyname(struct soap *soap, con
37 hostent = NULL;
38 soap->errnum = h_errno;
39 }
40-#elif (!defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600 || defined(__ANDROID__) || defined(FREEBSD) || defined(__FreeBSD__)) && !defined(SUN_OS) && !defined(__QNX__) && !defined(QNX) && defined(HAVE_GETHOSTBYNAME_R)
41+#elif (!defined(__GLIBC__) || (!(~_GNU_SOURCE+1) && !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600 || defined(__ANDROID__) || defined(FREEBSD) || defined(__FreeBSD__)) && !defined(SUN_OS) && !defined(__QNX__) && !defined(QNX) && defined(HAVE_GETHOSTBYNAME_R)
42 while ((r = gethostbyname_r(addr, hostent, tmpbuf, tmplen, &hostent, &soap->errnum)) < 0)
43 {
44 if (tmpbuf != soap->tmpbuf)
45@@ -23192,7 +23197,7 @@ soap_strerror(struct soap *soap)
46 {
47 #ifndef WIN32
48 # ifdef HAVE_STRERROR_R
49-# if !defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && ((!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600)))
50+# if !defined(__GLIBC__) || (!(~_GNU_SOURCE+1) && ((!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600)))
51 err = strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* XSI-compliant */
52 if (err != 0)
53 soap_strcpy(soap->msgbuf, sizeof(soap->msgbuf), "unknown error");
54--- a/gsoap/stdsoap2.c
55+++ b/gsoap/stdsoap2.c
56@@ -74,6 +74,11 @@ A commercial use license is available fr
57
58 #include "stdsoap2.h"
59
60+#if defined(__linux__) && !defined(__GLIBC__)
61+struct __locale_struct;
62+double strtod_l(const char *__restrict, char **__restrict, struct __locale_struct *);
63+#endif
64+
65 #if GSOAP_VERSION != GSOAP_LIB_VERSION
66 # error "GSOAP VERSION MISMATCH IN LIBRARY: PLEASE REINSTALL PACKAGE"
67 #endif
68@@ -5490,7 +5495,7 @@ tcp_gethostbyname(struct soap *soap, con
69 hostent = NULL;
70 soap->errnum = h_errno;
71 }
72-#elif (!defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600 || defined(__ANDROID__) || defined(FREEBSD) || defined(__FreeBSD__)) && !defined(SUN_OS) && !defined(__QNX__) && !defined(QNX) && defined(HAVE_GETHOSTBYNAME_R)
73+#elif (!defined(__GLIBC__) || (!(~_GNU_SOURCE+1) && !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600 || defined(__ANDROID__) || defined(FREEBSD) || defined(__FreeBSD__)) && !defined(SUN_OS) && !defined(__QNX__) && !defined(QNX) && defined(HAVE_GETHOSTBYNAME_R)
74 while ((r = gethostbyname_r(addr, hostent, tmpbuf, tmplen, &hostent, &soap->errnum)) < 0)
75 {
76 if (tmpbuf != soap->tmpbuf)
77@@ -23192,7 +23197,7 @@ soap_strerror(struct soap *soap)
78 {
79 #ifndef WIN32
80 # ifdef HAVE_STRERROR_R
81-# if !defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && ((!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600)))
82+# if !defined(__GLIBC__) || (!(~_GNU_SOURCE+1) && ((!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600)))
83 err = strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* XSI-compliant */
84 if (err != 0)
85 soap_strcpy(soap->msgbuf, sizeof(soap->msgbuf), "unknown error");
diff --git a/meta-oe/recipes-support/gsoap/gsoap/0001-Simplify-check-for-gethostbyname_r.patch b/meta-oe/recipes-support/gsoap/gsoap/0001-Simplify-check-for-gethostbyname_r.patch
deleted file mode 100644
index 6ae02deb2..000000000
--- a/meta-oe/recipes-support/gsoap/gsoap/0001-Simplify-check-for-gethostbyname_r.patch
+++ /dev/null
@@ -1,96 +0,0 @@
1From fa923a50790c907725c822b2fc7d63b2da62b4ad Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 12 Mar 2023 13:34:55 -0700
4Subject: [PATCH] Simplify check for gethostbyname_r()
5
6This helps build fix with musl.
7
8Imported from Alpine: https://git.alpinelinux.org/aports/tree/community/gsoap/musl-fixes.patch
9
10Signed-off-by: Khem Raj <raj.khem@gmail.com>
11---
12Upstream-Status: Pending
13
14 gsoap/stdsoap2.c | 6 ++----
15 gsoap/stdsoap2.cpp | 10 ++--------
16 2 files changed, 4 insertions(+), 12 deletions(-)
17
18diff --git a/gsoap/stdsoap2.c b/gsoap/stdsoap2.c
19index 654a1e1..fa31d02 100644
20--- a/gsoap/stdsoap2.c
21+++ b/gsoap/stdsoap2.c
22@@ -5463,7 +5463,7 @@ tcp_gethostbyname(struct soap *soap, const char *addr, struct hostent *hostent,
23 hostent = NULL;
24 soap->errnum = h_errno;
25 }
26-#elif (!defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600 || defined(__ANDROID__) || defined(FREEBSD) || defined(__FreeBSD__)) && !defined(SUN_OS) && defined(HAVE_GETHOSTBYNAME_R)
27+#elif defined(HAVE_GETHOSTBYNAME_R)
28 while ((r = gethostbyname_r(addr, hostent, tmpbuf, tmplen, &hostent, &soap->errnum)) < 0)
29 {
30 if (tmpbuf != soap->tmpbuf)
31@@ -5478,8 +5478,6 @@ tcp_gethostbyname(struct soap *soap, const char *addr, struct hostent *hostent,
32 if (!tmpbuf)
33 break;
34 }
35-#elif defined(HAVE_GETHOSTBYNAME_R)
36- hostent = gethostbyname_r(addr, hostent, tmpbuf, tmplen, &soap->errnum);
37 #elif defined(VXWORKS)
38 /* vxWorks compatible */
39 /* If the DNS resolver library resolvLib has been configured in the vxWorks
40@@ -23112,7 +23110,7 @@ soap_strerror(struct soap *soap)
41 {
42 #ifndef WIN32
43 # ifdef HAVE_STRERROR_R
44-# if !defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && ((!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600)))
45+# if 1
46 err = strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* XSI-compliant */
47 if (err != 0)
48 soap_strcpy(soap->msgbuf, sizeof(soap->msgbuf), "unknown error");
49diff --git a/gsoap/stdsoap2.cpp b/gsoap/stdsoap2.cpp
50index 654a1e1..5fd5fd6 100644
51--- a/gsoap/stdsoap2.cpp
52+++ b/gsoap/stdsoap2.cpp
53@@ -5430,7 +5430,7 @@ tcp_gethostbyname(struct soap *soap, const char *addr, struct hostent *hostent,
54 {
55 #if (defined(_AIX43) || defined(TRU64) || defined(HP_UX)) && defined(HAVE_GETHOSTBYNAME_R)
56 struct hostent_data ht_data;
57-#elif (!defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600 || defined(__ANDROID__) || defined(FREEBSD) || defined(__FreeBSD__)) && defined(HAVE_GETHOSTBYNAME_R)
58+#elif defined(HAVE_GETHOSTBYNAME_R)
59 int r;
60 char *tmpbuf = soap->tmpbuf;
61 size_t tmplen = sizeof(soap->tmpbuf);
62@@ -5463,7 +5463,7 @@ tcp_gethostbyname(struct soap *soap, const char *addr, struct hostent *hostent,
63 hostent = NULL;
64 soap->errnum = h_errno;
65 }
66-#elif (!defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600 || defined(__ANDROID__) || defined(FREEBSD) || defined(__FreeBSD__)) && !defined(SUN_OS) && defined(HAVE_GETHOSTBYNAME_R)
67+#elif defined(HAVE_GETHOSTBYNAME_R)
68 while ((r = gethostbyname_r(addr, hostent, tmpbuf, tmplen, &hostent, &soap->errnum)) < 0)
69 {
70 if (tmpbuf != soap->tmpbuf)
71@@ -5478,8 +5478,6 @@ tcp_gethostbyname(struct soap *soap, const char *addr, struct hostent *hostent,
72 if (!tmpbuf)
73 break;
74 }
75-#elif defined(HAVE_GETHOSTBYNAME_R)
76- hostent = gethostbyname_r(addr, hostent, tmpbuf, tmplen, &soap->errnum);
77 #elif defined(VXWORKS)
78 /* vxWorks compatible */
79 /* If the DNS resolver library resolvLib has been configured in the vxWorks
80@@ -23112,13 +23110,9 @@ soap_strerror(struct soap *soap)
81 {
82 #ifndef WIN32
83 # ifdef HAVE_STRERROR_R
84-# if !defined(_GNU_SOURCE) || (!(~_GNU_SOURCE+1) && ((!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600)))
85 err = strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* XSI-compliant */
86 if (err != 0)
87 soap_strcpy(soap->msgbuf, sizeof(soap->msgbuf), "unknown error");
88-# else
89- return strerror_r(err, soap->msgbuf, sizeof(soap->msgbuf)); /* GNU-specific */
90-# endif
91 # else
92 return strerror(err);
93 # endif
94--
952.39.2
96
diff --git a/meta-oe/recipes-support/gsoap/gsoap_2.8.126.bb b/meta-oe/recipes-support/gsoap/gsoap_2.8.134.bb
index 6d8b53d30..5528e87e6 100644
--- a/meta-oe/recipes-support/gsoap/gsoap_2.8.126.bb
+++ b/meta-oe/recipes-support/gsoap/gsoap_2.8.134.bb
@@ -5,9 +5,9 @@ LICENSE = "GPL-2.0-with-OpenSSL-exception"
5LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=4f40a941379143186f9602242c3fb729 \ 5LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=4f40a941379143186f9602242c3fb729 \
6 file://GPLv2_license.txt;md5=a33672dbe491b6517750a0389063508b" 6 file://GPLv2_license.txt;md5=a33672dbe491b6517750a0389063508b"
7 7
8SRC_URI = "https://prdownloads.sourceforge.net/${BPN}2/${BPN}_${PV}.zip" 8SRC_URI = "https://prdownloads.sourceforge.net/${BPN}2/${BPN}_${PV}.zip \
9SRC_URI:append:libc-musl = " file://0001-Simplify-check-for-gethostbyname_r.patch" 9 file://0001-Provide-strtod_l-signature-on-non-glibc-linux-musl-s.patch"
10SRC_URI[sha256sum] = "b65190ebf8c2517d6fafbdc2000bc7bc650d921a02f4aa53eb1e3df267592c4a" 10SRC_URI[sha256sum] = "63478e555c0ccde0164f055ff605b02805db0abc6712a04bcb14cb617b047218"
11 11
12inherit autotools 12inherit autotools
13 13