summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakob Bornecrantz <wallbraker@gmail.com>2010-07-22 20:11:20 -0700
committerJakob Bornecrantz <wallbraker@gmail.com>2010-07-22 20:26:35 -0700
commit5ccab575fd737f3f08fe345ed96518f3784b74d3 (patch)
tree546f2ee61d0b1882d6cc4ab6959820efc6031911
parent37dabfeef76134b4e3d987723e70e869036d1083 (diff)
i915g: Allow wrapping with software pipes
-rw-r--r--src/gallium/targets/dri-i915/Makefile10
-rw-r--r--src/gallium/targets/dri-i915/target.c4
2 files changed, 11 insertions, 3 deletions
diff --git a/src/gallium/targets/dri-i915/Makefile b/src/gallium/targets/dri-i915/Makefile
index 068f2234dbe..e88c3c9f66a 100644
--- a/src/gallium/targets/dri-i915/Makefile
+++ b/src/gallium/targets/dri-i915/Makefile
@@ -6,11 +6,11 @@ LIBNAME = i915_dri.so
PIPE_DRIVERS = \
$(TOP)/src/gallium/state_trackers/dri/drm/libdridrm.a \
$(TOP)/src/gallium/winsys/i915/drm/libi915drm.a \
+ $(TOP)/src/gallium/winsys/sw/wrapper/libwsw.a \
+ $(TOP)/src/gallium/drivers/softpipe/libsoftpipe.a \
$(TOP)/src/gallium/drivers/galahad/libgalahad.a \
$(TOP)/src/gallium/drivers/trace/libtrace.a \
$(TOP)/src/gallium/drivers/rbug/librbug.a \
- $(TOP)/src/gallium/drivers/softpipe/libsoftpipe.a \
- $(TOP)/src/gallium/drivers/identity/libidentity.a \
$(TOP)/src/gallium/drivers/i915/libi915.a
C_SOURCES = \
@@ -19,7 +19,11 @@ C_SOURCES = \
$(DRIVER_SOURCES)
DRIVER_DEFINES = \
- -DGALLIUM_RBUG -DGALLIUM_TRACE -DGALLIUM_GALAHAD
+ -DGALLIUM_RBUG -DGALLIUM_TRACE -DGALLIUM_GALAHAD -DGALLIUM_SOFTPIPE
+
+ifeq ($(MESA_LLVM),1)
+DRIVER_DEFINS += -DGALLIUM_LLVMPIPE
+endif
include ../Makefile.dri
diff --git a/src/gallium/targets/dri-i915/target.c b/src/gallium/targets/dri-i915/target.c
index 8c8ef7e02b4..5ae6ca367d8 100644
--- a/src/gallium/targets/dri-i915/target.c
+++ b/src/gallium/targets/dri-i915/target.c
@@ -1,5 +1,6 @@
#include "state_tracker/drm_driver.h"
+#include "target-helpers/inline_wrapper_sw_helper.h"
#include "target-helpers/inline_debug_helper.h"
#include "i915/drm/i915_drm_public.h"
#include "i915/i915_public.h"
@@ -18,6 +19,9 @@ create_screen(int fd)
if (!screen)
return NULL;
+ if (debug_get_bool_option("I915_SOFTWARE", FALSE))
+ screen = sw_screen_wrap(screen);
+
screen = debug_screen_wrap(screen);
return screen;