gpm: fix major() build failure due to glibc 2.28

glibc 2.28 no longer includes <sys/sysmacros.h> from <sys/types.h>,
and therefore <sys/sysmacros.h> must be included explicitly when major()
is used.

This commit adds a patch to directly include <sys/sysmacros.h> into
open_console.c file where major() macro is used.

Patch has been taken from gpm upstream commit:
b350aee4ea

Fixes:
http://autobuild.buildroot.net/results/f53/f5373a567de619375746f1dcfe312971b85bb810/
http://autobuild.buildroot.net/results/227/227a7edf9304d85645d3e7fa0f930fe2e9b6e752/

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018.11.x
Giulio Benetti 2018-09-15 15:23:59 +02:00 committed by Thomas Petazzoni
parent e5a74ca129
commit a7253fc1c3
1 changed files with 32 additions and 0 deletions

View File

@ -0,0 +1,32 @@
From b350aee4ea5785a75cb6ad770f6b768c506ebb70 Mon Sep 17 00:00:00 2001
From: Mike Frysinger <vapier@gentoo.org>
Date: Mon, 14 Mar 2016 15:39:54 -0400
Subject: [PATCH] fix building w/newer glibc
Linux C libraries are looking to disentangle sysmacros.h from the
sys/types.h include, so make sure we pull in the header when it is
found.
Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
src/daemon/open_console.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/daemon/open_console.c b/src/daemon/open_console.c
index 4d6c0af..6dd43e6 100644
--- a/src/daemon/open_console.c
+++ b/src/daemon/open_console.c
@@ -24,6 +24,10 @@
#include <sys/types.h> /* major() */
#include <sys/ioctl.h> /* ioctl */
+#ifdef HAVE_SYS_SYSMACROS_H
+#include <sys/sysmacros.h> /* major() w/newer glibc */
+#endif
+
/* Linux specific (to be outsourced in gpm2 */
#include <linux/serial.h> /* for serial console check */
#include <asm/ioctls.h> /* for serial console check */
--
2.17.1