vl: move winsys helper out of winsys directory
authorChristian König <deathsimple@vodafone.de>
Mon, 26 Mar 2012 17:40:42 +0000 (19:40 +0200)
committerChristian König <deathsimple@vodafone.de>
Wed, 28 Mar 2012 13:47:41 +0000 (15:47 +0200)
They aren't winsys of their own,
just help dealing with them.

v2: add some more comments in vl_winsys.h

Signed-off-by: Christian König <deathsimple@vodafone.de>
30 files changed:
configure.ac
src/gallium/auxiliary/vl/vl_winsys.h [moved from src/gallium/winsys/g3dvl/vl_winsys.h with 90% similarity]
src/gallium/auxiliary/vl/vl_winsys_dri.c [moved from src/gallium/winsys/g3dvl/dri/dri_winsys.c with 96% similarity]
src/gallium/auxiliary/vl/vl_winsys_xsp.c [moved from src/gallium/winsys/g3dvl/xlib/xsp_winsys.c with 98% similarity]
src/gallium/state_trackers/va/Makefile
src/gallium/state_trackers/va/va_context.c
src/gallium/state_trackers/vdpau/Makefile
src/gallium/state_trackers/vdpau/device.c
src/gallium/state_trackers/vdpau/query.c
src/gallium/state_trackers/vdpau/vdpau_private.h
src/gallium/state_trackers/xvmc/Makefile
src/gallium/state_trackers/xvmc/context.c
src/gallium/state_trackers/xvmc/subpicture.c
src/gallium/state_trackers/xvmc/surface.c
src/gallium/targets/Makefile.va
src/gallium/targets/Makefile.vdpau
src/gallium/targets/Makefile.xvmc
src/gallium/targets/va-r300/Makefile
src/gallium/targets/va-r600/Makefile
src/gallium/targets/va-softpipe/Makefile
src/gallium/targets/vdpau-nouveau/Makefile
src/gallium/targets/vdpau-r300/Makefile
src/gallium/targets/vdpau-r600/Makefile
src/gallium/targets/vdpau-softpipe/Makefile
src/gallium/targets/xvmc-nouveau/Makefile
src/gallium/targets/xvmc-r300/Makefile
src/gallium/targets/xvmc-r600/Makefile
src/gallium/targets/xvmc-softpipe/Makefile
src/gallium/winsys/g3dvl/Makefile [deleted file]
src/gallium/winsys/g3dvl/dri/Makefile [deleted file]

index ac7d49f..1c437e7 100644 (file)
@@ -1844,15 +1844,12 @@ gallium_check_st() {
     fi
     if test "x$HAVE_ST_XVMC" = xyes && test "x$5" != x; then
          GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $5"
-         NEED_G3DVL_DRI="yes"
     fi
     if test "x$HAVE_ST_VDPAU" = xyes && test "x$6" != x; then
          GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $6"
-         NEED_G3DVL_DRI="yes"
     fi
     if test "x$HAVE_ST_VA" = xyes && test "x$7" != x; then
          GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS $7"
-         NEED_G3DVL_DRI="yes"
     fi
 }
 
@@ -1932,10 +1929,6 @@ if test "x$with_gallium_drivers" != x; then
     done
 fi
 
-if test "x$NEED_G3DVL_DRI" = xyes; then
-    GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS g3dvl/dri"
-fi
-
 dnl Tell Automake which drivers to build
 for driver in $GALLIUM_DRIVERS_DIRS; do
     case "x$driver" in
similarity index 90%
rename from src/gallium/winsys/g3dvl/vl_winsys.h
rename to src/gallium/auxiliary/vl/vl_winsys.h
index 174f780..5f60d3e 100644 (file)
  *
  **************************************************************************/
 
+/*
+ * vl targets use either a dri or sw based winsys backend, so their
+ * Makefiles directly refer to either vl_winsys_dri.c or vl_winsys_xsp.c.
+ * Both files implement the interface described in this header.
+ */
+
 #ifndef vl_winsys_h
 #define vl_winsys_h
 
