From a2c67588d0f686e0007dadcaf0e4bbb35c0e1e83 Mon Sep 17 00:00:00 2001 From: Konstantin Makarchev Date: Sun, 10 Jun 2018 07:43:26 +0300 Subject: [PATCH] fix compilation with glibc 2.26, major/minor functions, fixed #2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit compilation error was: linux_sigar.c:1156:22: error: called object ‘major’ is not a function or function pointer linux_sigar.c:1157:22: error: called object ‘minor’ is not a function or function pointer --- bindings/ruby/extconf.rb | 3 +++ src/os/linux/linux_sigar.c | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/bindings/ruby/extconf.rb b/bindings/ruby/extconf.rb index cc11896a..b81156ba 100644 --- a/bindings/ruby/extconf.rb +++ b/bindings/ruby/extconf.rb @@ -49,6 +49,9 @@ when /mswin|mingw|cygwin|bccwin/ have_library("version") when /linux/ os = 'linux' + if have_header("sys/sysmacros.h") + $CPPFLAGS += ' -DLINUX_SYSMACROS' + end when /solaris|sun/ os = 'solaris' have_library("nsl") diff --git a/src/os/linux/linux_sigar.c b/src/os/linux/linux_sigar.c index 57aeab18..e3c72a85 100644 --- a/src/os/linux/linux_sigar.c +++ b/src/os/linux/linux_sigar.c @@ -30,6 +30,10 @@ #include "sigar_util.h" #include "sigar_os.h" +#ifdef LINUX_SYSMACROS // added by extconf.rb + #include +#endif + #define pageshift(x) ((x) << sigar->pagesize) #define PROC_MEMINFO PROC_FS_ROOT "meminfo"