aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers
diff options
context:
space:
mode:
authorKen Mays <[email protected]>2019-09-26 09:47:06 +0000
committerJuan Suárez Romero <[email protected]>2019-10-01 10:31:02 +0000
commit4943c89d6d3f522b3100be9187ff045f84f032b1 (patch)
tree9c572b4a77b3a0309cc829d417b55682f521c5a7 /src/gallium/state_trackers
parente55df4c8596893ca7258a9f199610d8528d46640 (diff)
haiku: fix Mesa build
1. The hgl.c file is a read-only file versus read-write. Ref: src/gallium/state_trackers/hgl/hgl.c 2. I've included the Haiku-specific patches I used to get a successful build of Mesa 19.1.7 on Haiku using the meson/ninja build procedure. Shows "[764/764] linking target ... libswpipe.so" at build completion. v2: Remove autotools files (Eric) v3: Update the patch Reported-by: Ken Mays <[email protected]> Tested-by: Ken Mays <[email protected]> CC: [email protected] Reviewed-by: Alexander von Gluck IV <[email protected]>
Diffstat (limited to 'src/gallium/state_trackers')
-rw-r--r--src/gallium/state_trackers/hgl/hgl.c10
-rw-r--r--src/gallium/state_trackers/hgl/hgl_context.h4
2 files changed, 11 insertions, 3 deletions
diff --git a/src/gallium/state_trackers/hgl/hgl.c b/src/gallium/state_trackers/hgl/hgl.c
index 57e0e7695c8..ac659a4f69a 100644
--- a/src/gallium/state_trackers/hgl/hgl.c
+++ b/src/gallium/state_trackers/hgl/hgl.c
@@ -44,7 +44,8 @@ hgl_st_context(struct st_context_iface *stctxi)
// Perform a safe void to hgl_buffer cast
-static inline struct hgl_buffer*
+//static inline struct hgl_buffer*
+struct hgl_buffer*
hgl_st_framebuffer(struct st_framebuffer_iface *stfbi)
{
struct hgl_buffer* buffer;
@@ -62,7 +63,9 @@ hgl_st_framebuffer_flush_front(struct st_context_iface *stctxi,
CALLED();
//struct hgl_context* context = hgl_st_context(stctxi);
- //struct hgl_buffer* buffer = hgl_st_context(stfbi);
+ // struct hgl_buffer* buffer = hgl_st_context(stfbi);
+ struct hgl_buffer* buffer = hgl_st_framebuffer(stfbi);
+ //buffer->surface
#if 0
struct stw_st_framebuffer *stwfb = stw_st_framebuffer(stfb);
@@ -281,7 +284,8 @@ hgl_create_st_manager(struct hgl_context* context)
//manager->display = dpy;
manager->screen = context->screen;
manager->get_param = hgl_st_manager_get_param;
-
+ manager->st_manager_private = (void *)context;
+
return manager;
}
diff --git a/src/gallium/state_trackers/hgl/hgl_context.h b/src/gallium/state_trackers/hgl/hgl_context.h
index 5acb2f08db1..c5995f1cd2b 100644
--- a/src/gallium/state_trackers/hgl/hgl_context.h
+++ b/src/gallium/state_trackers/hgl/hgl_context.h
@@ -39,6 +39,8 @@ struct hgl_buffer
unsigned mask;
struct pipe_screen* screen;
+ struct pipe_surface* surface;
+
enum pipe_texture_target target;
struct pipe_resource* textures[ST_ATTACHMENT_COUNT];
@@ -80,6 +82,8 @@ struct hgl_context
struct hgl_buffer* read;
};
+// hgl_buffer from statetracker interface
+struct hgl_buffer* hgl_st_framebuffer(struct st_framebuffer_iface *stfbi);
// hgl state_tracker api
struct st_api* hgl_create_st_api(void);