similarity index 96%
rename from src/gallium/winsys/g3dvl/dri/dri_winsys.c
rename to src/gallium/auxiliary/vl/vl_winsys_dri.c
index afaabaa..8e4e026 100644 (file)
@@ -25,6 +25,8 @@
  *
  **************************************************************************/
 
+/* directly referenced from target Makefile, because of X dependencies */
+
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <fcntl.h>
@@ -44,7 +46,7 @@
 #include "util/u_inlines.h"
 
 #include "vl/vl_compositor.h"
-#include "vl_winsys.h"
+#include "vl/vl_winsys.h"
 
 struct vl_dri_screen
 {
@@ -305,7 +307,7 @@ vl_screen_create(Display *display, int screen)
    xcb_screen_iterator_t s;
    xcb_generic_error_t *error = NULL;
    char *device_name;
-   int fd;
+   int fd, device_name_length;
 
    drm_magic_t magic;
 
@@ -336,8 +338,10 @@ vl_screen_create(Display *display, int screen)
    if (connect == NULL || connect->driver_name_length + connect->device_name_length == 0)
       goto free_screen;
 
-   device_name = xcb_dri2_connect_device_name(connect);
-   device_name = strndup(device_name, xcb_dri2_connect_device_name_length(connect));
+   device_name_length = xcb_dri2_connect_device_name_length(connect);
+   device_name = CALLOC(1, device_name_length);
+   memcpy(device_name, xcb_dri2_connect_device_name(connect), device_name_length);
+   device_name[device_name_length] = 0;
    fd = open(device_name, O_RDWR);
    free(device_name);
 
similarity index 98%
rename from src/gallium/winsys/g3dvl/xlib/xsp_winsys.c
rename to src/gallium/auxiliary/vl/vl_winsys_xsp.c
index 1d5d1ea..ce3a37f 100644 (file)
@@ -25,6 +25,8 @@
  *
  **************************************************************************/
 
+/* directly referenced from target Makefile, because of X dependencies */
+
 #include <sys/time.h>
 
 #include "pipe/p_state.h"
@@ -37,7 +39,7 @@
 #include "softpipe/sp_public.h"
 
 #include "vl/vl_compositor.h"
-#include "vl_winsys.h"
+#include "vl/vl_winsys.h"
 
 struct vl_xsp_screen
 {
index 775e4db..007d16f 100644 (file)
@@ -7,9 +7,7 @@ VA_MAJOR = 0
 VA_MINOR = 3
 LIBRARY_DEFINES = -DVER_MAJOR=$(VA_MAJOR) -DVER_MINOR=$(VA_MINOR) $(STATE_TRACKER_DEFINES)
 
-LIBRARY_INCLUDES = \
-       $(shell $(PKG_CONFIG) --cflags-only-I libva) \
-       -I$(TOP)/src/gallium/winsys/g3dvl
+LIBRARY_INCLUDES = $(shell $(PKG_CONFIG) --cflags-only-I libva)
 
 C_SOURCES = htab.c \
            ftab.c \
index ea0782f..218677f 100644 (file)
@@ -34,8 +34,7 @@
 
 #include "util/u_debug.h"
 #include "util/u_memory.h"
-
-#include "vl_winsys.h"
+#include "vl/vl_winsys.h"
 
 #include "va_private.h"
 
index 0aeadc0..e9cfc4c 100644 (file)
@@ -7,9 +7,7 @@ VDPAU_MAJOR = 1
 VDPAU_MINOR = 0
 LIBRARY_DEFINES = -DVER_MAJOR=$(VDPAU_MAJOR) -DVER_MINOR=$(VDPAU_MINOR) $(STATE_TRACKER_DEFINES)
 
-LIBRARY_INCLUDES = \
-       $(shell $(PKG_CONFIG) --cflags-only-I vdpau) \
-       -I$(TOP)/src/gallium/winsys/g3dvl
+LIBRARY_INCLUDES = $(shell $(PKG_CONFIG) --cflags-only-I vdpau)
 
 C_SOURCES = htab.c \
            ftab.c \
index 2e38f6c..dd586f5 100644 (file)
@@ -31,8 +31,6 @@
 #include "util/u_debug.h"
 #include "util/u_sampler.h"
 
-#include "vl_winsys.h"
-
 #include "vdpau_private.h"
 
 /**
index 2b13ce1..2281dcf 100644 (file)
@@ -29,7 +29,6 @@
 #include <math.h>
 
 #include "vdpau_private.h"
-#include "vl_winsys.h"
 #include "pipe/p_screen.h"
 #include "pipe/p_defines.h"
 #include "util/u_debug.h"
index a54fcdc..918a6c2 100644 (file)
@@ -44,8 +44,7 @@
 #include "vl/vl_csc.h"
 #include "vl/vl_matrix_filter.h"
 #include "vl/vl_median_filter.h"
-
-#include "vl_winsys.h"
+#include "vl/vl_winsys.h"
 
 /* Full VDPAU API documentation available at :
  * ftp://download.nvidia.com/XFree86/vdpau/doxygen/html/index.html */
index 179446f..c54bd7a 100644 (file)
@@ -3,9 +3,7 @@ include $(TOP)/configs/current
 
 LIBNAME = xvmctracker
 
-LIBRARY_INCLUDES = \
-       $(shell $(PKG_CONFIG) --cflags-only-I xvmc) \
-       -I$(TOP)/src/gallium/winsys/g3dvl
+LIBRARY_INCLUDES = $(shell $(PKG_CONFIG) --cflags-only-I xvmc)
 
 C_SOURCES = block.c \
             surface.c \
index 7b97a67..366f29b 100644 (file)
@@ -38,7 +38,7 @@
 #include "util/u_memory.h"
 
 #include "vl/vl_csc.h"
-#include "vl_winsys.h"
+#include "vl/vl_winsys.h"
 
 #include "xvmc_private.h"
 
index 058c568..b33f16e 100644 (file)
@@ -39,8 +39,7 @@
 #include "util/u_format.h"
 #include "util/u_sampler.h"
 #include "util/u_rect.h"
-
-#include "vl_winsys.h"
+#include "vl/vl_winsys.h"
 
 #include "xvmc_private.h"
 
index 615fd08..bec23a4 100644 (file)
@@ -37,8 +37,7 @@
 #include "util/u_inlines.h"
 #include "util/u_memory.h"
 #include "util/u_math.h"
-
-#include "vl_winsys.h"
+#include "vl/vl_winsys.h"
 
 #include "xvmc_private.h"
 
index 7215fc3..884b59d 100644 (file)
@@ -8,7 +8,6 @@ INCLUDES = -I$(TOP)/src/gallium/include \
           -I$(TOP)/src/gallium/drivers \
           -I$(TOP)/src/gallium/auxiliary \
           -I$(TOP)/src/gallium/winsys \
-          -I$(TOP)/src/gallium/winsys/g3dvl \
           $(DRIVER_INCLUDES)
 DEFINES = -DGALLIUM_TRACE -DVER_MAJOR=$(VA_MAJOR) -DVER_MINOR=$(VA_MINOR) $(DRIVER_DEFINES)
 LIBS = $(EXTRA_LIB_PATH) $(DRIVER_LIBS) -lva -lXext -lX11 -lm
index 2c2385c..a9e7a9c 100644 (file)
@@ -8,7 +8,6 @@ INCLUDES = -I$(TOP)/src/gallium/include \
           -I$(TOP)/src/gallium/drivers \
           -I$(TOP)/src/gallium/auxiliary \
           -I$(TOP)/src/gallium/winsys \
-          -I$(TOP)/src/gallium/winsys/g3dvl \
           $(DRIVER_INCLUDES)
 DEFINES = -DGALLIUM_TRACE -DVER_MAJOR=$(VDPAU_MAJOR) -DVER_MINOR=$(VDPAU_MINOR) $(DRIVER_DEFINES)
 LIBS = $(EXTRA_LIB_PATH) $(DRIVER_LIBS) -lvdpau -lX11-xcb -lxcb-dri2 -lm -lrt
index 5eafe98..217481e 100644 (file)
@@ -8,7 +8,6 @@ INCLUDES = -I$(TOP)/src/gallium/include \
           -I$(TOP)/src/gallium/drivers \
           -I$(TOP)/src/gallium/auxiliary \
           -I$(TOP)/src/gallium/winsys \
-          -I$(TOP)/src/gallium/winsys/g3dvl \
           $(DRIVER_INCLUDES)
 DEFINES = -DGALLIUM_TRACE $(DRIVER_DEFINES)
 LIBS = $(EXTRA_LIB_PATH) $(DRIVER_LIBS) -lXv -lX11-xcb -lxcb-dri2 -lm
index a270dfa..7c89c79 100644 (file)
@@ -4,11 +4,10 @@ include $(TOP)/configs/current
 LIBBASENAME = r300_drv_video
 
 DRIVER_DEFINES = -DGALLIUM_SOFTPIPE
-DRIVER_INCLUDES =
+DRIVER_INCLUDES = $(shell $(PKG_CONFIG) libdrm --cflags-only-I)
 
 PIPE_DRIVERS = \
        $(TOP)/src/gallium/drivers/r300/libr300.a \
-       $(TOP)/src/gallium/winsys/g3dvl/dri/libvldri.a \
         $(TOP)/src/gallium/winsys/radeon/drm/libradeonwinsys.a \
        $(TOP)/src/gallium/drivers/softpipe/libsoftpipe.a \
         $(TOP)/src/gallium/drivers/trace/libtrace.a \
@@ -16,6 +15,7 @@ PIPE_DRIVERS = \
 
 C_SOURCES = \
        target.c \
+       $(TOP)/src/gallium/auxiliary/vl/vl_winsys_dri.c \
        $(COMMON_GALLIUM_SOURCES) \
        $(DRIVER_SOURCES)
 
index afead84..50e7fa5 100644 (file)
@@ -4,18 +4,18 @@ include $(TOP)/configs/current
 LIBBASENAME = r600_drv_video
 
 DRIVER_DEFINES = -DGALLIUM_SOFTPIPE
-DRIVER_INCLUDES =
+DRIVER_INCLUDES = $(shell $(PKG_CONFIG) libdrm --cflags-only-I)
 
 PIPE_DRIVERS = \
        $(TOP)/src/gallium/drivers/r600/libr600.a \
-       $(TOP)/src/gallium/winsys/g3dvl/dri/libvldri.a \
        $(TOP)/src/gallium/winsys/radeon/drm/libradeonwinsys.a \
        $(TOP)/src/gallium/drivers/softpipe/libsoftpipe.a \
-        $(TOP)/src/gallium/drivers/trace/libtrace.a \
+       $(TOP)/src/gallium/drivers/trace/libtrace.a \
        $(TOP)/src/gallium/auxiliary/libgallium.a
 
 C_SOURCES = \
        target.c \
+       $(TOP)/src/gallium/auxiliary/vl/vl_winsys_dri.c \
        $(COMMON_GALLIUM_SOURCES) \
        $(DRIVER_SOURCES)
 
index a58df36..536cb7b 100644 (file)
@@ -12,7 +12,7 @@ PIPE_DRIVERS = \
        $(TOP)/src/gallium/auxiliary/libgallium.a
 
 C_SOURCES = \
-       $(TOP)/src/gallium/winsys/g3dvl/xlib/xsp_winsys.c
+       $(TOP)/src/gallium/auxiliary/vl/vl_winsys_xsp.c
 
 DRIVER_LIBS =
 
index 55f9907..d3f1c7d 100644 (file)
@@ -3,8 +3,9 @@ include $(TOP)/configs/current
 
 LIBBASENAME = vdpau_nouveau
 
+DRIVER_INCLUDES = $(shell $(PKG_CONFIG) libdrm --cflags-only-I)
+
 PIPE_DRIVERS = \
-       $(TOP)/src/gallium/winsys/g3dvl/dri/libvldri.a \
        $(TOP)/src/gallium/winsys/nouveau/drm/libnouveaudrm.a \
        $(TOP)/src/gallium/drivers/nvfx/libnvfx.a \
        $(TOP)/src/gallium/drivers/nv50/libnv50.a \
@@ -16,6 +17,7 @@ PIPE_DRIVERS = \
 
 C_SOURCES = \
        target.c \
+       $(TOP)/src/gallium/auxiliary/vl/vl_winsys_dri.c \
        $(COMMON_GALLIUM_SOURCES) \
        $(DRIVER_SOURCES)
 
index 849f72e..1ada550 100644 (file)
@@ -3,10 +3,10 @@ include $(TOP)/configs/current
 
 LIBBASENAME = vdpau_r300
 
+DRIVER_INCLUDES = $(shell $(PKG_CONFIG) libdrm --cflags-only-I)
 
 PIPE_DRIVERS = \
         $(TOP)/src/gallium/drivers/r300/libr300.a \
-       $(TOP)/src/gallium/winsys/g3dvl/dri/libvldri.a \
         $(TOP)/src/gallium/winsys/radeon/drm/libradeonwinsys.a \
         $(TOP)/src/gallium/drivers/softpipe/libsoftpipe.a \
         $(TOP)/src/gallium/drivers/rbug/librbug.a \
@@ -17,6 +17,7 @@ PIPE_DRIVERS = \
 
 C_SOURCES = \
        target.c \
+       $(TOP)/src/gallium/auxiliary/vl/vl_winsys_dri.c \
        $(COMMON_GALLIUM_SOURCES) \
        $(DRIVER_SOURCES)
 
index ef27b65..05e0b4f 100644 (file)
@@ -3,15 +3,17 @@ include $(TOP)/configs/current
 
 LIBBASENAME = vdpau_r600
 
+DRIVER_INCLUDES = $(shell $(PKG_CONFIG) libdrm --cflags-only-I)
+
 PIPE_DRIVERS = \
-        $(TOP)/src/gallium/drivers/r600/libr600.a \
-       $(TOP)/src/gallium/winsys/g3dvl/dri/libvldri.a \
+       $(TOP)/src/gallium/drivers/r600/libr600.a \
        $(TOP)/src/gallium/winsys/radeon/drm/libradeonwinsys.a \
-        $(TOP)/src/gallium/drivers/trace/libtrace.a \
+       $(TOP)/src/gallium/drivers/trace/libtrace.a \
        $(TOP)/src/gallium/auxiliary/libgallium.a
 
 C_SOURCES = \
        target.c \
+       $(TOP)/src/gallium/auxiliary/vl/vl_winsys_dri.c \
        $(COMMON_GALLIUM_SOURCES) \
        $(DRIVER_SOURCES)
 
index 139b01b..41cc514 100644 (file)
@@ -12,7 +12,7 @@ PIPE_DRIVERS = \
        $(TOP)/src/gallium/auxiliary/libgallium.a
 
 C_SOURCES = \
-       $(TOP)/src/gallium/winsys/g3dvl/xlib/xsp_winsys.c
+       $(TOP)/src/gallium/auxiliary/vl/vl_winsys_xsp.c
 
 DRIVER_LIBS =
 
index 67036ee..06727f1 100644 (file)
@@ -4,7 +4,6 @@ include $(TOP)/configs/current
 LIBBASENAME = XvMCnouveau
 
 PIPE_DRIVERS = \
-       $(TOP)/src/gallium/winsys/g3dvl/dri/libvldri.a \
        $(TOP)/src/gallium/winsys/nouveau/drm/libnouveaudrm.a \
        $(TOP)/src/gallium/drivers/nvfx/libnvfx.a \
        $(TOP)/src/gallium/drivers/nv50/libnv50.a \
@@ -16,6 +15,7 @@ PIPE_DRIVERS = \
 
 C_SOURCES = \
        target.c \
+       $(TOP)/src/gallium/auxiliary/vl/vl_winsys_dri.c \
        $(COMMON_GALLIUM_SOURCES) \
        $(DRIVER_SOURCES)
 
index 221335a..800f8d5 100644 (file)
@@ -3,15 +3,17 @@ include $(TOP)/configs/current
 
 LIBBASENAME = XvMCr300
 
+DRIVER_INCLUDES = $(shell $(PKG_CONFIG) libdrm --cflags-only-I)
+
 PIPE_DRIVERS = \
         $(TOP)/src/gallium/drivers/r300/libr300.a \
-       $(TOP)/src/gallium/winsys/g3dvl/dri/libvldri.a \
         $(TOP)/src/gallium/winsys/radeon/drm/libradeonwinsys.a \
         $(TOP)/src/gallium/drivers/trace/libtrace.a \
        $(TOP)/src/gallium/auxiliary/libgallium.a
 
 C_SOURCES = \
        target.c \
+       $(TOP)/src/gallium/auxiliary/vl/vl_winsys_dri.c \
        $(COMMON_GALLIUM_SOURCES) \
        $(DRIVER_SOURCES)
 
index 6667120..d9ce72f 100644 (file)
@@ -3,15 +3,17 @@ include $(TOP)/configs/current
 
 LIBBASENAME = XvMCr600
 
+DRIVER_INCLUDES = $(shell $(PKG_CONFIG) libdrm --cflags-only-I)
+
 PIPE_DRIVERS = \
-        $(TOP)/src/gallium/drivers/r600/libr600.a \
-       $(TOP)/src/gallium/winsys/g3dvl/dri/libvldri.a \
+       $(TOP)/src/gallium/drivers/r600/libr600.a \
        $(TOP)/src/gallium/winsys/radeon/drm/libradeonwinsys.a \
-        $(TOP)/src/gallium/drivers/trace/libtrace.a \
+       $(TOP)/src/gallium/drivers/trace/libtrace.a \
        $(TOP)/src/gallium/auxiliary/libgallium.a
 
 C_SOURCES = \
        target.c \
+       $(TOP)/src/gallium/auxiliary/vl/vl_winsys_dri.c \
        $(COMMON_GALLIUM_SOURCES) \
        $(DRIVER_SOURCES)
 
index 5b60bed..35db16f 100644 (file)
@@ -12,7 +12,7 @@ PIPE_DRIVERS = \
        $(TOP)/src/gallium/auxiliary/libgallium.a
 
 C_SOURCES = \
-       $(TOP)/src/gallium/winsys/g3dvl/xlib/xsp_winsys.c
+       $(TOP)/src/gallium/auxiliary/vl/vl_winsys_xsp.c
 
 DRIVER_LIBS =
 
diff --git a/src/gallium/winsys/g3dvl/Makefile b/src/gallium/winsys/g3dvl/Makefile
deleted file mode 100644 (file)
index 6c793e0..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-# src/gallium/winsys/Makefile
-TOP = ../../../..
-include $(TOP)/configs/current
-
-SUBDIRS = $(GALLIUM_STATE_TRACKERS_DIRS) $(GALLIUM_WINSYS_DIRS)
-
-default install clean:
-       @for dir in $(SUBDIRS) ; do \
-               if [ -d $$dir ] ; then \
-                       (cd $$dir && $(MAKE) $@) || exit 1; \
-               fi \
-       done
diff --git a/src/gallium/winsys/g3dvl/dri/Makefile b/src/gallium/winsys/g3dvl/dri/Makefile
deleted file mode 100644 (file)
index 43abcd9..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-TOP = ../../../../..
-include $(TOP)/configs/current
-
-LIBNAME = vldri
-
-LIBRARY_INCLUDES = -I$(TOP)/src/gallium/winsys/g3dvl \
-                   $(shell $(PKG_CONFIG) libdrm --cflags-only-I)
-
-C_SOURCES = \
-       dri_winsys.c
-
-include ../../../Makefile.template