diff options
Diffstat (limited to 'meta-oe/recipes-support/gsoap/gsoap/0001-Provide-strtod_l-signature-on-non-glibc-linux-musl-s.patch')
-rw-r--r-- | meta-oe/recipes-support/gsoap/gsoap/0001-Provide-strtod_l-signature-on-non-glibc-linux-musl-s.patch | 85 |
1 files changed, 85 insertions, 0 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 0000000000..df27a59ee7 --- /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 @@ | |||
1 | From 2b7a51556185539a0f9baef0f109e0814933d6b3 Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Sun, 19 May 2024 17:11:20 -0700 | ||
4 | Subject: [PATCH] Provide strtod_l signature on non-glibc linux ( musl ) | ||
5 | systems | ||
6 | |||
7 | Upstream-Status: Pending | ||
8 | Signed-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"); | ||