From 55b415ff7751a6c5ac36ef49ac200460b47cae11 Mon Sep 17 00:00:00 2001 From: Emil Velikov Date: Sat, 16 Jul 2011 01:28:15 +0100 Subject: [PATCH] xvmc-nouveau: Resolve build 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 --- src/gallium/targets/xvmc-nouveau/Makefile | 5 ++++- src/gallium/targets/xvmc-nouveau/target.c | 18 ++++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 src/gallium/targets/xvmc-nouveau/target.c diff --git a/src/gallium/targets/xvmc-nouveau/Makefile b/src/gallium/targets/xvmc-nouveau/Makefile index 4384eeaeadf..e1aadbf4259 100644 --- a/src/gallium/targets/xvmc-nouveau/Makefile +++ b/src/gallium/targets/xvmc-nouveau/Makefile @@ -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 index 00000000000..9b61b036d26 --- /dev/null +++ b/src/gallium/targets/xvmc-nouveau/target.c @@ -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) -- 2.30.2