xvmc-nouveau: Resolve build
authorEmil Velikov <emil.l.velikov@gmail.com>
Sat, 16 Jul 2011 00:28:15 +0000 (01:28 +0100)
committerYounes Manton <younes.m@gmail.com>
Sat, 16 Jul 2011 15:21:48 +0000 (11:21 -0400)
The following resolves the build issues and missing symbols
Add "xvmc-nouveau/target.c" - missing symbol "driver_description"
Add "drivers/nvc0/libnvc0.a" - missing symbol "nvc0_screen_create"
Remove "drivers/softpipe/libsoftpipe.a" - unnessecary dependency
resolves build (when building without swrast)
Add "drivers/trace/libtrace.a" in Makefile

Note: With/without those patches xvmc-nouveau still segfaults
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
src/gallium/targets/xvmc-nouveau/Makefile
src/gallium/targets/xvmc-nouveau/target.c [new file with mode: 0644]

index 4384eeaeadfe9b62b3e13ca40d844fac72c1cda1..e1aadbf4259974566ca15534b37026ca6e65c2c0 100644 (file)
@@ -8,11 +8,14 @@ PIPE_DRIVERS = \
        $(TOP)/src/gallium/winsys/nouveau/drm/libnouveaudrm.a \
        $(TOP)/src/gallium/drivers/nvfx/libnvfx.a \
        $(TOP)/src/gallium/drivers/nv50/libnv50.a \
-       $(TOP)/src/gallium/drivers/softpipe/libsoftpipe.a \
+       $(TOP)/src/gallium/drivers/nvc0/libnvc0.a \
        $(TOP)/src/gallium/drivers/nouveau/libnouveau.a \
+       $(TOP)/src/gallium/drivers/trace/libtrace.a \
        $(TOP)/src/gallium/auxiliary/libgallium.a
 
+
 C_SOURCES = \
+       target.c \
        $(COMMON_GALLIUM_SOURCES) \
        $(DRIVER_SOURCES)
 
diff --git a/src/gallium/targets/xvmc-nouveau/target.c b/src/gallium/targets/xvmc-nouveau/target.c
new file mode 100644 (file)
index 0000000..9b61b03
--- /dev/null
@@ -0,0 +1,18 @@
+#include "state_tracker/drm_driver.h"
+#include "target-helpers/inline_debug_helper.h"
+#include "nouveau/drm/nouveau_drm_public.h"
+
+static struct pipe_screen *create_screen(int fd)
+{
+   struct pipe_screen *screen;
+
+   screen = nouveau_drm_screen_create(fd);
+   if (!screen)
+      return NULL;
+
+   screen = debug_screen_wrap(screen);
+
+   return screen;
+}
+
+DRM_DRIVER_DESCRIPTOR("nouveau", "nouveau", create_screen)