diff mbox

[i-g-t] pull in headers for major/minor/makedev funcs

Message ID 1466593695-30694-1-git-send-email-vapier@gentoo.org (mailing list archive)
State New, archived
Headers show

Commit Message

Mike Frysinger June 22, 2016, 11:08 a.m. UTC
Use the portable autoconf helper to figure out which header to include
for these funcs.  Linux C libs are moving to not implicitly include them
via sys/types.h anymore, and other OS's have long required you to pull
in the right header directly.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96618
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
---
 configure.ac    | 1 +
 lib/igt_sysfs.c | 9 +++++++++
 tools/aubdump.c | 8 +++++++-
 3 files changed, 17 insertions(+), 1 deletion(-)
diff mbox

Patch

diff --git a/configure.ac b/configure.ac
index 0405c8b3375b..2e2c3ab7a7b0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -57,6 +57,7 @@  AM_CONDITIONAL(HAVE_RST2MAN, [test "x$RST2MAN" = xyes])
 
 # Checks for functions, headers, structures, etc.
 AC_HEADER_STDC
+AC_HEADER_MAJOR
 AC_CHECK_HEADERS([termios.h linux/kd.h sys/kd.h libgen.h sys/io.h])
 AC_CHECK_MEMBERS([struct sysinfo.totalram],[],[],[AC_INCLUDES_DEFAULT
 		  #include <sys/sysinfo.h>
diff --git a/lib/igt_sysfs.c b/lib/igt_sysfs.c
index 61b94c6478f2..7553eeb7e636 100644
--- a/lib/igt_sysfs.c
+++ b/lib/igt_sysfs.c
@@ -22,9 +22,12 @@ 
  *
  */
 
+#include "config.h"
+
 #include <inttypes.h>
 #include <sys/stat.h>
 #include <sys/mount.h>
+#include <sys/types.h>
 #include <errno.h>
 #include <stdio.h>
 #include <stdlib.h>
@@ -32,6 +35,12 @@ 
 #include <string.h>
 #include <fcntl.h>
 #include <unistd.h>
+#ifdef MAJOR_IN_MKDEV
+#include <sys/mkdev.h>
+#endif
+#ifdef MAJOR_IN_SYSMACROS
+#include <sys/sysmacros.h>
+#endif
 #include <i915_drm.h>
 
 #include "igt_sysfs.h"
diff --git a/tools/aubdump.c b/tools/aubdump.c
index e7f63e7bb85b..f7ae1ccdb662 100644
--- a/tools/aubdump.c
+++ b/tools/aubdump.c
@@ -21,7 +21,7 @@ 
  * IN THE SOFTWARE.
  */
 
-#define _GNU_SOURCE /* for RTLD_NEXT */
+#include "config.h"
 
 #include <stdlib.h>
 #include <stdio.h>
@@ -38,6 +38,12 @@ 
 #include <errno.h>
 #include <sys/mman.h>
 #include <dlfcn.h>
+#ifdef MAJOR_IN_MKDEV
+#include <sys/mkdev.h>
+#endif
+#ifdef MAJOR_IN_SYSMACROS
+#include <sys/sysmacros.h>
+#endif
 #include <i915_drm.h>
 
 #include "intel_aub.h"