[packages/libupnp] upstream fix for build failure with glibc 2.34; rel 2
atler
atler at pld-linux.org
Mon Oct 4 19:34:08 CEST 2021
commit ffe2af3a2e40cf4af005ebc849183a829c48b19f
Author: Jan Palus <atler at pld-linux.org>
Date: Mon Oct 4 19:33:21 2021 +0200
upstream fix for build failure with glibc 2.34; rel 2
ithread.patch | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
libupnp.spec | 4 +++-
2 files changed, 71 insertions(+), 1 deletion(-)
---
diff --git a/libupnp.spec b/libupnp.spec
index 9867993..47dd0b7 100644
--- a/libupnp.spec
+++ b/libupnp.spec
@@ -2,13 +2,14 @@ Summary: The Universal Plug and Play (UPnP) SDK for Linux
Summary(pl.UTF-8): Pakiet programistyczny Universal Plug and Play (UPnP) dla Linuksa
Name: libupnp
Version: 1.14.6
-Release: 1
+Release: 2
License: BSD
Group: Libraries
Source0: https://downloads.sourceforge.net/pupnp/%{name}-%{version}.tar.bz2
# Source0-md5: 05c2393eee4fbf81c9e1b116b9554039
Patch0: %{name}-opt.patch
Patch1: %{name}-openssl.patch
+Patch2: ithread.patch
URL: http://pupnp.sourceforge.net/
BuildRequires: autoconf >= 2.60
BuildRequires: automake >= 1:1.8
@@ -76,6 +77,7 @@ Dokumentacja API bibliotek upnp.
%setup -q
%patch0 -p1
%patch1 -p1
+%patch2 -p1
# LFS is required in library clients (including examples)
%{__sed} -i -e '/^Cflags/ s/$/ -D_FILE_OFFSET_BITS=64/' libupnp.pc.in
diff --git a/ithread.patch b/ithread.patch
new file mode 100644
index 0000000..04d6ac6
--- /dev/null
+++ b/ithread.patch
@@ -0,0 +1,68 @@
+From c0b552973c5db6dbe4dd0bdc47496da3d7af9606 Mon Sep 17 00:00:00 2001
+From: Marcelo Roberto Jimenez <marcelo.jimenez at gmail.com>
+Date: Sun, 1 Aug 2021 20:44:13 -0300
+Subject: [PATCH] ithread: Remove references to
+ pthread_mutexattr_{g,s}etkind_np
+
+---
+ upnp/inc/ithread.h | 33 ++++++++++++++-------------------
+ 1 file changed, 14 insertions(+), 19 deletions(-)
+
+diff --git a/upnp/inc/ithread.h b/upnp/inc/ithread.h
+index f6800ea9..2087466b 100644
+--- a/upnp/inc/ithread.h
++++ b/upnp/inc/ithread.h
+@@ -304,11 +304,8 @@ static UPNP_INLINE int ithread_cleanup_thread(void)
+ * Returns EINVAL if the kind is not supported.
+ * See man page for pthread_mutexattr_setkind_np
+ *****************************************************************************/
+-#if defined(PTHREAD_MUTEX_RECURSIVE) || defined(__DragonFly__)
+- #define ithread_mutexattr_setkind_np pthread_mutexattr_settype
+-#else
+- #define ithread_mutexattr_setkind_np pthread_mutexattr_setkind_np
+-#endif /* UPNP_USE_RWLOCK */
++#define ithread_mutexattr_setkind_np pthread_mutexattr_settype
++#define ithread_mutexattr_settype pthread_mutexattr_settype
+
+ /****************************************************************************
+ * Function: ithread_mutexattr_getkind_np
+@@ -329,11 +326,8 @@ static UPNP_INLINE int ithread_cleanup_thread(void)
+ * Always returns 0.
+ * See man page for pthread_mutexattr_getkind_np
+ *****************************************************************************/
+-#if defined(PTHREAD_MUTEX_RECURSIVE) || defined(__DragonFly__)
+- #define ithread_mutexattr_getkind_np pthread_mutexattr_gettype
+-#else
+- #define ithread_mutexattr_getkind_np pthread_mutexattr_getkind_np
+-#endif /* UPNP_USE_RWLOCK */
++#define ithread_mutexattr_getkind_np pthread_mutexattr_gettype
++#define ithread_mutexattr_gettype pthread_mutexattr_gettype
+
+ /****************************************************************************
+ * Function: ithread_mutex_init
+@@ -898,15 +892,16 @@ static UPNP_INLINE int ithread_cleanup_thread(void)
+ #ifdef _WIN32
+ #define imillisleep Sleep
+ #else
+-#if _POSIX_C_SOURCE < 200809L
+- #define imillisleep(x) usleep(1000 * x)
+-#else
+- #define imillisleep(x) \
+- do { \
+- const struct timespec req = {0, x * 1000 * 1000}; \
+- nanosleep(&req, NULL); \
+- } while(0)
+-#endif
++ #if _POSIX_C_SOURCE < 200809L
++ #define imillisleep(x) usleep(1000 * x)
++ #else
++ #define imillisleep(x) \
++ do { \
++ const struct timespec req = { \
++ 0, x * 1000 * 1000}; \
++ nanosleep(&req, NULL); \
++ } while (0)
++ #endif
+ #endif
+
+ #if !defined(PTHREAD_MUTEX_RECURSIVE) && !defined(__DragonFly__) && \
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/libupnp.git/commitdiff/ffe2af3a2e40cf4af005ebc849183a829c48b19f
More information about the pld-cvs-commit
mailing list