guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

06/28: gnu: network-manager: Fix build with glibc 2.30.


From: guix-commits
Subject: 06/28: gnu: network-manager: Fix build with glibc 2.30.
Date: Wed, 8 Jan 2020 15:58:45 -0500 (EST)

mbakke pushed a commit to branch core-updates
in repository guix.

commit 12818a0656817e95a80aace01089042c0b0e7e22
Author: Marius Bakke <address@hidden>
AuthorDate: Fri Dec 6 18:21:48 2019 +0100

    gnu: network-manager: Fix build with glibc 2.30.
    
    * gnu/packages/patches/network-manager-gettid.patch: New file.
    * gnu/local.mk (dist_patch_DATA): Adjust accordingly.
    * gnu/packages/gnome.scm (network-manager)[source](patches): Add it.
---
 gnu/local.mk                                      |  1 +
 gnu/packages/gnome.scm                            |  3 ++-
 gnu/packages/patches/network-manager-gettid.patch | 20 ++++++++++++++++++++
 3 files changed, 23 insertions(+), 1 deletion(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index 234d283..2b17423 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1197,6 +1197,7 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/netsurf-system-utf8proc.patch           \
   %D%/packages/patches/netsurf-y2038-tests.patch               \
   %D%/packages/patches/netsurf-longer-test-timeout.patch       \
+  %D%/packages/patches/network-manager-gettid.patch            \
   %D%/packages/patches/nfs-utils-missing-headers.patch         \
   %D%/packages/patches/ngircd-handle-zombies.patch             \
   %D%/packages/patches/nm-plugin-path.patch                    \
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 37873e4..464f2ad 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -5822,7 +5822,8 @@ users.")
               (uri (string-append "mirror://gnome/sources/NetworkManager/"
                                   (version-major+minor version) "/"
                                   "NetworkManager-" version ".tar.xz"))
-              (patches (search-patches "nm-plugin-path.patch"))
+              (patches (search-patches "nm-plugin-path.patch"
+                                       "network-manager-gettid.patch"))
               (sha256
                (base32
                 "0pnh1wr2p1fqa5pr945fr3lngfc5ccfrmgddqsg55lxnjpv0ggd3"))
diff --git a/gnu/packages/patches/network-manager-gettid.patch 
b/gnu/packages/patches/network-manager-gettid.patch
new file mode 100644
index 0000000..d50b5f8
--- /dev/null
+++ b/gnu/packages/patches/network-manager-gettid.patch
@@ -0,0 +1,20 @@
+glibc 2.30 added gettid() which conflicts with the implementation in
+NetworkManager.  Remove for 1.17.1 and later versions.
+
+Adapted from upstream:
+https://gitlab.freedesktop.org/NetworkManager/NetworkManager/commit/10276322bde8f015e48ac06f6a7509f514eb46f0
+
+--- a/src/systemd/sd-adapt/nm-sd-adapt.h
++++ b/src/systemd/sd-adapt/nm-sd-adapt.h
+@@ -181,9 +181,10 @@
+ #endif
+ }
+ 
+-static inline pid_t gettid(void) {
++static inline pid_t _nm_gettid(void) {
+         return (pid_t) syscall(SYS_gettid);
+ }
++#define gettid() _nm_gettid ()
+ 
+ /* we build with C11 and thus <uchar.h> provides char32_t,char16_t. */
+ #define HAVE_CHAR32_T 1



reply via email to

[Prev in Thread] Current Thread [Next in Thread]