From c414ecd9b9151b05542ead65da1e7bf20ee21861 Mon Sep 17 00:00:00 2001 From: Baruch Siach Date: Thu, 16 Feb 2017 19:07:19 +0200 Subject: [PATCH] Fix build with musl libc MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Suppress inclusion of linux/sysinfo.h to fix redefinition of struct sysinfo that musl libc defines in sys/sysinfo.h, which least to the following build failure (paths abbreviated): In file included from .../usr/include/linux/kernel.h:4:0, from .../usr/include/linux/ethtool.h:16, from psutil/_psutil_linux.c:35: .../usr/include/linux/sysinfo.h:7:8: error: redefinition of ‘struct sysinfo’ struct sysinfo { ^ In file included from psutil/_psutil_linux.c:21:0: .../usr/include/sys/sysinfo.h:10:8: note: originally defined here struct sysinfo { ^ Fixes #872 --- psutil/_psutil_linux.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/psutil/_psutil_linux.c b/psutil/_psutil_linux.c index 4923ead6a..0296dd544 100644 --- a/psutil/_psutil_linux.c +++ b/psutil/_psutil_linux.c @@ -32,6 +32,8 @@ typedef __u16 u16; typedef __u8 u8; #endif +/* Avoid redefinition of struct sysinfo with musl libc */ +#define _LINUX_SYSINFO_H #include /* The minimum number of CPUs allocated in a cpu_set_t */