diff options
Diffstat (limited to 'debian')
-rw-r--r-- | debian/changelog | 8 | ||||
-rw-r--r-- | debian/libegl1-mesa.symbols | 3 | ||||
-rw-r--r-- | debian/libgbm1.symbols | 2 | ||||
-rw-r--r-- | debian/libxatracker2.symbols | 1 | ||||
-rw-r--r-- | debian/patches/03_gbm_make_devices_static.diff | 27 | ||||
-rw-r--r-- | debian/patches/04_osmesa_version.diff | 32 | ||||
-rw-r--r-- | debian/patches/117-static-gallium.patch | 2 | ||||
-rw-r--r-- | debian/patches/egl-platform-mir.patch | 170 | ||||
-rw-r--r-- | debian/patches/fix-bsymbolic-madness.patch | 121 | ||||
-rw-r--r-- | debian/patches/series | 2 |
10 files changed, 110 insertions, 258 deletions
diff --git a/debian/changelog b/debian/changelog index 49e46dcec83..9903b0e1b4d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +mesa (10.2.0~git20140319-0ubuntu1) UNRELEASED; urgency=medium + + * Preliminary port to 10.2. + - Drop upstreamed patches. + - Refresh mir patch. + + -- Maarten Lankhorst <maarten.lankhorst@ubuntu.com> Wed, 19 Mar 2014 11:31:15 +0100 + mesa (10.1.0-4ubuntu1) trusty; urgency=medium * Merge from unreleased debian sid. diff --git a/debian/libegl1-mesa.symbols b/debian/libegl1-mesa.symbols index 18edaf65da5..f64e2730289 100644 --- a/debian/libegl1-mesa.symbols +++ b/debian/libegl1-mesa.symbols @@ -17,6 +17,8 @@ libEGL.so.1 libegl1-mesa #MINVER# | libegl1-x11 eglCreatePbufferFromClientBuffer@Base 7.8.1 eglCreatePbufferSurface@Base 7.8.1 eglCreatePixmapSurface@Base 7.8.1 + eglCreatePlatformPixmapSurfaceEXT@Base 10.2 + eglCreatePlatformWindowSurfaceEXT@Base 10.2 eglCreateScreenSurfaceMESA@Base 7.8.1 eglCreateSyncKHR@Base 7.9 eglCreateWaylandBufferFromImageWL@Base 10.0.1 @@ -37,6 +39,7 @@ libEGL.so.1 libegl1-mesa #MINVER# | libegl1-x11 eglGetModeAttribMESA@Base 7.8.1 eglGetSyncAttribKHR@Base 7.9 eglGetModesMESA@Base 7.8.1 + eglGetPlatformDisplayEXT@Base 10.2 eglGetProcAddress@Base 7.8.1 eglGetScreensMESA@Base 7.8.1 eglInitialize@Base 7.8.1 diff --git a/debian/libgbm1.symbols b/debian/libgbm1.symbols index 9a04f8b56e8..743a6e0a3f0 100644 --- a/debian/libgbm1.symbols +++ b/debian/libgbm1.symbols @@ -17,13 +17,11 @@ libgbm.so.1 libgbm1 #MINVER# gbm_device_get_backend_name@Base 7.11~1 gbm_device_get_fd@Base 7.11~1 gbm_device_is_format_supported@Base 8.1~0 - gbm_dri_backend@Base 8.1~0 gbm_surface_create@Base 8.1~0 gbm_surface_destroy@Base 8.1~0 gbm_surface_has_free_buffers@Base 8.1~0 gbm_surface_lock_front_buffer@Base 8.1~0 gbm_surface_release_buffer@Base 8.1~0 - (regex)"^_gbm_.*@Base$" 0 1 # stupid side effect of code generation from # src/egl/wayland/wayland-drm/wayland-drm.xml which ought to be private. (arch=linux-any)wl_drm_interface@Base 0 1 diff --git a/debian/libxatracker2.symbols b/debian/libxatracker2.symbols index c362a39bc1b..5db671ec44b 100644 --- a/debian/libxatracker2.symbols +++ b/debian/libxatracker2.symbols @@ -1,5 +1,4 @@ libxatracker.so.2 libxatracker2 #MINVER# - driver_descriptor@Base 0 xa_composite_allocation@Base 0 xa_composite_check_accelerated@Base 0 xa_composite_done@Base 0 diff --git a/debian/patches/03_gbm_make_devices_static.diff b/debian/patches/03_gbm_make_devices_static.diff deleted file mode 100644 index 3b3be9b3aca..00000000000 --- a/debian/patches/03_gbm_make_devices_static.diff +++ /dev/null @@ -1,27 +0,0 @@ -From 5956d0a70600fe3f70282419c3328e68e8b68f1a Mon Sep 17 00:00:00 2001 -From: Julien Cristau <jcristau@debian.org> -Date: Sun, 2 Mar 2014 17:44:29 +0100 -Subject: [PATCH] gbm: make 'devices' array static - -It's only used in this one file, and exporting a symbol named 'devices' -from a shared library is terribly wrong. ---- - src/gbm/main/gbm.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/gbm/main/gbm.c b/src/gbm/main/gbm.c -index 72eeabf..04cd90c 100644 ---- a/src/gbm/main/gbm.c -+++ b/src/gbm/main/gbm.c -@@ -43,7 +43,7 @@ - - #define ARRAY_SIZE(a) (sizeof(a)/sizeof((a)[0])) - --struct gbm_device *devices[16]; -+static struct gbm_device *devices[16]; - - static int device_num = 0; - --- -1.9.0 - diff --git a/debian/patches/04_osmesa_version.diff b/debian/patches/04_osmesa_version.diff index 45df2cce307..41416722714 100644 --- a/debian/patches/04_osmesa_version.diff +++ b/debian/patches/04_osmesa_version.diff @@ -7,42 +7,16 @@ -lib@OSMESA_LIB@_la_LDFLAGS = -module -version-number @OSMESA_VERSION@ -no-undefined +lib@OSMESA_LIB@_la_LDFLAGS = -module -version-number 6:5:3 -no-undefined - GLAPI_LIB = $(top_builddir)/src/mapi/glapi/libglapi.la if HAVE_SHARED_GLAPI -@@ -73,9 +73,9 @@ - all-local: lib@OSMESA_LIB@.la - $(MKDIR_P) $(top_builddir)/$(LIB_DIR); - $(MKDIR_P) $(top_builddir)/$(LIB_DIR)/gallium; -- ln -f .libs/lib@OSMESA_LIB@.so $(top_builddir)/$(LIB_DIR)/gallium/lib@OSMESA_LIB@.so; -- ln -f .libs/lib@OSMESA_LIB@.so.@OSMESA_VERSION@ $(top_builddir)/$(LIB_DIR)/gallium/lib@OSMESA_LIB@.so.@OSMESA_VERSION@; -- ln -f .libs/lib@OSMESA_LIB@.so.@OSMESA_VERSION@.0.0 $(top_builddir)/$(LIB_DIR)/gallium/ -+ ln -f .libs/lib@OSMESA_LIB@.so $(top_builddir)/$(LIB_DIR)/gallium/ -+ ln -f .libs/lib@OSMESA_LIB@.so.6 $(top_builddir)/$(LIB_DIR)/gallium/ -+ ln -f .libs/lib@OSMESA_LIB@.so.6.5.3 $(top_builddir)/$(LIB_DIR)/gallium/ - endif - - pkgconfigdir = $(libdir)/pkgconfig + SHARED_GLAPI_LIB = $(top_builddir)/src/mapi/shared-glapi/libglapi.la --- a/src/mesa/drivers/osmesa/Makefile.am +++ b/src/mesa/drivers/osmesa/Makefile.am -@@ -37,7 +37,7 @@ +@@ -35,7 +35,7 @@ nodist_EXTRA_lib@OSMESA_LIB@_la_SOURCES = dummy.cpp lib@OSMESA_LIB@_la_SOURCES = osmesa.c -lib@OSMESA_LIB@_la_LDFLAGS = -module -version-number @OSMESA_VERSION@ -no-undefined +lib@OSMESA_LIB@_la_LDFLAGS = -module -version-number 6:5:3 -no-undefined - GLAPI_LIB = $(top_builddir)/src/mapi/glapi/libglapi.la if HAVE_SHARED_GLAPI -@@ -54,9 +54,9 @@ - # a while by putting a link to the driver into /lib of the build tree. - all-local: lib@OSMESA_LIB@.la - $(MKDIR_P) $(top_builddir)/$(LIB_DIR); -- ln -f .libs/lib@OSMESA_LIB@.so $(top_builddir)/$(LIB_DIR)/lib@OSMESA_LIB@.so; -- ln -f .libs/lib@OSMESA_LIB@.so.@OSMESA_VERSION@ $(top_builddir)/$(LIB_DIR)/lib@OSMESA_LIB@.so.@OSMESA_VERSION@; -- ln -f .libs/lib@OSMESA_LIB@.so.@OSMESA_VERSION@.0.0 $(top_builddir)/$(LIB_DIR)/ -+ ln -f .libs/lib@OSMESA_LIB@.so $(top_builddir)/$(LIB_DIR)/ -+ ln -f .libs/lib@OSMESA_LIB@.so.6 $(top_builddir)/$(LIB_DIR)/ -+ ln -f .libs/lib@OSMESA_LIB@.so.6.5.3 $(top_builddir)/$(LIB_DIR)/ - endif - - pkgconfigdir = $(libdir)/pkgconfig + SHARED_GLAPI_LIB = $(top_builddir)/src/mapi/shared-glapi/libglapi.la diff --git a/debian/patches/117-static-gallium.patch b/debian/patches/117-static-gallium.patch index 939cb7316fa..f74a01ceff2 100644 --- a/debian/patches/117-static-gallium.patch +++ b/debian/patches/117-static-gallium.patch @@ -55,7 +55,7 @@ index f14279b..3cdec83 100644 AM_CXXFLAGS += -fno-rtti -+libgallium_la_LIBADD = $(LLVM_LIBS) ++libgallium_la_LIBADD = $(LLVM_LIBS) $(PTHREAD_LIBS) + endif diff --git a/debian/patches/egl-platform-mir.patch b/debian/patches/egl-platform-mir.patch index 871894c2bc9..c81e1c4dc29 100644 --- a/debian/patches/egl-platform-mir.patch +++ b/debian/patches/egl-platform-mir.patch @@ -1,6 +1,6 @@ --- a/configure.ac +++ b/configure.ac -@@ -1468,7 +1468,9 @@ +@@ -1428,7 +1428,9 @@ android|fbdev|gdi|null) ;; @@ -11,14 +11,14 @@ *) AC_MSG_ERROR([EGL platform '$plat' does not exist]) ;; -@@ -1497,6 +1499,7 @@ +@@ -1458,6 +1460,7 @@ AM_CONDITIONAL(HAVE_EGL_PLATFORM_DRM, echo "$egl_platforms" | grep 'drm' >/dev/null 2>&1) AM_CONDITIONAL(HAVE_EGL_PLATFORM_FBDEV, echo "$egl_platforms" | grep 'fbdev' >/dev/null 2>&1) AM_CONDITIONAL(HAVE_EGL_PLATFORM_NULL, echo "$egl_platforms" | grep 'null' >/dev/null 2>&1) +AM_CONDITIONAL(HAVE_EGL_PLATFORM_MIR, echo "$egl_platforms" | grep 'mir' >/dev/null 2>&1) AM_CONDITIONAL(HAVE_EGL_DRIVER_DRI2, test "x$HAVE_EGL_DRIVER_DRI2" != "x") - AM_CONDITIONAL(HAVE_EGL_DRIVER_GLX, test "x$HAVE_EGL_DRIVER_GLX" != "x") + --- a/include/EGL/eglplatform.h +++ b/include/EGL/eglplatform.h @@ -104,6 +104,13 @@ @@ -37,7 +37,7 @@ #ifdef MESA_EGL_NO_X11_HEADERS --- a/include/GL/internal/dri_interface.h +++ b/include/GL/internal/dri_interface.h -@@ -826,10 +826,12 @@ +@@ -832,10 +832,12 @@ unsigned int pitch; unsigned int cpp; unsigned int flags; @@ -53,7 +53,7 @@ --- a/src/egl/drivers/dri2/Makefile.am +++ b/src/egl/drivers/dri2/Makefile.am -@@ -64,3 +64,9 @@ +@@ -62,3 +62,9 @@ libegl_dri2_la_SOURCES += platform_drm.c AM_CFLAGS += -DHAVE_DRM_PLATFORM endif @@ -65,7 +65,7 @@ +endif --- a/src/egl/drivers/dri2/egl_dri2.c +++ b/src/egl/drivers/dri2/egl_dri2.c -@@ -639,6 +639,12 @@ +@@ -643,6 +643,12 @@ return EGL_TRUE; return dri2_initialize_wayland(drv, disp); #endif @@ -92,18 +92,18 @@ #include "eglconfig.h" #include "eglcontext.h" #include "egldisplay.h" -@@ -135,6 +140,10 @@ +@@ -192,6 +197,10 @@ + int formats; uint32_t capabilities; #endif - ++ +#ifdef HAVE_MIR_PLATFORM + MirMesaEGLNativeDisplay *mir_disp; +#endif -+ - int (*authenticate) (_EGLDisplay *disp, uint32_t id); }; -@@ -182,7 +191,9 @@ + struct dri2_egl_context +@@ -238,7 +247,9 @@ struct gbm_dri_surface *gbm_surf; #endif @@ -114,7 +114,7 @@ __DRIbuffer *dri_buffers[__DRI_BUFFER_COUNT]; struct { #ifdef HAVE_WAYLAND_PLATFORM -@@ -204,6 +215,10 @@ +@@ -260,6 +271,10 @@ /* EGL-owned buffers */ __DRIbuffer *local_buffers[__DRI_BUFFER_COUNT]; #endif @@ -125,7 +125,7 @@ }; -@@ -271,4 +286,7 @@ +@@ -327,4 +342,7 @@ EGLBoolean dri2_initialize_android(_EGLDriver *drv, _EGLDisplay *disp); @@ -135,7 +135,7 @@ #endif /* EGL_DRI2_INCLUDED */ --- /dev/null +++ b/src/egl/drivers/dri2/platform_mir.c -@@ -0,0 +1,436 @@ +@@ -0,0 +1,456 @@ +/* + * Copyright © 2012 Canonical, Inc + * @@ -166,6 +166,7 @@ +#include <mir_toolkit/mesa/native_display.h> + +#include "egl_dri2.h" ++#include "egl_dri2_fallbacks.h" +#include "loader.h" + +#include <stdlib.h> @@ -373,6 +374,16 @@ + return NULL; +} + ++static _EGLSurface * ++dri2_mir_create_pixmap_surface(_EGLDriver *drv, _EGLDisplay *disp, ++ _EGLConfig *conf, void *native_window, ++ const EGLint *attrib_list) ++{ ++ _eglError(EGL_BAD_PARAMETER, "cannot create EGL pixmap surfaces on mir"); ++ return NULL; ++} ++ ++ +static EGLBoolean +dri2_destroy_mir_surface(_EGLDriver *drv, _EGLDisplay *disp, _EGLSurface *surf) +{ @@ -483,6 +494,23 @@ + } +} + ++static struct dri2_egl_display_vtbl dri2_mir_display_vtbl = { ++ .authenticate = dri2_mir_authenticate, ++ .create_window_surface = dri2_create_mir_window_surface, ++ .create_pixmap_surface = dri2_mir_create_pixmap_surface, ++ .create_pbuffer_surface = dri2_fallback_create_pbuffer_surface, ++ .destroy_surface = dri2_destroy_mir_surface, ++ .create_image = dri2_mir_create_image_khr, ++ .swap_interval = dri2_set_swap_interval, ++ .swap_buffers = dri2_swap_buffers, ++ .swap_buffers_with_damage = dri2_fallback_swap_buffers_with_damage, ++ .swap_buffers_region = dri2_fallback_swap_buffers_region, ++ .post_sub_buffer = dri2_fallback_post_sub_buffer, ++ .copy_buffers = dri2_fallback_copy_buffers, ++ .query_buffer_age = dri2_fallback_query_buffer_age, ++ .create_wayland_buffer_from_image = NULL, ++}; ++ +EGLBoolean +dri2_initialize_mir(_EGLDriver *drv, _EGLDisplay *disp) +{ @@ -497,16 +525,6 @@ + + loader_set_logger(_eglLog); + -+ drv->API.CreateWindowSurface = dri2_create_mir_window_surface; -+ drv->API.DestroySurface = dri2_destroy_mir_surface; -+ drv->API.SwapBuffers = dri2_swap_buffers; -+ drv->API.SwapInterval = dri2_set_swap_interval; -+/* drv->API.CreatePixmapSurface = dri2_create_pixmap_surface; -+ drv->API.CreatePbufferSurface = dri2_create_pbuffer_surface; -+ drv->API.CopyBuffers = dri2_copy_buffers; -+*/ -+ drv->API.CreateImageKHR = dri2_mir_create_image_khr; -+ + dri2_dpy = calloc(1, sizeof *dri2_dpy); + if (!dri2_dpy) + return _eglError(EGL_BAD_ALLOC, "eglInitialize"); @@ -560,10 +578,12 @@ + dri2_add_config(disp, config, i + 1, types, NULL, argb_masks); + } + -+ dri2_dpy->authenticate = dri2_mir_authenticate; ++ disp->Extensions.EXT_buffer_age = EGL_TRUE; ++ disp->Extensions.EXT_swap_buffers_with_damage = EGL_TRUE; + + disp->VersionMajor = 1; + disp->VersionMinor = 4; ++ dri2_dpy->vtbl = &dri2_mir_display_vtbl; + + return EGL_TRUE; + @@ -574,8 +594,8 @@ +} --- a/src/egl/main/Makefile.am +++ b/src/egl/main/Makefile.am -@@ -108,6 +108,11 @@ - libEGL_la_LIBADD += $(DLOPEN_LIBS) +@@ -102,6 +102,11 @@ + AM_CFLAGS += -DHAVE_NULL_PLATFORM endif +if HAVE_EGL_PLATFORM_MIR @@ -588,7 +608,7 @@ AM_CFLAGS += -DHAVE_XCB_DRI2 --- a/src/egl/main/egldisplay.c +++ b/src/egl/main/egldisplay.c -@@ -59,7 +59,10 @@ +@@ -60,7 +60,10 @@ #include <sys/types.h> #include <sys/stat.h> #endif @@ -600,7 +620,7 @@ /** * Map --with-egl-platforms names to platform types. -@@ -74,7 +77,8 @@ +@@ -75,7 +78,8 @@ { _EGL_PLATFORM_DRM, "drm" }, { _EGL_PLATFORM_FBDEV, "fbdev" }, { _EGL_PLATFORM_NULL, "null" }, @@ -610,7 +630,7 @@ }; -@@ -134,6 +138,47 @@ +@@ -135,6 +139,47 @@ #endif } @@ -658,7 +678,7 @@ /** * Try detecting native platform with the help of native display characteristcs. -@@ -154,6 +199,11 @@ +@@ -155,6 +200,11 @@ return _EGL_PLATFORM_FBDEV; #endif @@ -670,9 +690,9 @@ if (_eglPointerIsDereferencable(nativeDisplay)) { void *first_pointer = *(void **) nativeDisplay; -@@ -188,7 +238,7 @@ +@@ -189,7 +239,7 @@ _EGLPlatformType - _eglGetNativePlatform(EGLNativeDisplayType nativeDisplay) + _eglGetNativePlatform(void *nativeDisplay) { - static _EGLPlatformType native_platform = _EGL_INVALID_PLATFORM; + _EGLPlatformType native_platform = _EGL_INVALID_PLATFORM; @@ -700,7 +720,7 @@ } _EGLModule; static _EGLMutex _eglModuleMutex = _EGL_MUTEX_INITIALIZER; -@@ -134,7 +134,6 @@ +@@ -131,7 +131,6 @@ #endif @@ -708,7 +728,7 @@ /** * Open the named driver and find its bootstrap function: _eglMain(). */ -@@ -147,8 +146,12 @@ +@@ -144,8 +143,12 @@ assert(driverPath); @@ -723,7 +743,7 @@ #if defined(_EGL_OS_WINDOWS) /* XXX untested */ -@@ -194,13 +197,13 @@ +@@ -191,13 +194,13 @@ * Load a module and create the driver object. */ static EGLBoolean @@ -740,7 +760,7 @@ return EGL_TRUE; if (mod->BuiltIn) { -@@ -226,7 +229,7 @@ +@@ -223,7 +226,7 @@ } mod->Handle = (void *) lib; @@ -749,7 +769,7 @@ return EGL_TRUE; } -@@ -240,8 +243,10 @@ +@@ -237,8 +240,10 @@ { #if defined(_EGL_OS_UNIX) /* destroy the driver */ @@ -762,7 +782,7 @@ /* * XXX At this point (atexit), the module might be the last reference to -@@ -255,7 +260,9 @@ +@@ -252,7 +257,9 @@ /* XXX Windows unloads DLLs before atexit */ #endif @@ -773,7 +793,7 @@ mod->Handle = NULL; } -@@ -599,17 +606,17 @@ +@@ -596,17 +603,17 @@ while (i < _eglModules->Size) { _EGLModule *mod = (_EGLModule *) _eglModules->Elements[i]; @@ -795,7 +815,7 @@ i++; } } -@@ -661,7 +668,6 @@ +@@ -658,7 +665,6 @@ _eglGetDriverProc(const char *procname) { EGLint i; @@ -803,7 +823,7 @@ if (!_eglModules) { /* load the driver for the default display */ -@@ -673,15 +679,18 @@ +@@ -670,15 +676,18 @@ for (i = 0; i < _eglModules->Size; i++) { _EGLModule *mod = (_EGLModule *) _eglModules->Elements[i]; @@ -830,7 +850,7 @@ --- a/src/gallium/state_trackers/dri/drm/dri2.c +++ b/src/gallium/state_trackers/dri/drm/dri2.c -@@ -266,8 +266,13 @@ +@@ -305,8 +305,13 @@ templ.format = format; templ.bind = bind; @@ -852,12 +872,12 @@ }; static const __DRIdri2LoaderExtension dri2_loader_extension = { -- { __DRI_DRI2_LOADER, 3 }, -+ { __DRI_DRI2_LOADER, 4 }, - dri_get_buffers, - dri_flush_front_buffer, - dri_get_buffers_with_format, -@@ -329,9 +329,11 @@ +- .base = { __DRI_DRI2_LOADER, 3 }, ++ .base = { __DRI_DRI2_LOADER, 4 }, + + .getBuffers = dri_get_buffers, + .flushFrontBuffer = dri_flush_front_buffer, +@@ -331,9 +331,11 @@ switch (format) { case GBM_BO_FORMAT_XRGB8888: case GBM_FORMAT_XRGB8888: @@ -869,7 +889,7 @@ if (usage & GBM_BO_USE_SCANOUT) return 0; break; -@@ -396,6 +398,9 @@ +@@ -398,6 +400,9 @@ case __DRI_IMAGE_FORMAT_ABGR8888: ret = GBM_FORMAT_ABGR8888; break; @@ -879,7 +899,7 @@ default: ret = 0; break; -@@ -404,6 +409,41 @@ +@@ -406,6 +411,41 @@ return ret; } @@ -921,7 +941,7 @@ static struct gbm_bo * gbm_dri_bo_import(struct gbm_device *gbm, uint32_t type, void *buffer, uint32_t usage) -@@ -587,30 +627,7 @@ +@@ -589,30 +629,7 @@ bo->base.base.height = height; bo->base.base.format = format; @@ -947,7 +967,7 @@ - dri_format = __DRI_IMAGE_FORMAT_XRGB2101010; - break; - default: -- return NULL; +- goto failed; - } + dri_format = gbm_to_dri_format(format); @@ -955,7 +975,7 @@ dri_use |= __DRI_IMAGE_USE_SCANOUT; --- a/src/mesa/drivers/dri/i915/intel_context.c +++ b/src/mesa/drivers/dri/i915/intel_context.c -@@ -781,24 +781,36 @@ +@@ -775,24 +775,36 @@ */ if (rb->mt && rb->mt->region && @@ -1004,7 +1024,7 @@ --- a/src/mesa/drivers/dri/i965/brw_context.c +++ b/src/mesa/drivers/dri/i965/brw_context.c -@@ -1009,7 +1009,7 @@ +@@ -1018,7 +1018,7 @@ struct intel_renderbuffer *rb, const char *buffer_name); @@ -1013,7 +1033,7 @@ intel_update_image_buffers(struct brw_context *brw, __DRIdrawable *drawable); static void -@@ -1082,9 +1082,7 @@ +@@ -1091,9 +1091,7 @@ if (unlikely(INTEL_DEBUG & DEBUG_DRI)) fprintf(stderr, "enter %s, drawable %p\n", __func__, drawable); @@ -1024,7 +1044,7 @@ intel_update_dri2_buffers(brw, drawable); driUpdateFramebufferSize(&brw->ctx, drawable); -@@ -1256,13 +1254,15 @@ +@@ -1267,12 +1265,14 @@ if (num_samples == 0) { if (rb->mt && rb->mt->region && @@ -1033,16 +1053,15 @@ + rb->mt->region->name != 0) return; } else { - if (rb->mt && - rb->mt->singlesample_mt && - rb->mt->singlesample_mt->region && -- rb->mt->singlesample_mt->region->name == buffer->name) -+ rb->mt->singlesample_mt->region->name == buffer->name && -+ rb->mt->singlesample_mt->region->name != 0) + if (rb->singlesample_mt && + rb->singlesample_mt->region && +- rb->singlesample_mt->region->name == buffer->name) ++ rb->singlesample_mt->region->name == buffer->name && ++ rb->singlesample_mt->region->name != 0) return; } -@@ -1274,13 +1274,23 @@ +@@ -1284,13 +1284,24 @@ } intel_miptree_release(&rb->mt); @@ -1053,7 +1072,7 @@ - buffer->pitch, - buffer->name, - buffer_name); -+ if (buffer->name != 0) ++ if (buffer->name) + region = intel_region_alloc_for_handle(brw->intelScreen, + buffer->cpp, + drawable->w, @@ -1070,11 +1089,12 @@ + 0, /* Can we be so stupid? */ + buffer->fd, + buffer_name); - if (!region) - return; - -@@ -1346,7 +1356,7 @@ - region); ++ + if (!region) { + fprintf(stderr, + "Failed to make region for returned DRI2 buffer " +@@ -1370,7 +1381,7 @@ + } } -static void @@ -1082,16 +1102,16 @@ intel_update_image_buffers(struct brw_context *brw, __DRIdrawable *drawable) { struct gl_framebuffer *fb = drawable->driverPrivate; -@@ -1365,7 +1375,7 @@ +@@ -1389,7 +1400,7 @@ else if (front_rb) format = intel_rb_format(front_rb); else - return; + return 0; - if ((brw->is_front_buffer_rendering || brw->is_front_buffer_reading || !back_rb) && front_rb) - buffer_mask |= __DRI_IMAGE_BUFFER_FRONT; -@@ -1373,12 +1383,13 @@ + if (front_rb && (brw_is_front_buffer_drawing(fb) || + brw_is_front_buffer_reading(fb) || !back_rb)) { +@@ -1399,12 +1410,13 @@ if (back_rb) buffer_mask |= __DRI_IMAGE_BUFFER_BACK; @@ -1111,7 +1131,7 @@ if (images.image_mask & __DRI_IMAGE_BUFFER_FRONT) { drawable->w = images.front->width; -@@ -1398,4 +1409,5 @@ +@@ -1424,4 +1436,5 @@ images.back, __DRI_IMAGE_BUFFER_BACK); } diff --git a/debian/patches/fix-bsymbolic-madness.patch b/debian/patches/fix-bsymbolic-madness.patch deleted file mode 100644 index 0d4822f1e6f..00000000000 --- a/debian/patches/fix-bsymbolic-madness.patch +++ /dev/null @@ -1,121 +0,0 @@ -diff --git a/src/gallium/targets/dri-nouveau/Makefile.am b/src/gallium/targets/dri-nouveau/Makefile.am -index 4bd4e21..f34acf8 100644 ---- a/src/gallium/targets/dri-nouveau/Makefile.am -+++ b/src/gallium/targets/dri-nouveau/Makefile.am -@@ -35,7 +35,9 @@ dri_LTLIBRARIES = nouveau_dri.la - nodist_EXTRA_nouveau_dri_la_SOURCES = dummy.cpp - nouveau_dri_la_SOURCES = target.c - --nouveau_dri_la_LDFLAGS = $(GALLIUM_DRI_LINKER_FLAGS) -+nouveau_dri_la_LDFLAGS = \ -+ $(GALLIUM_DRI_LINKER_FLAGS) \ -+ -Wl,--dynamic-list=$(srcdir)/nouveau_dri.dyn - - nouveau_dri_la_LIBADD = \ - $(top_builddir)/src/mesa/drivers/dri/common/libdricommon.la \ -diff --git a/src/gallium/targets/dri-nouveau/nouveau_dri.dyn b/src/gallium/targets/dri-nouveau/nouveau_dri.dyn -new file mode 100644 -index 0000000..a10356b ---- /dev/null -+++ b/src/gallium/targets/dri-nouveau/nouveau_dri.dyn -@@ -0,0 +1,3 @@ -+{ -+ nouveau_drm_screen_create; -+}; -diff --git a/src/gallium/targets/r300/dri/Makefile.am b/src/gallium/targets/r300/dri/Makefile.am -index 4bd9ea4..e2becdb 100644 ---- a/src/gallium/targets/r300/dri/Makefile.am -+++ b/src/gallium/targets/r300/dri/Makefile.am -@@ -37,7 +37,9 @@ nodist_EXTRA_r300_dri_la_SOURCES = dummy.cpp - r300_dri_la_SOURCES = \ - drm_target.c - --r300_dri_la_LDFLAGS = $(GALLIUM_DRI_LINKER_FLAGS) -+r300_dri_la_LDFLAGS = \ -+ $(GALLIUM_DRI_LINKER_FLAGS) \ -+ -Wl,--dynamic-list=$(srcdir)/radeon.dyn - - r300_dri_la_LIBADD = \ - $(top_builddir)/src/mesa/drivers/dri/common/libdricommon.la \ -diff --git a/src/gallium/targets/r300/dri/radeon.dyn b/src/gallium/targets/r300/dri/radeon.dyn -new file mode 100644 -index 0000000..8d243dc ---- /dev/null -+++ b/src/gallium/targets/r300/dri/radeon.dyn -@@ -0,0 +1,3 @@ -+{ -+ radeon_drm_winsys_create; -+}; -diff --git a/src/gallium/targets/r600/dri/Makefile.am b/src/gallium/targets/r600/dri/Makefile.am -index 1f13b80..149106f 100644 ---- a/src/gallium/targets/r600/dri/Makefile.am -+++ b/src/gallium/targets/r600/dri/Makefile.am -@@ -36,7 +36,9 @@ dri_LTLIBRARIES = r600_dri.la - r600_dri_la_SOURCES = \ - drm_target.c - --r600_dri_la_LDFLAGS = $(GALLIUM_DRI_LINKER_FLAGS) -+r600_dri_la_LDFLAGS = \ -+ $(GALLIUM_DRI_LINKER_FLAGS) \ -+ -Wl,--dynamic-list=$(srcdir)/../../r300/dri/radeon.dyn - - r600_dri_la_LIBADD = \ - $(top_builddir)/src/mesa/drivers/dri/common/libdricommon.la \ -diff --git a/src/gallium/targets/r600/vdpau/Makefile.am b/src/gallium/targets/r600/vdpau/Makefile.am -index 509b954..d1a528d 100644 ---- a/src/gallium/targets/r600/vdpau/Makefile.am -+++ b/src/gallium/targets/r600/vdpau/Makefile.am -@@ -35,7 +35,8 @@ libvdpau_r600_la_SOURCES = \ - $(top_srcdir)/src/gallium/auxiliary/vl/vl_winsys_dri.c - - libvdpau_r600_la_LDFLAGS = \ -- $(GALLIUM_VDPAU_LINKER_FLAGS) -+ $(GALLIUM_VDPAU_LINKER_FLAGS) \ -+ -Wl,--dynamic-list=$(srcdir)/../../r300/dri/radeon.dyn - - libvdpau_r600_la_LIBADD = \ - $(top_builddir)/src/gallium/drivers/r600/libr600.la \ -diff --git a/src/gallium/targets/radeonsi/dri/Makefile.am b/src/gallium/targets/radeonsi/dri/Makefile.am -index eab28b5..a8db0a8 100644 ---- a/src/gallium/targets/radeonsi/dri/Makefile.am -+++ b/src/gallium/targets/radeonsi/dri/Makefile.am -@@ -37,7 +37,9 @@ nodist_EXTRA_radeonsi_dri_la_SOURCES = dummy.cpp - radeonsi_dri_la_SOURCES = \ - drm_target.c - --radeonsi_dri_la_LDFLAGS = $(GALLIUM_DRI_LINKER_FLAGS) -+radeonsi_dri_la_LDFLAGS = \ -+ $(GALLIUM_DRI_LINKER_FLAGS) \ -+ -Wl,--dynamic-list=$(srcdir)/../../r300/dri/radeon.dyn - - radeonsi_dri_la_LIBADD = \ - $(top_builddir)/src/mesa/drivers/dri/common/libdricommon.la \ -diff --git a/src/gallium/targets/radeonsi/vdpau/Makefile.am b/src/gallium/targets/radeonsi/vdpau/Makefile.am -index 54d65b3..0d53c18 100644 ---- a/src/gallium/targets/radeonsi/vdpau/Makefile.am -+++ b/src/gallium/targets/radeonsi/vdpau/Makefile.am -@@ -36,7 +36,9 @@ libvdpau_radeonsi_la_SOURCES = \ - $(top_srcdir)/src/gallium/auxiliary/vl/vl_winsys_dri.c - - libvdpau_radeonsi_la_LDFLAGS = \ -- $(GALLIUM_VDPAU_LINKER_FLAGS) -+ $(GALLIUM_VDPAU_LINKER_FLAGS) \ -+ -Wl,--dynamic-list=$(srcdir)/../../r300/dri/radeon.dyn -+ - - libvdpau_radeonsi_la_LIBADD = \ - $(top_builddir)/src/gallium/drivers/radeonsi/libradeonsi.la \ -diff --git a/src/gallium/targets/vdpau-nouveau/Makefile.am b/src/gallium/targets/vdpau-nouveau/Makefile.am -index 3cdf103..66738f1 100644 ---- a/src/gallium/targets/vdpau-nouveau/Makefile.am -+++ b/src/gallium/targets/vdpau-nouveau/Makefile.am -@@ -36,7 +36,8 @@ libvdpau_nouveau_la_SOURCES = \ - $(top_srcdir)/src/gallium/auxiliary/vl/vl_winsys_dri.c - - libvdpau_nouveau_la_LDFLAGS = \ -- $(GALLIUM_VDPAU_LINKER_FLAGS) -+ $(GALLIUM_VDPAU_LINKER_FLAGS) \ -+ -Wl,--dynamic-list=$(srcdir)/../dri-nouveau/nouveau_dri.dyn - - libvdpau_nouveau_la_LIBADD = \ - $(top_builddir)/src/gallium/winsys/nouveau/drm/libnouveaudrm.la \ diff --git a/debian/patches/series b/debian/patches/series index 3880f5ec5c2..6178a03eab5 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,5 +1,4 @@ 02_gbm_no_undefined.diff -03_gbm_make_devices_static.diff 04_osmesa_version.diff 07_gallium-fix-build-failure-on-powerpcspe.diff @@ -10,4 +9,3 @@ 120-hide-x86sse.patch egl-platform-mir.patch i915-dont-default-to-2.1.patch -fix-bsymbolic-madness.patch |