@@ -33,8 +33,6 @@ check_PROGRAMS = \
dristat \
drmstat
-dristat_LDADD = -lm
-
if HAVE_NOUVEAU
SUBDIRS += nouveau
endif
@@ -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);
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@gmail.com> --- tests/Makefile.am | 2 -- tests/dristat.c | 11 ++++++----- 2 files changed, 6 insertions(+), 7 deletions(-)