diff options
author | Gordon Ross <gordon.w.ross@gmail.com> | 2016-10-30 20:01:45 -0400 |
---|---|---|
committer | Gordon Ross <gordon.w.ross@gmail.com> | 2016-11-23 00:27:10 -0500 |
commit | 652f7de48d84d3676be26d15e484640c5d6665c0 (patch) | |
tree | 7a494119b493a899a83696e4adcdada8541c69e2 | |
parent | e063b977e8a2c1a321bd414044c2cd3f222ec7ba (diff) | |
download | illumos-gfx-drm-652f7de48d84d3676be26d15e484640c5d6665c0.tar.gz |
Build drm-tests
53 files changed, 1439 insertions, 1 deletions
diff --git a/usr/src/cmd/Makefile b/usr/src/cmd/Makefile index a666c86..f47c54d 100644 --- a/usr/src/cmd/Makefile +++ b/usr/src/cmd/Makefile @@ -35,7 +35,8 @@ COMMON_SUBDIRS= \ devfsadm \ mdb -i386_SUBDIRS= +i386_SUBDIRS= \ + drm-tests sparc_SUBDIRS= diff --git a/usr/src/cmd/drm-tests/Makefile b/usr/src/cmd/drm-tests/Makefile new file mode 100644 index 0000000..e52a461 --- /dev/null +++ b/usr/src/cmd/drm-tests/Makefile @@ -0,0 +1,44 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +include ../Makefile.cmd + +# Note: misc[12] dirs are tests from the top level (no subdirs). +# The others correspond to dirs under common/libdrm/libdrm-*/tests +# +# Not currently supported: amdgpu nouveau + +SUBDIRS = misc1 misc2 util kms modeprint proptest modetest vbltest \ + kmstest radeon exynos tegra + +ROOTCMDDIR=$(ROOT)/opt/drm-tests + +all:= TARGET= all +install:= TARGET= install +clean:= TARGET= clean +clobber:= TARGET= clobber +lint:= TARGET= lint +catalog:= TARGET= catalog + +all clean clobber lint: $(SUBDIRS) +install: rootdirs .WAIT $(SUBDIRS) +rootdirs: $(ROOTCMDDIR) $(ROOTCMDDIR64) + +$(SUBDIRS): FRC + @cd $@; pwd; $(MAKE) $(TARGET) + +FRC: + +include ../Makefile.targ diff --git a/usr/src/cmd/drm-tests/Makefile.drm b/usr/src/cmd/drm-tests/Makefile.drm new file mode 100644 index 0000000..32329b0 --- /dev/null +++ b/usr/src/cmd/drm-tests/Makefile.drm @@ -0,0 +1,25 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +include $(SRC)/cmd/Makefile.cmd +include $(SRC)/common/libdrm/Makefile.drm + +CPPFLAGS += -I$(LIBDRM_CMN_DIR)/tests +CPPFLAGS += -I$(LIBDRM_CMN_DIR) + +ROOTCMDDIR=$(ROOT)/opt/drm-tests + +LIBUTIL32=$(SRC)/cmd/drm-tests/util/i386/libutil.a +LIBUTIL64=$(SRC)/cmd/drm-tests/util/amd64/libutil.a diff --git a/usr/src/cmd/drm-tests/exynos/Makefile b/usr/src/cmd/drm-tests/exynos/Makefile new file mode 100644 index 0000000..91acb2f --- /dev/null +++ b/usr/src/cmd/drm-tests/exynos/Makefile @@ -0,0 +1,36 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +include $(SRC)/Makefile.master + +SUBDIRS= $(MACH) +$(BUILD64)SUBDIRS += $(MACH64) + +all := TARGET = all +install := TARGET = install +clean := TARGET = clean +clobber := TARGET = clobber +lint := TARGET = lint + +all: $(SUBDIRS) + +clean clobber lint: $(SUBDIRS) + +install: $(SUBDIRS) + +$(SUBDIRS): FRC + @cd $@; pwd; $(MAKE) $(TARGET) + +FRC: diff --git a/usr/src/cmd/drm-tests/exynos/Makefile.com b/usr/src/cmd/drm-tests/exynos/Makefile.com new file mode 100644 index 0000000..17402b0 --- /dev/null +++ b/usr/src/cmd/drm-tests/exynos/Makefile.com @@ -0,0 +1,53 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +# from bin_PROGRAMS +PROG= \ + exynos_fimg2d_test \ + exynos_fimg2d_perf \ + exynos_fimg2d_event + +include ../../Makefile.drm + +SRCDIR= $(LIBDRM_CMN_DIR)/tests/exynos + +CPPFLAGS += -I$(SRCDIR) +CPPFLAGS += -I$(LIBDRM_CMN_DIR)/exynos +CPPFLAGS += -I$(LIBDRM_CMN_DIR)/libkms + +LDLIBS += -lkms -ldrm -ldrm_exynos -lm + +LDLIBS32 += -L$(ROOT)/usr/lib/xorg \ + -R/usr/lib/xorg +LDLIBS64 += -L$(ROOT)/usr/lib/xorg/$(MACH64) \ + -R/usr/lib/xorg/$(MACH64) + +all: $(PROG) + +#This is in the lower Makefile +#install: $(ROOTCMD) + +lint: + +clean: + $(RM) $(PROG:%=%.o) + +% : $(SRCDIR)/%.c + $(COMPILE.c) -o $@.o $< + $(LINK.c) -o $@ $@.o $(LDLIBS) + +.KEEP_STATE: + +include ../../../Makefile.targ diff --git a/usr/src/cmd/drm-tests/exynos/amd64/Makefile b/usr/src/cmd/drm-tests/exynos/amd64/Makefile new file mode 100644 index 0000000..b18f446 --- /dev/null +++ b/usr/src/cmd/drm-tests/exynos/amd64/Makefile @@ -0,0 +1,4 @@ +include ../Makefile.com +include $(SRC)/cmd/Makefile.cmd.64 + +install: all $(ROOTCMD64) diff --git a/usr/src/cmd/drm-tests/exynos/i386/Makefile b/usr/src/cmd/drm-tests/exynos/i386/Makefile new file mode 100644 index 0000000..197a49e --- /dev/null +++ b/usr/src/cmd/drm-tests/exynos/i386/Makefile @@ -0,0 +1,3 @@ +include ../Makefile.com + +install: all $(ROOTCMD) diff --git a/usr/src/cmd/drm-tests/kms/Makefile b/usr/src/cmd/drm-tests/kms/Makefile new file mode 100644 index 0000000..91acb2f --- /dev/null +++ b/usr/src/cmd/drm-tests/kms/Makefile @@ -0,0 +1,36 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +include $(SRC)/Makefile.master + +SUBDIRS= $(MACH) +$(BUILD64)SUBDIRS += $(MACH64) + +all := TARGET = all +install := TARGET = install +clean := TARGET = clean +clobber := TARGET = clobber +lint := TARGET = lint + +all: $(SUBDIRS) + +clean clobber lint: $(SUBDIRS) + +install: $(SUBDIRS) + +$(SUBDIRS): FRC + @cd $@; pwd; $(MAKE) $(TARGET) + +FRC: diff --git a/usr/src/cmd/drm-tests/kms/Makefile.com b/usr/src/cmd/drm-tests/kms/Makefile.com new file mode 100644 index 0000000..411d5b0 --- /dev/null +++ b/usr/src/cmd/drm-tests/kms/Makefile.com @@ -0,0 +1,65 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +# from bin_PROGRAMS +PROG= \ + kms-steal-crtc \ + kms-universal-planes + +# from libkms_test_la_SOURCES +TEST_OBJS= \ + libkms-test-crtc.o \ + libkms-test-device.o \ + libkms-test-framebuffer.o \ + libkms-test-plane.o \ + libkms-test-screen.o + +include ../../Makefile.drm + +SRCDIR= $(LIBDRM_CMN_DIR)/tests/kms + +LDLIBS += -ldrm -lm -lcairo + +LDLIBS32 += $(LIBUTIL32) \ + -L$(ROOT)/usr/lib/xorg \ + -R/usr/lib/xorg +LDLIBS64 += $(LIBUTIL64) \ + -L$(ROOT)/usr/lib/xorg/$(MACH64) \ + -R/usr/lib/xorg/$(MACH64) + +all: $(PROG) + +#This is in the lower Makefile +#install: $(ROOTCMD) + +lint: + +clean: + $(RM) $(PROG:%=%.o) $(TEST_OBJS) + +kms-steal-crtc: kms-steal-crtc.o $(TEST_OBJS) + $(LINK.c) -o $@ kms-steal-crtc.o \ + $(TEST_OBJS) $(LDLIBS) + +kms-universal-planes: kms-universal-planes.o $(TEST_OBJS) + $(LINK.c) -o $@ kms-universal-planes.o \ + $(TEST_OBJS) $(LDLIBS) + +%.o : $(SRCDIR)/%.c + $(COMPILE.c) -o $@ -c $< + +.KEEP_STATE: + +include ../../../Makefile.targ diff --git a/usr/src/cmd/drm-tests/kms/amd64/Makefile b/usr/src/cmd/drm-tests/kms/amd64/Makefile new file mode 100644 index 0000000..b18f446 --- /dev/null +++ b/usr/src/cmd/drm-tests/kms/amd64/Makefile @@ -0,0 +1,4 @@ +include ../Makefile.com +include $(SRC)/cmd/Makefile.cmd.64 + +install: all $(ROOTCMD64) diff --git a/usr/src/cmd/drm-tests/kms/i386/Makefile b/usr/src/cmd/drm-tests/kms/i386/Makefile new file mode 100644 index 0000000..197a49e --- /dev/null +++ b/usr/src/cmd/drm-tests/kms/i386/Makefile @@ -0,0 +1,3 @@ +include ../Makefile.com + +install: all $(ROOTCMD) diff --git a/usr/src/cmd/drm-tests/kmstest/Makefile b/usr/src/cmd/drm-tests/kmstest/Makefile new file mode 100644 index 0000000..91acb2f --- /dev/null +++ b/usr/src/cmd/drm-tests/kmstest/Makefile @@ -0,0 +1,36 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +include $(SRC)/Makefile.master + +SUBDIRS= $(MACH) +$(BUILD64)SUBDIRS += $(MACH64) + +all := TARGET = all +install := TARGET = install +clean := TARGET = clean +clobber := TARGET = clobber +lint := TARGET = lint + +all: $(SUBDIRS) + +clean clobber lint: $(SUBDIRS) + +install: $(SUBDIRS) + +$(SUBDIRS): FRC + @cd $@; pwd; $(MAKE) $(TARGET) + +FRC: diff --git a/usr/src/cmd/drm-tests/kmstest/Makefile.com b/usr/src/cmd/drm-tests/kmstest/Makefile.com new file mode 100644 index 0000000..b42b149 --- /dev/null +++ b/usr/src/cmd/drm-tests/kmstest/Makefile.com @@ -0,0 +1,54 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +PROG= \ + kmstest + +TEST_OBJS= main.o + +include ../../Makefile.drm + +SRCDIR= $(LIBDRM_CMN_DIR)/tests/$(PROG) + +CPPFLAGS += -I$(LIBDRM_CMN_DIR)/libkms + +LDLIBS += -lkms -ldrm -lm + +LDLIBS32 += $(LIBUTIL32) \ + -L$(ROOT)/usr/lib/xorg \ + -R/usr/lib/xorg +LDLIBS64 += $(LIBUTIL64) \ + -L$(ROOT)/usr/lib/xorg/$(MACH64) \ + -R/usr/lib/xorg/$(MACH64) + +all: $(PROG) + +#This is in the lower Makefile +#install: $(ROOTCMD) + +lint: + +clean: + $(RM) $(PROG:%=%.o) $(TEST_OBJS) + +$(PROG) : $(TEST_OBJS) + $(LINK.c) -o $@ $(TEST_OBJS) $(LDLIBS) + +%.o : $(SRCDIR)/%.c + $(COMPILE.c) -o $@ -c $< + +.KEEP_STATE: + +include ../../../Makefile.targ diff --git a/usr/src/cmd/drm-tests/kmstest/amd64/Makefile b/usr/src/cmd/drm-tests/kmstest/amd64/Makefile new file mode 100644 index 0000000..b18f446 --- /dev/null +++ b/usr/src/cmd/drm-tests/kmstest/amd64/Makefile @@ -0,0 +1,4 @@ +include ../Makefile.com +include $(SRC)/cmd/Makefile.cmd.64 + +install: all $(ROOTCMD64) diff --git a/usr/src/cmd/drm-tests/kmstest/i386/Makefile b/usr/src/cmd/drm-tests/kmstest/i386/Makefile new file mode 100644 index 0000000..197a49e --- /dev/null +++ b/usr/src/cmd/drm-tests/kmstest/i386/Makefile @@ -0,0 +1,3 @@ +include ../Makefile.com + +install: all $(ROOTCMD) diff --git a/usr/src/cmd/drm-tests/misc1/Makefile b/usr/src/cmd/drm-tests/misc1/Makefile new file mode 100644 index 0000000..91acb2f --- /dev/null +++ b/usr/src/cmd/drm-tests/misc1/Makefile @@ -0,0 +1,36 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +include $(SRC)/Makefile.master + +SUBDIRS= $(MACH) +$(BUILD64)SUBDIRS += $(MACH64) + +all := TARGET = all +install := TARGET = install +clean := TARGET = clean +clobber := TARGET = clobber +lint := TARGET = lint + +all: $(SUBDIRS) + +clean clobber lint: $(SUBDIRS) + +install: $(SUBDIRS) + +$(SUBDIRS): FRC + @cd $@; pwd; $(MAKE) $(TARGET) + +FRC: diff --git a/usr/src/cmd/drm-tests/misc1/Makefile.com b/usr/src/cmd/drm-tests/misc1/Makefile.com new file mode 100644 index 0000000..3c1ec06 --- /dev/null +++ b/usr/src/cmd/drm-tests/misc1/Makefile.com @@ -0,0 +1,51 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +PROG= \ + dristat \ + drmdevice \ + drmstat \ + drmsl \ + hash \ + random + +include ../../Makefile.drm + +SRCDIR= $(LIBDRM_CMN_DIR)/tests + +LDLIBS += -ldrm -lm + +LDLIBS32 += -L$(ROOT)/usr/lib/xorg \ + -R/usr/lib/xorg +LDLIBS64 += -L$(ROOT)/usr/lib/xorg/$(MACH64) \ + -R/usr/lib/xorg/$(MACH64) + +all: $(PROG) + +#This is in the lower Makefile +#install: $(ROOTCMD) + +lint: + +clean: + $(RM) $(PROG:%=%.o) + +% : $(SRCDIR)/%.c + $(COMPILE.c) -o $@.o $< + $(LINK.c) -o $@ $@.o $(LDLIBS) + +.KEEP_STATE: + +include ../../../Makefile.targ diff --git a/usr/src/cmd/drm-tests/misc1/amd64/Makefile b/usr/src/cmd/drm-tests/misc1/amd64/Makefile new file mode 100644 index 0000000..b18f446 --- /dev/null +++ b/usr/src/cmd/drm-tests/misc1/amd64/Makefile @@ -0,0 +1,4 @@ +include ../Makefile.com +include $(SRC)/cmd/Makefile.cmd.64 + +install: all $(ROOTCMD64) diff --git a/usr/src/cmd/drm-tests/misc1/i386/Makefile b/usr/src/cmd/drm-tests/misc1/i386/Makefile new file mode 100644 index 0000000..197a49e --- /dev/null +++ b/usr/src/cmd/drm-tests/misc1/i386/Makefile @@ -0,0 +1,3 @@ +include ../Makefile.com + +install: all $(ROOTCMD) diff --git a/usr/src/cmd/drm-tests/misc2/Makefile b/usr/src/cmd/drm-tests/misc2/Makefile new file mode 100644 index 0000000..91acb2f --- /dev/null +++ b/usr/src/cmd/drm-tests/misc2/Makefile @@ -0,0 +1,36 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +include $(SRC)/Makefile.master + +SUBDIRS= $(MACH) +$(BUILD64)SUBDIRS += $(MACH64) + +all := TARGET = all +install := TARGET = install +clean := TARGET = clean +clobber := TARGET = clobber +lint := TARGET = lint + +all: $(SUBDIRS) + +clean clobber lint: $(SUBDIRS) + +install: $(SUBDIRS) + +$(SUBDIRS): FRC + @cd $@; pwd; $(MAKE) $(TARGET) + +FRC: diff --git a/usr/src/cmd/drm-tests/misc2/Makefile.com b/usr/src/cmd/drm-tests/misc2/Makefile.com new file mode 100644 index 0000000..dd2862b --- /dev/null +++ b/usr/src/cmd/drm-tests/misc2/Makefile.com @@ -0,0 +1,58 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +PROG= \ + openclose \ + getversion \ + getclient \ + getstats \ + setversion \ + updatedraw \ + name_from_fd + +# All programs here require this devinfo object. +DEVOBJ=drmtest_sun.o + +include ../../Makefile.drm + +SRCDIR= $(LIBDRM_CMN_DIR)/tests + +LDLIBS += -ldrm -lm -ldevinfo + +LDLIBS32 += -L$(ROOT)/usr/lib/xorg \ + -R/usr/lib/xorg +LDLIBS64 += -L$(ROOT)/usr/lib/xorg/$(MACH64) \ + -R/usr/lib/xorg/$(MACH64) + +all: $(PROG) + +#This is in the lower Makefile +#install: $(ROOTCMD) + +lint: + +clean: + $(RM) $(PROG:%=%.o) $(DEVOBJ) + +% : $(SRCDIR)/%.c $(DEVOBJ) + $(COMPILE.c) -o $@.o $< + $(LINK.c) -o $@ $@.o $(DEVOBJ) $(LDLIBS) + +%.o : ../common/%.c + $(COMPILE.c) -o $@ -c $< + +.KEEP_STATE: + +include ../../../Makefile.targ diff --git a/usr/src/cmd/drm-tests/misc2/amd64/Makefile b/usr/src/cmd/drm-tests/misc2/amd64/Makefile new file mode 100644 index 0000000..2f29a7f --- /dev/null +++ b/usr/src/cmd/drm-tests/misc2/amd64/Makefile @@ -0,0 +1,6 @@ +include ../Makefile.com +include $(SRC)/cmd/Makefile.cmd.64 + +LDLIBS += $(LDLIBS64) + +install: all $(ROOTCMD64) diff --git a/usr/src/cmd/drm-tests/misc2/common/drmtest_sun.c b/usr/src/cmd/drm-tests/misc2/common/drmtest_sun.c new file mode 100644 index 0000000..6328803 --- /dev/null +++ b/usr/src/cmd/drm-tests/misc2/common/drmtest_sun.c @@ -0,0 +1,142 @@ +/* + * Copyright © 2007 Intel Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the next + * paragraph) shall be included in all copies or substantial portions of the + * Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + * + * Authors: + * Eric Anholt <eric@anholt.net> + * + */ + +#include <string.h> +#include <fcntl.h> +#include <fnmatch.h> +#include <sys/stat.h> +#include <sys/ioctl.h> +#include "drmtest.h" + +#include <libdevinfo.h> + +static int is_master(int fd) +{ + drm_client_t client; + int ret; + + /* Check that we're the only opener and authed. */ + client.idx = 0; + ret = ioctl(fd, DRM_IOCTL_GET_CLIENT, &client); + assert (ret == 0); + if (!client.auth) + return 0; + client.idx = 1; + ret = ioctl(fd, DRM_IOCTL_GET_CLIENT, &client); + if (ret != -1 || errno != EINVAL) + return 0; + + return 1; +} + +/** Open the first DRM device matching the criteria */ +int drm_open_matching(const char *pci_glob, int flags) +{ + di_node_t udev; +// struct udev_enumerate *e; +// struct udev_device *device, *parent; +// struct udev_list_entry *entry; + const char *pci_id, *path; + const char *usub, *dnode; + uint_t di_flags; + int fd; + + /* Get everything? */ + di_flags = DINFOSUBTREE | DINFOPROP | DINFOMINOR | DINFOPATH | DINFOLYR; + udev = di_init("/", di_flags); + if (udev == DI_NODE_NIL) { + fprintf(stderr, "failed to initialize devinfo context\n"); + exit (1); + } + + fd = -1; +#if 0 // Todo + e = udev_enumerate_new(udev); + udev_enumerate_add_match_subsystem(e, "drm"); + udev_enumerate_scan_devices(e); + udev_list_entry_foreach(entry, udev_enumerate_get_list_entry(e)) { + path = udev_list_entry_get_name(entry); + device = udev_device_new_from_syspath(udev, path); + parent = udev_device_get_parent(device); + usub = udev_device_get_subsystem(parent); + /* Filter out KMS output devices. */ + if (!usub || (strcmp(usub, "pci") != 0)) + continue; + pci_id = udev_device_get_property_value(parent, "PCI_ID"); + if (fnmatch(pci_glob, pci_id, 0) != 0) + continue; + dnode = udev_device_get_devnode(device); + if (strstr(dnode, "control")) + continue; + fd = open(dnode, O_RDWR); + if (fd < 0) + continue; + if ((flags & DRM_TEST_MASTER) && !is_master(fd)) { + close(fd); + fd = -1; + continue; + } + + break; + } + udev_enumerate_unref(e); +#else + exit (1); +#endif + + di_fini(udev); + + return fd; +} + +int drm_open_any(void) +{ + int fd = drm_open_matching("*:*", 0); + + if (fd < 0) { + fprintf(stderr, "failed to open any drm device\n"); + exit(0); + } + + return fd; +} + +/** + * Open the first DRM device we can find where we end up being the master. + */ +int drm_open_any_master(void) +{ + int fd = drm_open_matching("*:*", DRM_TEST_MASTER); + + if (fd < 0) { + fprintf(stderr, "failed to open any drm device\n"); + exit(0); + } + + return fd; + +} diff --git a/usr/src/cmd/drm-tests/misc2/i386/Makefile b/usr/src/cmd/drm-tests/misc2/i386/Makefile new file mode 100644 index 0000000..e72ca97 --- /dev/null +++ b/usr/src/cmd/drm-tests/misc2/i386/Makefile @@ -0,0 +1,5 @@ +include ../Makefile.com + +LDLIBS += $(LDLIBS32) + +install: all $(ROOTCMD) diff --git a/usr/src/cmd/drm-tests/modeprint/Makefile b/usr/src/cmd/drm-tests/modeprint/Makefile new file mode 100644 index 0000000..91acb2f --- /dev/null +++ b/usr/src/cmd/drm-tests/modeprint/Makefile @@ -0,0 +1,36 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +include $(SRC)/Makefile.master + +SUBDIRS= $(MACH) +$(BUILD64)SUBDIRS += $(MACH64) + +all := TARGET = all +install := TARGET = install +clean := TARGET = clean +clobber := TARGET = clobber +lint := TARGET = lint + +all: $(SUBDIRS) + +clean clobber lint: $(SUBDIRS) + +install: $(SUBDIRS) + +$(SUBDIRS): FRC + @cd $@; pwd; $(MAKE) $(TARGET) + +FRC: diff --git a/usr/src/cmd/drm-tests/modeprint/Makefile.com b/usr/src/cmd/drm-tests/modeprint/Makefile.com new file mode 100644 index 0000000..8617e63 --- /dev/null +++ b/usr/src/cmd/drm-tests/modeprint/Makefile.com @@ -0,0 +1,46 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +PROG= \ + modeprint + +include ../../Makefile.drm + +SRCDIR= $(LIBDRM_CMN_DIR)/tests/modeprint + +LDLIBS += -ldrm -lm + +LDLIBS32 += -L$(ROOT)/usr/lib/xorg \ + -R/usr/lib/xorg +LDLIBS64 += -L$(ROOT)/usr/lib/xorg/$(MACH64) \ + -R/usr/lib/xorg/$(MACH64) + +all: $(PROG) + +#This is in the lower Makefile +#install: $(ROOTCMD) + +lint: + +clean: + $(RM) $(PROG:%=%.o) + +% : $(SRCDIR)/%.c + $(COMPILE.c) -o $@.o $< + $(LINK.c) -o $@ $@.o $(LDLIBS) + +.KEEP_STATE: + +include ../../../Makefile.targ diff --git a/usr/src/cmd/drm-tests/modeprint/amd64/Makefile b/usr/src/cmd/drm-tests/modeprint/amd64/Makefile new file mode 100644 index 0000000..b18f446 --- /dev/null +++ b/usr/src/cmd/drm-tests/modeprint/amd64/Makefile @@ -0,0 +1,4 @@ +include ../Makefile.com +include $(SRC)/cmd/Makefile.cmd.64 + +install: all $(ROOTCMD64) diff --git a/usr/src/cmd/drm-tests/modeprint/i386/Makefile b/usr/src/cmd/drm-tests/modeprint/i386/Makefile new file mode 100644 index 0000000..197a49e --- /dev/null +++ b/usr/src/cmd/drm-tests/modeprint/i386/Makefile @@ -0,0 +1,3 @@ +include ../Makefile.com + +install: all $(ROOTCMD) diff --git a/usr/src/cmd/drm-tests/modetest/Makefile b/usr/src/cmd/drm-tests/modetest/Makefile new file mode 100644 index 0000000..91acb2f --- /dev/null +++ b/usr/src/cmd/drm-tests/modetest/Makefile @@ -0,0 +1,36 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +include $(SRC)/Makefile.master + +SUBDIRS= $(MACH) +$(BUILD64)SUBDIRS += $(MACH64) + +all := TARGET = all +install := TARGET = install +clean := TARGET = clean +clobber := TARGET = clobber +lint := TARGET = lint + +all: $(SUBDIRS) + +clean clobber lint: $(SUBDIRS) + +install: $(SUBDIRS) + +$(SUBDIRS): FRC + @cd $@; pwd; $(MAKE) $(TARGET) + +FRC: diff --git a/usr/src/cmd/drm-tests/modetest/Makefile.com b/usr/src/cmd/drm-tests/modetest/Makefile.com new file mode 100644 index 0000000..e0689b2 --- /dev/null +++ b/usr/src/cmd/drm-tests/modetest/Makefile.com @@ -0,0 +1,56 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +PROG= \ + modetest + +# from Makefile.in MODETEST_FILES +TEST_OBJS= \ + modetest.o \ + buffers.o \ + cursor.o + +include ../../Makefile.drm + +SRCDIR= $(LIBDRM_CMN_DIR)/tests/$(PROG) + +LDLIBS += -ldrm -lm -lcairo + +LDLIBS32 += $(LIBUTIL32) \ + -L$(ROOT)/usr/lib/xorg \ + -R/usr/lib/xorg +LDLIBS64 += $(LIBUTIL64) \ + -L$(ROOT)/usr/lib/xorg/$(MACH64) \ + -R/usr/lib/xorg/$(MACH64) + +all: $(PROG) + +#This is in the lower Makefile +#install: $(ROOTCMD) + +lint: + +clean: + $(RM) $(PROG:%=%.o) $(TEST_OBJS) + +$(PROG) : $(TEST_OBJS) + $(LINK.c) -o $@ $(TEST_OBJS) $(LDLIBS) + +%.o : $(SRCDIR)/%.c + $(COMPILE.c) -o $@ -c $< + +.KEEP_STATE: + +include ../../../Makefile.targ diff --git a/usr/src/cmd/drm-tests/modetest/amd64/Makefile b/usr/src/cmd/drm-tests/modetest/amd64/Makefile new file mode 100644 index 0000000..b18f446 --- /dev/null +++ b/usr/src/cmd/drm-tests/modetest/amd64/Makefile @@ -0,0 +1,4 @@ +include ../Makefile.com +include $(SRC)/cmd/Makefile.cmd.64 + +install: all $(ROOTCMD64) diff --git a/usr/src/cmd/drm-tests/modetest/i386/Makefile b/usr/src/cmd/drm-tests/modetest/i386/Makefile new file mode 100644 index 0000000..197a49e --- /dev/null +++ b/usr/src/cmd/drm-tests/modetest/i386/Makefile @@ -0,0 +1,3 @@ +include ../Makefile.com + +install: all $(ROOTCMD) diff --git a/usr/src/cmd/drm-tests/proptest/Makefile b/usr/src/cmd/drm-tests/proptest/Makefile new file mode 100644 index 0000000..91acb2f --- /dev/null +++ b/usr/src/cmd/drm-tests/proptest/Makefile @@ -0,0 +1,36 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +include $(SRC)/Makefile.master + +SUBDIRS= $(MACH) +$(BUILD64)SUBDIRS += $(MACH64) + +all := TARGET = all +install := TARGET = install +clean := TARGET = clean +clobber := TARGET = clobber +lint := TARGET = lint + +all: $(SUBDIRS) + +clean clobber lint: $(SUBDIRS) + +install: $(SUBDIRS) + +$(SUBDIRS): FRC + @cd $@; pwd; $(MAKE) $(TARGET) + +FRC: diff --git a/usr/src/cmd/drm-tests/proptest/Makefile.com b/usr/src/cmd/drm-tests/proptest/Makefile.com new file mode 100644 index 0000000..0415985 --- /dev/null +++ b/usr/src/cmd/drm-tests/proptest/Makefile.com @@ -0,0 +1,48 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +PROG= \ + proptest + +include ../../Makefile.drm + +SRCDIR= $(LIBDRM_CMN_DIR)/tests/proptest + +LDLIBS += -ldrm -lm + +LDLIBS32 += $(LIBUTIL32) \ + -L$(ROOT)/usr/lib/xorg \ + -R/usr/lib/xorg +LDLIBS64 += $(LIBUTIL64) \ + -L$(ROOT)/usr/lib/xorg/$(MACH64) \ + -R/usr/lib/xorg/$(MACH64) + +all: $(PROG) + +#This is in the lower Makefile +#install: $(ROOTCMD) + +lint: + +clean: + $(RM) $(PROG:%=%.o) + +% : $(SRCDIR)/%.c + $(COMPILE.c) -o $@.o $< + $(LINK.c) -o $@ $@.o $(LDLIBS) + +.KEEP_STATE: + +include ../../../Makefile.targ diff --git a/usr/src/cmd/drm-tests/proptest/amd64/Makefile b/usr/src/cmd/drm-tests/proptest/amd64/Makefile new file mode 100644 index 0000000..b18f446 --- /dev/null +++ b/usr/src/cmd/drm-tests/proptest/amd64/Makefile @@ -0,0 +1,4 @@ +include ../Makefile.com +include $(SRC)/cmd/Makefile.cmd.64 + +install: all $(ROOTCMD64) diff --git a/usr/src/cmd/drm-tests/proptest/i386/Makefile b/usr/src/cmd/drm-tests/proptest/i386/Makefile new file mode 100644 index 0000000..197a49e --- /dev/null +++ b/usr/src/cmd/drm-tests/proptest/i386/Makefile @@ -0,0 +1,3 @@ +include ../Makefile.com + +install: all $(ROOTCMD) diff --git a/usr/src/cmd/drm-tests/radeon/Makefile b/usr/src/cmd/drm-tests/radeon/Makefile new file mode 100644 index 0000000..91acb2f --- /dev/null +++ b/usr/src/cmd/drm-tests/radeon/Makefile @@ -0,0 +1,36 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +include $(SRC)/Makefile.master + +SUBDIRS= $(MACH) +$(BUILD64)SUBDIRS += $(MACH64) + +all := TARGET = all +install := TARGET = install +clean := TARGET = clean +clobber := TARGET = clobber +lint := TARGET = lint + +all: $(SUBDIRS) + +clean clobber lint: $(SUBDIRS) + +install: $(SUBDIRS) + +$(SUBDIRS): FRC + @cd $@; pwd; $(MAKE) $(TARGET) + +FRC: diff --git a/usr/src/cmd/drm-tests/radeon/Makefile.com b/usr/src/cmd/drm-tests/radeon/Makefile.com new file mode 100644 index 0000000..c9ea1c5 --- /dev/null +++ b/usr/src/cmd/drm-tests/radeon/Makefile.com @@ -0,0 +1,53 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +PROG= \ + radeon_ttm + +# from libkms_test_la_SOURCES +TEST_OBJS= \ + radeon_ttm.o \ + rbo.o + +include ../../Makefile.drm + +SRCDIR= $(LIBDRM_CMN_DIR)/tests/radeon + +LDLIBS += -ldrm -lm + +LDLIBS32 += -L$(ROOT)/usr/lib/xorg \ + -R/usr/lib/xorg +LDLIBS64 += -L$(ROOT)/usr/lib/xorg/$(MACH64) \ + -R/usr/lib/xorg/$(MACH64) + +all: $(PROG) + +#This is in the lower Makefile +#install: $(ROOTCMD) + +lint: + +clean: + $(RM) $(PROG:%=%.o) $(TEST_OBJS) + +radeon_ttm: $(TEST_OBJS) + $(LINK.c) -o $@ $(TEST_OBJS) $(LDLIBS) + +%.o : $(SRCDIR)/%.c + $(COMPILE.c) -o $@ -c $< + +.KEEP_STATE: + +include ../../../Makefile.targ diff --git a/usr/src/cmd/drm-tests/radeon/amd64/Makefile b/usr/src/cmd/drm-tests/radeon/amd64/Makefile new file mode 100644 index 0000000..b18f446 --- /dev/null +++ b/usr/src/cmd/drm-tests/radeon/amd64/Makefile @@ -0,0 +1,4 @@ +include ../Makefile.com +include $(SRC)/cmd/Makefile.cmd.64 + +install: all $(ROOTCMD64) diff --git a/usr/src/cmd/drm-tests/radeon/i386/Makefile b/usr/src/cmd/drm-tests/radeon/i386/Makefile new file mode 100644 index 0000000..197a49e --- /dev/null +++ b/usr/src/cmd/drm-tests/radeon/i386/Makefile @@ -0,0 +1,3 @@ +include ../Makefile.com + +install: all $(ROOTCMD) diff --git a/usr/src/cmd/drm-tests/tegra/Makefile b/usr/src/cmd/drm-tests/tegra/Makefile new file mode 100644 index 0000000..91acb2f --- /dev/null +++ b/usr/src/cmd/drm-tests/tegra/Makefile @@ -0,0 +1,36 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +include $(SRC)/Makefile.master + +SUBDIRS= $(MACH) +$(BUILD64)SUBDIRS += $(MACH64) + +all := TARGET = all +install := TARGET = install +clean := TARGET = clean +clobber := TARGET = clobber +lint := TARGET = lint + +all: $(SUBDIRS) + +clean clobber lint: $(SUBDIRS) + +install: $(SUBDIRS) + +$(SUBDIRS): FRC + @cd $@; pwd; $(MAKE) $(TARGET) + +FRC: diff --git a/usr/src/cmd/drm-tests/tegra/Makefile.com b/usr/src/cmd/drm-tests/tegra/Makefile.com new file mode 100644 index 0000000..596c718 --- /dev/null +++ b/usr/src/cmd/drm-tests/tegra/Makefile.com @@ -0,0 +1,54 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +PROG= \ + tegra_openclose + +TEST_OBJS= \ + openclose.o + +include ../../Makefile.drm + +SRCDIR= $(LIBDRM_CMN_DIR)/tests/tegra + +CPPFLAGS += -I$(SRCDIR) +CPPFLAGS += -I$(LIBDRM_CMN_DIR)/tegra + +LDLIBS += -ldrm -ldrm_tegra -lm + +LDLIBS32 += -L$(ROOT)/usr/lib/xorg \ + -R/usr/lib/xorg +LDLIBS64 += -L$(ROOT)/usr/lib/xorg/$(MACH64) \ + -R/usr/lib/xorg/$(MACH64) + +all: $(PROG) + +#This is in the lower Makefile +#install: $(ROOTCMD) + +lint: + +clean: + $(RM) $(PROG:%=%.o) $(TEST_OBJS) + +$(PROG): $(TEST_OBJS) + $(LINK.c) -o $@ $(TEST_OBJS) $(LDLIBS) + +%.o : $(SRCDIR)/%.c + $(COMPILE.c) -o $@ -c $< + +.KEEP_STATE: + +include ../../../Makefile.targ diff --git a/usr/src/cmd/drm-tests/tegra/amd64/Makefile b/usr/src/cmd/drm-tests/tegra/amd64/Makefile new file mode 100644 index 0000000..b18f446 --- /dev/null +++ b/usr/src/cmd/drm-tests/tegra/amd64/Makefile @@ -0,0 +1,4 @@ +include ../Makefile.com +include $(SRC)/cmd/Makefile.cmd.64 + +install: all $(ROOTCMD64) diff --git a/usr/src/cmd/drm-tests/tegra/i386/Makefile b/usr/src/cmd/drm-tests/tegra/i386/Makefile new file mode 100644 index 0000000..197a49e --- /dev/null +++ b/usr/src/cmd/drm-tests/tegra/i386/Makefile @@ -0,0 +1,3 @@ +include ../Makefile.com + +install: all $(ROOTCMD) diff --git a/usr/src/cmd/drm-tests/util/Makefile b/usr/src/cmd/drm-tests/util/Makefile new file mode 100644 index 0000000..91acb2f --- /dev/null +++ b/usr/src/cmd/drm-tests/util/Makefile @@ -0,0 +1,36 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +include $(SRC)/Makefile.master + +SUBDIRS= $(MACH) +$(BUILD64)SUBDIRS += $(MACH64) + +all := TARGET = all +install := TARGET = install +clean := TARGET = clean +clobber := TARGET = clobber +lint := TARGET = lint + +all: $(SUBDIRS) + +clean clobber lint: $(SUBDIRS) + +install: $(SUBDIRS) + +$(SUBDIRS): FRC + @cd $@; pwd; $(MAKE) $(TARGET) + +FRC: diff --git a/usr/src/cmd/drm-tests/util/Makefile.com b/usr/src/cmd/drm-tests/util/Makefile.com new file mode 100644 index 0000000..3f7f3ed --- /dev/null +++ b/usr/src/cmd/drm-tests/util/Makefile.com @@ -0,0 +1,46 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +LIBRARY= libutil.a + +OBJECTS= format.o kms.o pattern.o + +UTIL_FILES = \ + common.h \ + format.c \ + format.h \ + kms.c \ + kms.h \ + pattern.c \ + pattern.h + +include $(SRC)/lib/Makefile.lib +include $(SRC)/common/libdrm/Makefile.drm + +LIBS = $(LIBRARY) + +SRCDIR = $(LIBDRM_CMN_DIR)/tests/util +SRCS = $(OBJECTS:%.o=$(SRCDIR)/%.c) + +CPPFLAGS += -DHAVE_CAIRO +CPPFLAGS += -I/usr/include/cairo +all : $(LIBS) $(PCS) + +lint : + +include $(SRC)/lib/Makefile.targ + +.KEEP_STATE: + diff --git a/usr/src/cmd/drm-tests/util/amd64/Makefile b/usr/src/cmd/drm-tests/util/amd64/Makefile new file mode 100644 index 0000000..e7a150d --- /dev/null +++ b/usr/src/cmd/drm-tests/util/amd64/Makefile @@ -0,0 +1,4 @@ +include ../Makefile.com +include $(SRC)/lib/Makefile.lib.64 + +install: all diff --git a/usr/src/cmd/drm-tests/util/i386/Makefile b/usr/src/cmd/drm-tests/util/i386/Makefile new file mode 100644 index 0000000..3a994a7 --- /dev/null +++ b/usr/src/cmd/drm-tests/util/i386/Makefile @@ -0,0 +1,3 @@ +include ../Makefile.com + +install: all diff --git a/usr/src/cmd/drm-tests/vbltest/Makefile b/usr/src/cmd/drm-tests/vbltest/Makefile new file mode 100644 index 0000000..91acb2f --- /dev/null +++ b/usr/src/cmd/drm-tests/vbltest/Makefile @@ -0,0 +1,36 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +include $(SRC)/Makefile.master + +SUBDIRS= $(MACH) +$(BUILD64)SUBDIRS += $(MACH64) + +all := TARGET = all +install := TARGET = install +clean := TARGET = clean +clobber := TARGET = clobber +lint := TARGET = lint + +all: $(SUBDIRS) + +clean clobber lint: $(SUBDIRS) + +install: $(SUBDIRS) + +$(SUBDIRS): FRC + @cd $@; pwd; $(MAKE) $(TARGET) + +FRC: diff --git a/usr/src/cmd/drm-tests/vbltest/Makefile.com b/usr/src/cmd/drm-tests/vbltest/Makefile.com new file mode 100644 index 0000000..25be616 --- /dev/null +++ b/usr/src/cmd/drm-tests/vbltest/Makefile.com @@ -0,0 +1,48 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +PROG= \ + vbltest + +include ../../Makefile.drm + +SRCDIR= $(LIBDRM_CMN_DIR)/tests/$(PROG) + +LDLIBS += -ldrm -lm + +LDLIBS32 += $(LIBUTIL32) \ + -L$(ROOT)/usr/lib/xorg \ + -R/usr/lib/xorg +LDLIBS64 += $(LIBUTIL64) \ + -L$(ROOT)/usr/lib/xorg/$(MACH64) \ + -R/usr/lib/xorg/$(MACH64) + +all: $(PROG) + +#This is in the lower Makefile +#install: $(ROOTCMD) + +lint: + +clean: + $(RM) $(PROG:%=%.o) + +% : $(SRCDIR)/%.c + $(COMPILE.c) -o $@.o $< + $(LINK.c) -o $@ $@.o $(LDLIBS) + +.KEEP_STATE: + +include ../../../Makefile.targ diff --git a/usr/src/cmd/drm-tests/vbltest/amd64/Makefile b/usr/src/cmd/drm-tests/vbltest/amd64/Makefile new file mode 100644 index 0000000..b18f446 --- /dev/null +++ b/usr/src/cmd/drm-tests/vbltest/amd64/Makefile @@ -0,0 +1,4 @@ +include ../Makefile.com +include $(SRC)/cmd/Makefile.cmd.64 + +install: all $(ROOTCMD64) diff --git a/usr/src/cmd/drm-tests/vbltest/i386/Makefile b/usr/src/cmd/drm-tests/vbltest/i386/Makefile new file mode 100644 index 0000000..197a49e --- /dev/null +++ b/usr/src/cmd/drm-tests/vbltest/i386/Makefile @@ -0,0 +1,3 @@ +include ../Makefile.com + +install: all $(ROOTCMD) diff --git a/usr/src/pkg/manifests/system-test-libdrm.mf b/usr/src/pkg/manifests/system-test-libdrm.mf new file mode 100644 index 0000000..4c3558f --- /dev/null +++ b/usr/src/pkg/manifests/system-test-libdrm.mf @@ -0,0 +1,74 @@ +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# + +# +# Copyright 2016 Gordon W. Ross +# + +set name=pkg.fmri value=pkg:/system/test/libdrm@$(PKGVERS) +set name=pkg.description value="DRM Library Unit Tests" +set name=pkg.summary value="DRM Library Unit Test Suite" +set name=info.classification \ + value=org.opensolaris.category.2008:Development/System +set name=variant.arch value=$(ARCH) +dir path=opt/drm-tests +dir path=opt/drm-tests/$(ARCH64) +file path=opt/drm-tests/$(ARCH64)/dristat +file path=opt/drm-tests/$(ARCH64)/drmdevice +file path=opt/drm-tests/$(ARCH64)/drmsl +file path=opt/drm-tests/$(ARCH64)/drmstat +file path=opt/drm-tests/$(ARCH64)/exynos_fimg2d_event +file path=opt/drm-tests/$(ARCH64)/exynos_fimg2d_perf +file path=opt/drm-tests/$(ARCH64)/exynos_fimg2d_test +file path=opt/drm-tests/$(ARCH64)/getclient +file path=opt/drm-tests/$(ARCH64)/getstats +file path=opt/drm-tests/$(ARCH64)/getversion +file path=opt/drm-tests/$(ARCH64)/hash +file path=opt/drm-tests/$(ARCH64)/kms-steal-crtc +file path=opt/drm-tests/$(ARCH64)/kms-universal-planes +file path=opt/drm-tests/$(ARCH64)/kmstest +file path=opt/drm-tests/$(ARCH64)/modeprint +file path=opt/drm-tests/$(ARCH64)/modetest +file path=opt/drm-tests/$(ARCH64)/name_from_fd +file path=opt/drm-tests/$(ARCH64)/openclose +file path=opt/drm-tests/$(ARCH64)/proptest +file path=opt/drm-tests/$(ARCH64)/radeon_ttm +file path=opt/drm-tests/$(ARCH64)/random +file path=opt/drm-tests/$(ARCH64)/setversion +file path=opt/drm-tests/$(ARCH64)/tegra_openclose +file path=opt/drm-tests/$(ARCH64)/updatedraw +file path=opt/drm-tests/$(ARCH64)/vbltest +file path=opt/drm-tests/dristat +file path=opt/drm-tests/drmdevice +file path=opt/drm-tests/drmsl +file path=opt/drm-tests/drmstat +file path=opt/drm-tests/exynos_fimg2d_event +file path=opt/drm-tests/exynos_fimg2d_perf +file path=opt/drm-tests/exynos_fimg2d_test +file path=opt/drm-tests/getclient +file path=opt/drm-tests/getstats +file path=opt/drm-tests/getversion +file path=opt/drm-tests/hash +file path=opt/drm-tests/kms-steal-crtc +file path=opt/drm-tests/kms-universal-planes +file path=opt/drm-tests/kmstest +file path=opt/drm-tests/modeprint +file path=opt/drm-tests/modetest +file path=opt/drm-tests/name_from_fd +file path=opt/drm-tests/openclose +file path=opt/drm-tests/proptest +file path=opt/drm-tests/radeon_ttm +file path=opt/drm-tests/random +file path=opt/drm-tests/setversion +file path=opt/drm-tests/tegra_openclose +file path=opt/drm-tests/updatedraw +file path=opt/drm-tests/vbltest +depend fmri=pkg:/x11/library/libdrm type=require |