[PATCH libdrm] tests/dristat: don't include C files

Emil Velikov emil.l.velikov at gmail.com
Wed Sep 9 08:17:45 PDT 2015


Remove the hack of including xf86drm.c (and friends), by reworking the
only requirement drmOpenMinor() to an open(buf...).

After all we do know the exact name of the device we're going to open,
so might as well use it. Replace hard-coded 16 with DRM_MAX_MINOR while
we're here.

Note that this does drop the explicit creation of the device node
(create == 1). Modern users should not need this as they either 1) use
udev which manages the device node(s) or 2) you're in BSD land where
you either have udev equivalent, or explicitly manage things yourself.

This also removes the -lm link, which is no longer needed.

Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
---
 tests/Makefile.am |  2 --
 tests/dristat.c   | 11 ++++++-----
 2 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/tests/Makefile.am b/tests/Makefile.am
index a511d28..9a2d932 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -33,8 +33,6 @@ check_PROGRAMS = \
 	dristat \
 	drmstat
 
-dristat_LDADD = -lm
-
 if HAVE_NOUVEAU
 SUBDIRS += nouveau
 endif
diff --git a/tests/dristat.c b/tests/dristat.c
index cca4b03..cc23e16 100644
--- a/tests/dristat.c
+++ b/tests/dristat.c
@@ -31,13 +31,14 @@
 # include <config.h>
 #endif
 
+#include <ctype.h>
+#include <fcntl.h>
 #include <stdio.h>
 #include <stdlib.h>
+#include <string.h>
+#include <sys/stat.h>
 #include <unistd.h>
 #include "xf86drm.h"
-#include "xf86drmRandom.c"
-#include "xf86drmHash.c"
-#include "xf86drm.c"
 
 #define DRM_VERSION 0x00000001
 #define DRM_MEMORY  0x00000002
@@ -267,9 +268,9 @@ int main(int argc, char **argv)
 	    return 1;
 	}
 
-    for (i = 0; i < 16; i++) if (!minor || i == minor) {
+    for (i = 0; i < DRM_MAX_MINOR; i++) if (!minor || i == minor) {
 	sprintf(buf, DRM_DEV_NAME, DRM_DIR_NAME, i);
-	fd = drmOpenMinor(i, 1, DRM_NODE_PRIMARY);
+	fd = open(buf, O_RDWR, 0);
 	if (fd >= 0) {
 	    printf("%s\n", buf);
 	    if (mask & DRM_BUSID)   getbusid(fd);
-- 
2.5.0



More information about the dri-devel mailing list