[Mesa-dev] [PATCH 06/13] winsys/xlib: move xlib_create_sw_winsys within the winsys
Emil Velikov
emil.l.velikov at gmail.com
Mon Feb 10 20:26:26 PST 2014
Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
---
src/gallium/auxiliary/pipe-loader/pipe_loader_sw.c | 2 +-
src/gallium/auxiliary/vl/vl_winsys_xsp.c | 4 ++-
src/gallium/include/state_tracker/xlib_sw_winsys.h | 29 ----------------------
src/gallium/include/state_tracker/xlibsw_api.h | 19 ++++++++++++++
src/gallium/state_trackers/egl/Makefile.am | 1 +
src/gallium/state_trackers/egl/SConscript | 1 +
src/gallium/state_trackers/egl/x11/native_ximage.c | 3 ++-
src/gallium/state_trackers/glx/xlib/xm_api.h | 2 +-
src/gallium/targets/graw-xlib/SConscript | 1 +
src/gallium/targets/graw-xlib/graw_xlib.c | 3 ++-
src/gallium/winsys/sw/xlib/xlib_sw_winsys.c | 3 ++-
src/gallium/winsys/sw/xlib/xlib_sw_winsys.h | 10 ++++++++
12 files changed, 43 insertions(+), 35 deletions(-)
delete mode 100644 src/gallium/include/state_tracker/xlib_sw_winsys.h
create mode 100644 src/gallium/include/state_tracker/xlibsw_api.h
create mode 100644 src/gallium/winsys/sw/xlib/xlib_sw_winsys.h
diff --git a/src/gallium/auxiliary/pipe-loader/pipe_loader_sw.c b/src/gallium/auxiliary/pipe-loader/pipe_loader_sw.c
index 7f3f93b..90d2975 100644
--- a/src/gallium/auxiliary/pipe-loader/pipe_loader_sw.c
+++ b/src/gallium/auxiliary/pipe-loader/pipe_loader_sw.c
@@ -30,8 +30,8 @@
#include "util/u_memory.h"
#include "util/u_dl.h"
#include "sw/null/null_sw_winsys.h"
+#include "sw/xlib/xlib_sw_winsys.h"
#include "target-helpers/inline_sw_helper.h"
-#include "state_tracker/xlib_sw_winsys.h"
struct pipe_loader_sw_device {
struct pipe_loader_device base;
diff --git a/src/gallium/auxiliary/vl/vl_winsys_xsp.c b/src/gallium/auxiliary/vl/vl_winsys_xsp.c
index 72e53a0..57f17bc 100644
--- a/src/gallium/auxiliary/vl/vl_winsys_xsp.c
+++ b/src/gallium/auxiliary/vl/vl_winsys_xsp.c
@@ -35,12 +35,14 @@
#include "util/u_format.h"
#include "util/u_inlines.h"
-#include "state_tracker/xlib_sw_winsys.h"
+#include "state_tracker/xlibsw_api.h"
#include "softpipe/sp_public.h"
#include "vl/vl_compositor.h"
#include "vl/vl_winsys.h"
+#include "winsys/sw/xlib/xlib_sw_winsys.h"
+
struct vl_xsp_screen
{
struct vl_screen base;
diff --git a/src/gallium/include/state_tracker/xlib_sw_winsys.h b/src/gallium/include/state_tracker/xlib_sw_winsys.h
deleted file mode 100644
index 4e7ccc1..0000000
--- a/src/gallium/include/state_tracker/xlib_sw_winsys.h
+++ /dev/null
@@ -1,29 +0,0 @@
-#ifndef XLIB_SW_WINSYS_H
-#define XLIB_SW_WINSYS_H
-
-#include "state_tracker/sw_winsys.h"
-#include <X11/Xlib.h>
-
-
-struct pipe_screen;
-struct pipe_resource;
-
-/* This is what the xlib software winsys expects to find in the
- * "private" field of flush_frontbuffers().
- *
- * Xlib-based state trackers somehow need to know this.
- */
-struct xlib_drawable {
- Visual *visual;
- int depth;
- Drawable drawable;
-};
-
-
-/* This is the public interface to the ws/xlib module. Why isn't it
- * being defined in that directory?
- */
-struct sw_winsys *xlib_create_sw_winsys( Display *display );
-
-
-#endif
diff --git a/src/gallium/include/state_tracker/xlibsw_api.h b/src/gallium/include/state_tracker/xlibsw_api.h
new file mode 100644
index 0000000..9301279
--- /dev/null
+++ b/src/gallium/include/state_tracker/xlibsw_api.h
@@ -0,0 +1,19 @@
+#ifndef XLIB_SW_WINSYS_H
+#define XLIB_SW_WINSYS_H
+
+#include "state_tracker/sw_winsys.h"
+#include <X11/Xlib.h>
+
+
+/* This is what the xlib software winsys expects to find in the
+ * "private" field of flush_frontbuffers().
+ *
+ * Xlib-based state trackers somehow need to know this.
+ */
+struct xlib_drawable {
+ Visual *visual;
+ int depth;
+ Drawable drawable;
+};
+
+#endif
diff --git a/src/gallium/state_trackers/egl/Makefile.am b/src/gallium/state_trackers/egl/Makefile.am
index bad14fe..9bce127 100644
--- a/src/gallium/state_trackers/egl/Makefile.am
+++ b/src/gallium/state_trackers/egl/Makefile.am
@@ -41,6 +41,7 @@ AM_CFLAGS += \
$(LIBDRM_CFLAGS) \
$(DRI2PROTO_CFLAGS)
AM_CPPFLAGS += \
+ -I$(top_srcdir)/src/gallium/winsys \
-I$(top_srcdir)/src/gallium/drivers \
-I$(top_srcdir)/src/glx \
-I$(top_srcdir)/src/mapi \
diff --git a/src/gallium/state_trackers/egl/SConscript b/src/gallium/state_trackers/egl/SConscript
index 066a7fd..3ddf0bc 100644
--- a/src/gallium/state_trackers/egl/SConscript
+++ b/src/gallium/state_trackers/egl/SConscript
@@ -7,6 +7,7 @@ env = env.Clone()
env.Append(CPPPATH = [
'#/src/egl/main',
+ '#/src/gallium/winsys',
'#/src/gallium/winsys/sw',
'.',
])
diff --git a/src/gallium/state_trackers/egl/x11/native_ximage.c b/src/gallium/state_trackers/egl/x11/native_ximage.c
index 019e535..d3d1924 100644
--- a/src/gallium/state_trackers/egl/x11/native_ximage.c
+++ b/src/gallium/state_trackers/egl/x11/native_ximage.c
@@ -29,7 +29,8 @@
#include "util/u_format.h"
#include "pipe/p_compiler.h"
#include "util/u_inlines.h"
-#include "state_tracker/xlib_sw_winsys.h"
+#include "state_tracker/xlibsw_api.h"
+#include "sw/xlib/xlib_sw_winsys.h"
#include "util/u_debug.h"
#include "egllog.h"
diff --git a/src/gallium/state_trackers/glx/xlib/xm_api.h b/src/gallium/state_trackers/glx/xlib/xm_api.h
index fa97ea4..6d0bc3f 100644
--- a/src/gallium/state_trackers/glx/xlib/xm_api.h
+++ b/src/gallium/state_trackers/glx/xlib/xm_api.h
@@ -61,7 +61,7 @@ and create a window, you must do the following to use the X/Mesa interface:
#include "state_tracker/st_api.h"
#include "os/os_thread.h"
-#include "state_tracker/xlib_sw_winsys.h"
+#include "state_tracker/xlibsw_api.h"
# include <X11/Xlib.h>
# include <X11/Xlibint.h>
diff --git a/src/gallium/targets/graw-xlib/SConscript b/src/gallium/targets/graw-xlib/SConscript
index 9cbe7bb..76e4d4f 100644
--- a/src/gallium/targets/graw-xlib/SConscript
+++ b/src/gallium/targets/graw-xlib/SConscript
@@ -16,6 +16,7 @@ env.Append(LIBPATH = env['X11_LIBPATH'])
env.Append(CPPPATH = [
'#src/gallium/drivers',
'#src/gallium/include/state_tracker',
+ '#src/gallium/winsys',
])
env.Append(CPPDEFINES = ['GALLIUM_RBUG', 'GALLIUM_TRACE', 'GALLIUM_GALAHAD'])
diff --git a/src/gallium/targets/graw-xlib/graw_xlib.c b/src/gallium/targets/graw-xlib/graw_xlib.c
index 148837c..db2637b 100644
--- a/src/gallium/targets/graw-xlib/graw_xlib.c
+++ b/src/gallium/targets/graw-xlib/graw_xlib.c
@@ -5,8 +5,9 @@
#include "util/u_memory.h"
#include "target-helpers/inline_sw_helper.h"
#include "target-helpers/inline_debug_helper.h"
-#include "state_tracker/xlib_sw_winsys.h"
+#include "state_tracker/xlibsw_api.h"
#include "state_tracker/graw.h"
+#include "sw/xlib/xlib_sw_winsys.h"
#include <X11/Xlib.h>
#include <X11/Xlibint.h>
diff --git a/src/gallium/winsys/sw/xlib/xlib_sw_winsys.c b/src/gallium/winsys/sw/xlib/xlib_sw_winsys.c
index bf246bc..8831071 100644
--- a/src/gallium/winsys/sw/xlib/xlib_sw_winsys.c
+++ b/src/gallium/winsys/sw/xlib/xlib_sw_winsys.c
@@ -39,7 +39,8 @@
#include "util/u_math.h"
#include "util/u_memory.h"
-#include "state_tracker/xlib_sw_winsys.h"
+#include "state_tracker/xlibsw_api.h"
+#include "xlib_sw_winsys.h"
#include <X11/Xlib.h>
#include <X11/Xlibint.h>
diff --git a/src/gallium/winsys/sw/xlib/xlib_sw_winsys.h b/src/gallium/winsys/sw/xlib/xlib_sw_winsys.h
new file mode 100644
index 0000000..0a1dad1
--- /dev/null
+++ b/src/gallium/winsys/sw/xlib/xlib_sw_winsys.h
@@ -0,0 +1,10 @@
+#ifndef XLIB_SW_WINSYS
+#define XLIB_SW_WINSYS
+
+#include <X11/Xlib.h>
+
+struct sw_winsys;
+
+struct sw_winsys *xlib_create_sw_winsys(Display *display);
+
+#endif
--
1.8.5.4
More information about the mesa-dev
mailing list