From 54e5d2533c21dd84818d3a275ba80850f81650c3 Mon Sep 17 00:00:00 2001 From: Tim Newsome Date: Thu, 5 Mar 2020 12:13:33 -0800 Subject: [PATCH] helper: skip including sys/sysctl.h on Linux (#450) Starting from glibc 2.30, the header file sys/sysctl.h gets deprecated on Linux, after the commit 744e82963716 ("Linux: Deprecate and sysctl") https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=744e82963716 The associated NEWS reports The Linux-specific header and the sysctl function have been deprecated and will be removed from a future version of glibc. Latest automake 1.16.1 still does not handle this case. Current OpenOCD build fails with warning and requires configure with "--disable-werror" to build. Prevent including sys/sysctl.h on Linux build. Change-Id: I5310976573352a96e5aef123352f73475f0c35fe Signed-off-by: Antonio Borneo Reviewed-on: http://openocd.zylin.com/5317 Tested-by: jenkins Reviewed-by: Moritz Fischer Reviewed-by: Paul Fertser Co-authored-by: Antonio Borneo --- src/helper/options.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/helper/options.c b/src/helper/options.c index b60d58de8..6622ece6c 100644 --- a/src/helper/options.c +++ b/src/helper/options.c @@ -34,9 +34,12 @@ #if IS_DARWIN #include #endif +/* sys/sysctl.h is deprecated on Linux from glibc 2.30 */ +#ifndef __linux__ #ifdef HAVE_SYS_SYSCTL_H #include #endif +#endif #if IS_WIN32 && !IS_CYGWIN #include #endif