summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packaging/mesa.spec25
-rw-r--r--src/egl/main/egldriver.c2
-rw-r--r--src/gallium/auxiliary/pipe-loader/pipe_loader_sw.c2
-rw-r--r--src/gallium/state_trackers/egl/common/native_wayland_drm_bufmgr_helper.c13
4 files changed, 31 insertions, 11 deletions
diff --git a/packaging/mesa.spec b/packaging/mesa.spec
index d86f6e4236e..0f87bcf7ead 100644
--- a/packaging/mesa.spec
+++ b/packaging/mesa.spec
@@ -136,6 +136,13 @@ OpenGL|ES and OpenVG.
This package provides the development environment for compiling
programs against the EGL library.
+%package -n mesa-gallium-pipe
+# Kudos to Debian for the descriptions
+Summary: Free implementation of Gallium-pipe API
+
+%description -n mesa-gallium-pipe
+Gallium
+
%if %{with x}
%package -n mesa-libGL
Summary: The GL/GLX runtime of the Mesa 3D graphics library
@@ -359,10 +366,10 @@ autoreconf -fi
--enable-gles2 \
%if %{with wayland}
%if !%{with x}
- --with-egl-platforms=drm,wayland \
+ --with-egl-platforms=wayland,drm \
--disable-glx \
%else
- --with-egl-platforms=x11,drm,wayland \
+ --with-egl-platforms=wayland,drm,x11 \
%endif
%else
--with-egl-platforms=x11,drm \
@@ -380,9 +387,10 @@ autoreconf -fi
%endif
--with-dri-searchpath=/usr/%{_lib}/dri/updates:/usr/%{_lib}/dri \
%ifarch %ix86 x86_64
+ --enable-gallium-egl \
--enable-gallium-llvm \
--with-dri-drivers=i915,i965,swrast \
- --with-gallium-drivers="swrast,svga" \
+ --with-gallium-drivers="i915,svga,swrast" \
%if %{with x}
--enable-xvmc \
%endif
@@ -442,6 +450,10 @@ install -m 644 $RPM_SOURCE_DIR/drirc %{buildroot}/etc
%postun -n mesa-libEGL -p /sbin/ldconfig
+%post -n mesa-gallium-pipe -p /sbin/ldconfig
+
+%postun -n mesa-gallium-pipe -p /sbin/ldconfig
+
%post -n mesa-libGLESv1_CM -p /sbin/ldconfig
%postun -n mesa-libGLESv1_CM -p /sbin/ldconfig
@@ -498,6 +510,7 @@ install -m 644 $RPM_SOURCE_DIR/drirc %{buildroot}/etc
%manifest %{name}.manifest
%defattr(-,root,root)
%{_libdir}/libEGL.so.1*
+%{_libdir}/egl/egl_gallium.so
%files -n mesa-libEGL-devel
%manifest %{name}.manifest
@@ -507,7 +520,10 @@ install -m 644 $RPM_SOURCE_DIR/drirc %{buildroot}/etc
%{_libdir}/libEGL.so
%{_libdir}/pkgconfig/egl.pc
-
+%files -n mesa-gallium-pipe
+%manifest %{name}.manifest
+%defattr(-,root,root)
+%{_libdir}/gallium-pipe/*
%if %{with x}
%files -n mesa-libGL
@@ -603,6 +619,7 @@ install -m 644 $RPM_SOURCE_DIR/drirc %{buildroot}/etc
%manifest %{name}.manifest
%defattr(-,root,root)
%{_libdir}/libgbm.so.1*
+%{_libdir}/gbm/gbm_gallium_drm.so
%files -n libgbm-devel
%manifest %{name}.manifest
diff --git a/src/egl/main/egldriver.c b/src/egl/main/egldriver.c
index ffdd1462846..c529cd4a516 100644
--- a/src/egl/main/egldriver.c
+++ b/src/egl/main/egldriver.c
@@ -565,8 +565,8 @@ _eglAddDrivers(void)
* Add other drivers only when EGL_DRIVER is not set. The order here
* decides the priorities.
*/
- _eglAddGalliumDriver();
_eglAddBuiltInDrivers();
+ _eglAddGalliumDriver();
}
return (_eglModules != NULL);
diff --git a/src/gallium/auxiliary/pipe-loader/pipe_loader_sw.c b/src/gallium/auxiliary/pipe-loader/pipe_loader_sw.c
index c2b78c636a7..c21be1ee479 100644
--- a/src/gallium/auxiliary/pipe-loader/pipe_loader_sw.c
+++ b/src/gallium/auxiliary/pipe-loader/pipe_loader_sw.c
@@ -31,7 +31,9 @@
#include "util/u_dl.h"
#include "sw/null/null_sw_winsys.h"
#include "target-helpers/inline_sw_helper.h"
+#ifdef HAVE_WINSYS_XLIB
#include "state_tracker/xlib_sw_winsys.h"
+#endif
struct pipe_loader_sw_device {
struct pipe_loader_device base;
diff --git a/src/gallium/state_trackers/egl/common/native_wayland_drm_bufmgr_helper.c b/src/gallium/state_trackers/egl/common/native_wayland_drm_bufmgr_helper.c
index a9e7342b68b..00801cc9cda 100644
--- a/src/gallium/state_trackers/egl/common/native_wayland_drm_bufmgr_helper.c
+++ b/src/gallium/state_trackers/egl/common/native_wayland_drm_bufmgr_helper.c
@@ -40,8 +40,8 @@ egl_g3d_wl_drm_helper_reference_buffer(void *user_data, uint32_t name, int fd,
templ.target = PIPE_TEXTURE_2D;
templ.format = pf;
templ.bind = PIPE_BIND_RENDER_TARGET | PIPE_BIND_SAMPLER_VIEW;
- templ.width0 = buffer->buffer.width;
- templ.height0 = buffer->buffer.height;
+ templ.width0 = buffer->width;
+ templ.height0 = buffer->height;
templ.depth0 = 1;
templ.array_size = 1;
@@ -64,8 +64,9 @@ egl_g3d_wl_drm_helper_unreference_buffer(void *user_data,
struct pipe_resource *
egl_g3d_wl_drm_common_wl_buffer_get_resource(struct native_display *ndpy,
- struct wl_buffer *buffer)
+ struct wl_buffer *_buffer)
{
+ struct wl_drm_buffer *buffer = (struct wl_drm_buffer *) _buffer;
return wayland_drm_buffer_get_buffer(buffer);
}
@@ -77,7 +78,7 @@ egl_g3d_wl_drm_common_query_buffer(struct native_display *ndpy,
struct wl_drm_buffer *buffer = (struct wl_drm_buffer *) _buffer;
struct pipe_resource *resource = buffer->driver_buffer;
- if (!wayland_buffer_is_drm(&buffer->buffer))
+ if (!buffer)
return EGL_FALSE;
switch (attribute) {
@@ -93,10 +94,10 @@ egl_g3d_wl_drm_common_query_buffer(struct native_display *ndpy,
return EGL_FALSE;
}
case EGL_WIDTH:
- *value = buffer->buffer.width;
+ *value = buffer->width;
return EGL_TRUE;
case EGL_HEIGHT:
- *value = buffer->buffer.height;
+ *value = buffer->height;
return EGL_TRUE;
default:
return EGL_FALSE;