debian/changelog | 36 ++++++++++-- debian/control | 28 ++++----- debian/local/control | 1 debian/local/script | 26 ++++++++ debian/not-installed | 3 - debian/patches/11-hurd-ftbfs-again.diff | 87 +++++++++++++++++++++++++++++ debian/patches/12-fix-fdo-31940.diff | 95 ++++++++++++++++++++++++++++++++ debian/patches/series | 2 debian/rules | 36 ++++++++---- 9 files changed, 282 insertions(+), 32 deletions(-)
New commits: commit 88af8334a1d49526be097a977c585d328e141916 Author: Cyril Brulebois <k...@debian.org> Date: Wed Feb 16 11:53:30 2011 +0100 Upload to unstable. diff --git a/debian/changelog b/debian/changelog index 75c9ffb..2715fd7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -mesa (7.10-4) UNRELEASED; urgency=low +mesa (7.10-4) unstable; urgency=low * debian/not-installed: Ignore the same files on *i386. * debian/local/control: Report-with: xserver-xorg{,-core}. @@ -28,7 +28,7 @@ mesa (7.10-4) UNRELEASED; urgency=low Wasserbäch (Closes: #612640): - 12-fix-fdo-31940.diff - -- Cyril Brulebois <k...@debian.org> Tue, 08 Feb 2011 19:19:57 +0100 + -- Cyril Brulebois <k...@debian.org> Wed, 16 Feb 2011 11:53:26 +0100 mesa (7.10-3) unstable; urgency=low commit 02fd3a129c9b693221cb1410a65aa0591dd6d94d Author: Cyril Brulebois <k...@debian.org> Date: Wed Feb 16 11:53:23 2011 +0100 Ignore the same files as *i386 on hurd-i386. diff --git a/debian/changelog b/debian/changelog index d15ee4e..75c9ffb 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,6 +1,6 @@ mesa (7.10-4) UNRELEASED; urgency=low - * debian/not-installed: Ignore the same files on kfreebsd-i386 as i386. + * debian/not-installed: Ignore the same files on *i386. * debian/local/control: Report-with: xserver-xorg{,-core}. * debian/local/script: New bug script, calling glxinfo if available, then the server's bug script. diff --git a/debian/not-installed b/debian/not-installed index bd2a53e..d53a45e 100644 --- a/debian/not-installed +++ b/debian/not-installed @@ -39,8 +39,9 @@ NOT_INSTALLED_i386 = \ usr/lib/i686/cmov/pkgconfig/glu.pc \ usr/lib/i686/cmov/pkgconfig/gl.pc -# Same for linux and kfreebsd on i386: +# Same for linux, kfreebsd, and hurd on i386: NOT_INSTALLED_kfreebsd-i386 = $(NOT_INSTALLED_i386) +NOT_INSTALLED_hurd-i386 = $(NOT_INSTALLED_i386) # Detect the current architecture and add the files if any: DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH) commit 8e9121b58d2662a78f1173b9f88fcc176d622d67 Author: Cyril Brulebois <k...@debian.org> Date: Wed Feb 16 03:41:23 2011 +0100 Remove extraneous changelog entry. diff --git a/debian/changelog b/debian/changelog index 1ff58e3..d15ee4e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,7 +1,6 @@ mesa (7.10-4) UNRELEASED; urgency=low * debian/not-installed: Ignore the same files on kfreebsd-i386 as i386. - * debian/rules: Don't try to build the x11 EGL display on hurd-i386. * debian/local/control: Report-with: xserver-xorg{,-core}. * debian/local/script: New bug script, calling glxinfo if available, then the server's bug script. commit af3436b48d845084a4d013dbbaad6e43d4ac78e1 Author: Cyril Brulebois <k...@debian.org> Date: Wed Feb 16 01:31:42 2011 +0100 Add patch for a crash in dri2_invalidate_drawable, thanks to Kai Wasserbäch (Closes: #612640). diff --git a/debian/changelog b/debian/changelog index c3ad4e7..1ff58e3 100644 --- a/debian/changelog +++ b/debian/changelog @@ -25,6 +25,9 @@ mesa (7.10-4) UNRELEASED; urgency=low * Disable EGL/Gallium/GLES/state trackers on GNU/Hurd. * Fix FTBFS on sparc64, treat it the same way as sparc. Thanks, Aurélien Jarno! (Closes: #613106). + * Add patch for a crash in dri2_invalidate_drawable, thanks to Kai + Wasserbäch (Closes: #612640): + - 12-fix-fdo-31940.diff -- Cyril Brulebois <k...@debian.org> Tue, 08 Feb 2011 19:19:57 +0100 diff --git a/debian/patches/12-fix-fdo-31940.diff b/debian/patches/12-fix-fdo-31940.diff new file mode 100644 index 0000000..7830bd8 --- /dev/null +++ b/debian/patches/12-fix-fdo-31940.diff @@ -0,0 +1,95 @@ +From: Jakob Bornecrantz <wallbra...@gmail.com> +Description: [PATCH] st/dri: Track drawable context bindings + Needs to track this ourself since because we get into a race condition with + the dri_util.c code on make current when rendering to the front buffer. + . + This is what happens: + Old context is rendering to the front buffer. + . + App calls MakeCurrent with a new context. dri_util.c sets + drawable->driContextPriv to the new context and then calls the driver make + current. st/dri make current flushes the old context, which calls back into + st/dri via the flush frontbuffer hook. st/dri calls dri loader flush + frontbuffer, which calls invalidate buffer on the drawable into st/dri. + . + This is where things gets wrong. st/dri grabs the context from the dri + drawable (which now points to the new context) and calls invalidate + framebuffer to the new context which has not yet set the new drawable as its + framebuffers since we have not called make current yet, it asserts. +Bug: https://bugs.freedesktop.org/show_bug.cgi?id=31940 +Origin: other, https://bugs.freedesktop.org/attachment.cgi?id=40689 +--- + src/gallium/state_trackers/dri/common/dri_context.c | 10 +++++++++- + src/gallium/state_trackers/dri/common/dri_drawable.c | 1 + + src/gallium/state_trackers/dri/common/dri_drawable.h | 3 +++ + src/gallium/state_trackers/dri/drm/dri2.c | 2 +- + 4 files changed, 14 insertions(+), 2 deletions(-) + +--- a/src/gallium/state_trackers/dri/common/dri_context.c ++++ b/src/gallium/state_trackers/dri/common/dri_context.c +@@ -141,12 +141,18 @@ GLboolean + dri_unbind_context(__DRIcontext * cPriv) + { + /* dri_util.c ensures cPriv is not null */ ++ struct dri_screen *screen = dri_screen(cPriv->driScreenPriv); + struct dri_context *ctx = dri_context(cPriv); ++ struct dri_drawable *draw = dri_drawable(ctx->dPriv); ++ struct dri_drawable *read = dri_drawable(ctx->rPriv); ++ struct st_api *stapi = screen->st_api; + + if (--ctx->bind_count == 0) { + if (ctx->st == ctx->stapi->get_current(ctx->stapi)) { + ctx->st->flush(ctx->st, PIPE_FLUSH_RENDER_CACHE, NULL); +- ctx->stapi->make_current(ctx->stapi, NULL, NULL, NULL); ++ stapi->make_current(stapi, NULL, NULL, NULL); ++ draw->context = NULL; ++ read->context = NULL; + } + } + +@@ -169,10 +175,12 @@ dri_make_current(__DRIcontext * cPriv, + + ++ctx->bind_count; + ++ draw->context = ctx; + if (ctx->dPriv != driDrawPriv) { + ctx->dPriv = driDrawPriv; + draw->texture_stamp = driDrawPriv->lastStamp - 1; + } ++ read->context = ctx; + if (ctx->rPriv != driReadPriv) { + ctx->rPriv = driReadPriv; + read->texture_stamp = driReadPriv->lastStamp - 1; +--- a/src/gallium/state_trackers/dri/common/dri_drawable.c ++++ b/src/gallium/state_trackers/dri/common/dri_drawable.c +@@ -132,6 +132,7 @@ dri_create_buffer(__DRIscreen * sPriv, + drawable->base.validate = dri_st_framebuffer_validate; + drawable->base.st_manager_private = (void *) drawable; + ++ drawable->screen = screen; + drawable->sPriv = sPriv; + drawable->dPriv = dPriv; + dPriv->driverPrivate = (void *)drawable; +--- a/src/gallium/state_trackers/dri/common/dri_drawable.h ++++ b/src/gallium/state_trackers/dri/common/dri_drawable.h +@@ -41,6 +41,9 @@ struct dri_drawable + struct st_framebuffer_iface base; + struct st_visual stvis; + ++ struct dri_screen *screen; ++ struct dri_context *context; ++ + /* dri */ + __DRIdrawable *dPriv; + __DRIscreen *sPriv; +--- a/src/gallium/state_trackers/dri/drm/dri2.c ++++ b/src/gallium/state_trackers/dri/drm/dri2.c +@@ -51,7 +51,7 @@ static void + dri2_invalidate_drawable(__DRIdrawable *dPriv) + { + struct dri_drawable *drawable = dri_drawable(dPriv); +- struct dri_context *ctx = dri_context(dPriv->driContextPriv); ++ struct dri_context *ctx = drawable->context; + + dri2InvalidateDrawable(dPriv); + drawable->dPriv->lastStamp = *drawable->dPriv->pStamp; diff --git a/debian/patches/series b/debian/patches/series index e67f79e..683d69f 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -5,3 +5,4 @@ 08-kfreebsd-gallium.diff 10-fix-talloc-linking.diff 11-hurd-ftbfs-again.diff +12-fix-fdo-31940.diff commit a6761bc47b5adfa79b4dc2f5bf0887b86a3ded97 Author: Cyril Brulebois <k...@debian.org> Date: Wed Feb 16 01:23:54 2011 +0100 Fix FTBFS on sparc64, treat it the same way as sparc. Thanks, Aurélien Jarno! (Closes: #613106). diff --git a/debian/changelog b/debian/changelog index febf5c2..c3ad4e7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -23,6 +23,8 @@ mesa (7.10-4) UNRELEASED; urgency=low - libgles2-mesa-dbg - libgles2-mesa-dev * Disable EGL/Gallium/GLES/state trackers on GNU/Hurd. + * Fix FTBFS on sparc64, treat it the same way as sparc. Thanks, Aurélien + Jarno! (Closes: #613106). -- Cyril Brulebois <k...@debian.org> Tue, 08 Feb 2011 19:19:57 +0100 diff --git a/debian/rules b/debian/rules index 9e8990a..3048dd3 100755 --- a/debian/rules +++ b/debian/rules @@ -306,7 +306,7 @@ binary-arch: install -pmesa-common-dev dh_compress -s dh_fixperms -s -ifneq ($(DEB_HOST_ARCH), sparc) +ifeq (,$(filter sparc sparc64,$(DEB_HOST_ARCH))) dh_makeshlibs -s -- -c4 else # Temporarily work around FTBFS on sparc, ignore new symbols: commit 7febebffa536992688ca0844829dd90740bdc47c Author: Cyril Brulebois <k...@debian.org> Date: Wed Feb 16 01:18:24 2011 +0100 Rename DIRECT_RENDERING for consistency. diff --git a/debian/rules b/debian/rules index 38929a5..9e8990a 100755 --- a/debian/rules +++ b/debian/rules @@ -63,12 +63,10 @@ DRI_DRIVERS = swrast # hurd doesn't do direct rendering ifeq ($(DEB_HOST_ARCH_OS), hurd) - DIRECT_RENDERING = --disable-driglx-direct - + confflags_DIRECT_RENDERING = --disable-driglx-direct confflags_EGL = --disable-egl confflags_GALLIUM = --disable-gallium else - DIRECT_RENDERING = --enable-driglx-direct EGL_DISPLAYS = x11 GALLIUM_DRIVERS = swrast GALLIUM_STATE_TRACKERS = egl,glx,dri,vega @@ -92,6 +90,7 @@ else GALLIUM_DRIVERS += i915 endif + confflags_DIRECT_RENDERING = --enable-driglx-direct confflags_EGL = --with-egl-platforms="$(EGL_DISPLAYS)" confflags_GALLIUM = $(addprefix --enable-gallium-,$(GALLIUM_DRIVERS)) confflags_GLES = --enable-gles-overlay --enable-gles1 --enable-gles2 @@ -103,11 +102,11 @@ confflags-dri = \ --with-dri-drivers="$(DRI_DRIVERS)" \ --with-dri-driverdir=/usr/lib/dri \ --enable-glx-tls \ + $(confflags_DIRECT_RENDERING) \ $(confflags_EGL) \ $(confflags_GALLIUM) \ $(confflags_GLES) \ $(confflags_STATE_TRACKERS) \ - $(DIRECT_RENDERING) \ $(confflags-common) confflags-osmesa = \ commit 93e524e32eb5d726e5258a0aec579b399b7c4311 Author: Cyril Brulebois <k...@debian.org> Date: Tue Feb 15 20:45:47 2011 +0000 Disable EGL/Gallium/GLES/state trackers on GNU/Hurd. diff --git a/debian/changelog b/debian/changelog index 54e1b91..febf5c2 100644 --- a/debian/changelog +++ b/debian/changelog @@ -22,6 +22,7 @@ mesa (7.10-4) UNRELEASED; urgency=low - libgles2-mesa - libgles2-mesa-dbg - libgles2-mesa-dev + * Disable EGL/Gallium/GLES/state trackers on GNU/Hurd. -- Cyril Brulebois <k...@debian.org> Tue, 08 Feb 2011 19:19:57 +0100 diff --git a/debian/rules b/debian/rules index f99b73b..38929a5 100755 --- a/debian/rules +++ b/debian/rules @@ -60,18 +60,18 @@ confflags-common = \ CFLAGS="$(CFLAGS)" DRI_DRIVERS = swrast -GALLIUM_DRIVERS = swrast - -# hurd doesn't do EGL/DRI2: -ifneq ($(DEB_HOST_ARCH_OS), hurd) - EGL_DISPLAYS = x11 -endif # hurd doesn't do direct rendering ifeq ($(DEB_HOST_ARCH_OS), hurd) DIRECT_RENDERING = --disable-driglx-direct + + confflags_EGL = --disable-egl + confflags_GALLIUM = --disable-gallium else DIRECT_RENDERING = --enable-driglx-direct + EGL_DISPLAYS = x11 + GALLIUM_DRIVERS = swrast + GALLIUM_STATE_TRACKERS = egl,glx,dri,vega ifeq ($(DEB_HOST_ARCH_OS), linux) # Gallium drivers require libdrm-{nouveau,radeon}, only available on Linux @@ -91,19 +91,22 @@ else DRI_DRIVERS += i915 i965 sis unichrome GALLIUM_DRIVERS += i915 endif + + confflags_EGL = --with-egl-platforms="$(EGL_DISPLAYS)" + confflags_GALLIUM = $(addprefix --enable-gallium-,$(GALLIUM_DRIVERS)) + confflags_GLES = --enable-gles-overlay --enable-gles1 --enable-gles2 + confflags_STATE_TRACKERS = --with-state-trackers="$(GALLIUM_STATE_TRACKERS)" endif confflags-dri = \ --with-driver=dri \ --with-dri-drivers="$(DRI_DRIVERS)" \ --with-dri-driverdir=/usr/lib/dri \ - --with-egl-platforms="$(EGL_DISPLAYS)" \ --enable-glx-tls \ - $(addprefix --enable-gallium-,$(GALLIUM_DRIVERS)) \ - --with-state-trackers=egl,glx,dri,vega \ - --enable-gles-overlay \ - --enable-gles1 \ - --enable-gles2 \ + $(confflags_EGL) \ + $(confflags_GALLIUM) \ + $(confflags_GLES) \ + $(confflags_STATE_TRACKERS) \ $(DIRECT_RENDERING) \ $(confflags-common) commit 8c745b7cf087588d6eaf8bf90358f10016379f2d Author: Cyril Brulebois <k...@debian.org> Date: Wed Feb 16 01:11:57 2011 +0100 Make a lot of binary packages linux-any kfreebsd-any. diff --git a/debian/changelog b/debian/changelog index 4210e7c..54e1b91 100644 --- a/debian/changelog +++ b/debian/changelog @@ -7,6 +7,21 @@ mesa (7.10-4) UNRELEASED; urgency=low then the server's bug script. * New patch, thanks to Pino Toscano, fixing FTBFS on GNU/Hurd: - 11-hurd-ftbfs-again.diff + * Make a lot of binary packages linux-any kfreebsd-any: + - libegl1-mesa + - libegl1-mesa-dbg + - libegl1-mesa-dev + - libegl1-mesa-drivers + - libegl1-mesa-drivers-dbg + - libopenvg1-mesa + - libopenvg1-mesa-dbg + - libopenvg1-mesa-dev + - libgles1-mesa + - libgles1-mesa-dbg + - libgles1-mesa-dev + - libgles2-mesa + - libgles2-mesa-dbg + - libgles2-mesa-dev -- Cyril Brulebois <k...@debian.org> Tue, 08 Feb 2011 19:19:57 +0100 diff --git a/debian/control b/debian/control index 38bfcf7..2cd81cd 100644 --- a/debian/control +++ b/debian/control @@ -119,7 +119,7 @@ Description: A free implementation of the OpenGL API -- development files Package: libegl1-mesa Section: libs -Architecture: any +Architecture: linux-any kfreebsd-any Depends: ${shlibs:Depends}, ${misc:Depends}, @@ -139,7 +139,7 @@ Description: A free implementation of the EGL API -- runtime Package: libegl1-mesa-dbg Section: debug Priority: extra -Architecture: any +Architecture: linux-any kfreebsd-any Depends: libegl1-mesa (= ${binary:Version}), ${misc:Depends}, @@ -152,7 +152,7 @@ Description: A free implementation of the EGL API -- debugging symbols Package: libegl1-mesa-dev Section: libdevel -Architecture: any +Architecture: linux-any kfreebsd-any Depends: libegl1-mesa (= ${binary:Version}), libdrm-dev (>= 2.4.19) [!hurd-i386], @@ -175,7 +175,7 @@ Description: A free implementation of the EGL API -- development files Package: libegl1-mesa-drivers Section: libs -Architecture: any +Architecture: linux-any kfreebsd-any Depends: ${shlibs:Depends}, ${misc:Depends}, @@ -191,7 +191,7 @@ Description: A free implementation of the EGL API -- hardware drivers Package: libegl1-mesa-drivers-dbg Section: debug Priority: extra -Architecture: any +Architecture: linux-any kfreebsd-any Depends: libegl1-mesa-drivers (= ${binary:Version}), ${misc:Depends}, @@ -205,7 +205,7 @@ Description: A free implementation of the EGL API -- driver debugging symbols Package: libopenvg1-mesa Section: libs -Architecture: any +Architecture: linux-any kfreebsd-any Depends: ${shlibs:Depends}, ${misc:Depends}, @@ -222,7 +222,7 @@ Description: A free implementation of the OpenVG API -- runtime Package: libopenvg1-mesa-dbg Section: debug Priority: extra -Architecture: any +Architecture: linux-any kfreebsd-any Depends: libopenvg1-mesa (= ${binary:Version}), ${misc:Depends}, @@ -237,7 +237,7 @@ Description: A free implementation of the OpenVG API -- debugging symbols Package: libopenvg1-mesa-dev Section: libdevel -Architecture: any +Architecture: linux-any kfreebsd-any Depends: libopenvg1-mesa (= ${binary:Version}), libegl1-mesa-dev, @@ -254,7 +254,7 @@ Description: A free implementation of the OpenVG API -- development files Package: libgles1-mesa Section: libs -Architecture: any +Architecture: linux-any kfreebsd-any Depends: ${shlibs:Depends}, ${misc:Depends}, @@ -272,7 +272,7 @@ Description: A free implementation of the OpenGL|ES 1.x API -- runtime Package: libgles1-mesa-dbg Section: debug Priority: extra -Architecture: any +Architecture: linux-any kfreebsd-any Depends: libgles1-mesa (= ${binary:Version}), ${misc:Depends}, @@ -288,7 +288,7 @@ Description: A free implementation of the OpenGL|ES 1.x API -- debugging symbols Package: libgles1-mesa-dev Section: libdevel -Architecture: any +Architecture: linux-any kfreebsd-any Depends: libgles1-mesa (= ${binary:Version}), libegl1-mesa-dev, @@ -306,7 +306,7 @@ Description: A free implementation of the OpenGL|ES 1.x API -- development files Package: libgles2-mesa Section: libs -Architecture: any +Architecture: linux-any kfreebsd-any Depends: ${shlibs:Depends}, ${misc:Depends}, @@ -325,7 +325,7 @@ Description: A free implementation of the OpenGL|ES 2.x API -- runtime Package: libgles2-mesa-dbg Section: debug Priority: extra -Architecture: any +Architecture: linux-any kfreebsd-any Depends: libgles2-mesa (= ${binary:Version}), ${misc:Depends}, @@ -342,7 +342,7 @@ Description: A free implementation of the OpenGL|ES 2.x API -- debugging symbols Package: libgles2-mesa-dev Section: libdevel -Architecture: any +Architecture: linux-any kfreebsd-any Depends: libgles2-mesa (= ${binary:Version}), libegl1-mesa-dev, commit a4296d8f4e6af74091ad70a5dc2e079aa1a875cd Author: Cyril Brulebois <k...@debian.org> Date: Wed Feb 16 01:10:56 2011 +0100 New patch, thanks to Pino Toscano, fixing FTBFS on GNU/Hurd. diff --git a/debian/changelog b/debian/changelog index d9c2e60..4210e7c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -5,6 +5,8 @@ mesa (7.10-4) UNRELEASED; urgency=low * debian/local/control: Report-with: xserver-xorg{,-core}. * debian/local/script: New bug script, calling glxinfo if available, then the server's bug script. + * New patch, thanks to Pino Toscano, fixing FTBFS on GNU/Hurd: + - 11-hurd-ftbfs-again.diff -- Cyril Brulebois <k...@debian.org> Tue, 08 Feb 2011 19:19:57 +0100 diff --git a/debian/patches/11-hurd-ftbfs-again.diff b/debian/patches/11-hurd-ftbfs-again.diff new file mode 100644 index 0000000..8c4a86b --- /dev/null +++ b/debian/patches/11-hurd-ftbfs-again.diff @@ -0,0 +1,87 @@ +From c43546d2c9d877df6963a18f93377f93a169d43a Mon Sep 17 00:00:00 2001 +From: Cyril Brulebois <k...@debian.org> +Date: Sun, 13 Feb 2011 06:58:45 +0000 +Subject: [PATCH] Fix FTBFS on GNU/Hurd due to missing PIPE_OS_HURD detection. + +Thanks to Pino Toscano. + +Signed-off-by: Cyril Brulebois <k...@debian.org> +--- + src/gallium/auxiliary/os/os_thread.h | 12 ++++++------ + src/gallium/auxiliary/os/os_time.c | 2 +- + 2 files changed, 7 insertions(+), 7 deletions(-) + +diff --git a/src/gallium/auxiliary/os/os_thread.h b/src/gallium/auxiliary/os/os_thread.h +index a084310..69b61c3 100644 +--- a/src/gallium/auxiliary/os/os_thread.h ++++ b/src/gallium/auxiliary/os/os_thread.h +@@ -40,7 +40,7 @@ + #include "util/u_debug.h" /* for assert */ + + +-#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_APPLE) || defined(PIPE_OS_HAIKU) || defined(PIPE_OS_EMBEDDED) || defined(PIPE_OS_CYGWIN) ++#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_APPLE) || defined(PIPE_OS_HAIKU) || defined(PIPE_OS_EMBEDDED) || defined(PIPE_OS_CYGWIN) || defined(PIPE_OS_HURD) + + #include <pthread.h> /* POSIX threads headers */ + #include <stdio.h> /* for perror() */ +@@ -306,7 +306,7 @@ typedef int64_t pipe_condvar; + * pipe_barrier + */ + +-#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_HAIKU) || defined(PIPE_OS_EMBEDDED) ++#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_HAIKU) || defined(PIPE_OS_EMBEDDED) || defined(PIPE_OS_HURD) + + typedef pthread_barrier_t pipe_barrier; + +@@ -434,7 +434,7 @@ pipe_semaphore_wait(pipe_semaphore *sema) + */ + + typedef struct { +-#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_APPLE) || defined(PIPE_OS_HAIKU) || defined(PIPE_OS_EMBEDDED) || defined(PIPE_OS_CYGWIN) ++#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_APPLE) || defined(PIPE_OS_HAIKU) || defined(PIPE_OS_EMBEDDED) || defined(PIPE_OS_CYGWIN) || defined(PIPE_OS_HURD) + pthread_key_t key; + #elif defined(PIPE_SUBSYSTEM_WINDOWS_USER) + DWORD key; +@@ -449,7 +449,7 @@ typedef struct { + static INLINE void + pipe_tsd_init(pipe_tsd *tsd) + { +-#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_APPLE) || defined(PIPE_OS_HAIKU) || defined(PIPE_OS_EMBEDDED) || defined(PIPE_OS_CYGWIN) ++#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_APPLE) || defined(PIPE_OS_HAIKU) || defined(PIPE_OS_EMBEDDED) || defined(PIPE_OS_CYGWIN) || defined(PIPE_OS_HURD) + if (pthread_key_create(&tsd->key, NULL/*free*/) != 0) { + perror("pthread_key_create(): failed to allocate key for thread specific data"); + exit(-1); +@@ -466,7 +466,7 @@ pipe_tsd_get(pipe_tsd *tsd) + if (tsd->initMagic != (int) PIPE_TSD_INIT_MAGIC) { + pipe_tsd_init(tsd); + } +-#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_APPLE) || defined(PIPE_OS_HAIKU) || defined(PIPE_OS_EMBEDDED) || defined(PIPE_OS_CYGWIN) ++#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_APPLE) || defined(PIPE_OS_HAIKU) || defined(PIPE_OS_EMBEDDED) || defined(PIPE_OS_CYGWIN) || defined(PIPE_OS_HURD) + return pthread_getspecific(tsd->key); + #elif defined(PIPE_SUBSYSTEM_WINDOWS_USER) + assert(0); +@@ -483,7 +483,7 @@ pipe_tsd_set(pipe_tsd *tsd, void *value) + if (tsd->initMagic != (int) PIPE_TSD_INIT_MAGIC) { + pipe_tsd_init(tsd); + } +-#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_APPLE) || defined(PIPE_OS_HAIKU) || defined(PIPE_OS_EMBEDDED) || defined(PIPE_OS_CYGWIN) ++#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_APPLE) || defined(PIPE_OS_HAIKU) || defined(PIPE_OS_EMBEDDED) || defined(PIPE_OS_CYGWIN) || defined(PIPE_OS_HURD) + if (pthread_setspecific(tsd->key, value) != 0) { + perror("pthread_set_specific() failed"); + exit(-1); +diff --git a/src/gallium/auxiliary/os/os_time.c b/src/gallium/auxiliary/os/os_time.c +index 8490721..edf9483 100644 +--- a/src/gallium/auxiliary/os/os_time.c ++++ b/src/gallium/auxiliary/os/os_time.c +@@ -37,7 +37,7 @@ + + #if !defined(PIPE_OS_EMBEDDED) + +-#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_APPLE) || defined(PIPE_OS_HAIKU) || defined(PIPE_OS_CYGWIN) ++#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_APPLE) || defined(PIPE_OS_HAIKU) || defined(PIPE_OS_CYGWIN) || defined(PIPE_OS_HURD) + # include <sys/time.h> /* timeval */ + #elif defined(PIPE_SUBSYSTEM_WINDOWS_DISPLAY) + # include <windows.h> +-- +1.7.1 + diff --git a/debian/patches/series b/debian/patches/series index 2d471e2..e67f79e 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -4,3 +4,4 @@ 06_kfreebsd-ftbfs.diff 08-kfreebsd-gallium.diff 10-fix-talloc-linking.diff +11-hurd-ftbfs-again.diff commit 7699c1b0144ec131eab98cbc71fbfc0614926870 Author: Cyril Brulebois <k...@debian.org> Date: Wed Feb 9 17:19:06 2011 +0100 Finally install bug control & script. diff --git a/debian/rules b/debian/rules index a635c76..f99b73b 100755 --- a/debian/rules +++ b/debian/rules @@ -271,6 +271,12 @@ binary-arch: install dh_installman -s dh_lintian -s dh_link -s + # Install bug control and script: + set -e; for p in `dh_listpackages -s`; do \ + install -d debian/$$p/usr/share/bug/$$p && \ + install -m 644 debian/local/control debian/$$p/usr/share/bug/$$p && \ + install -m 755 debian/local/script debian/$$p/usr/share/bug/$$p; \ + done dh_strip -plibgl1-mesa-swx11 --dbg-package=libgl1-mesa-swx11-dbg dh_strip -plibgl1-mesa-glx --dbg-package=libgl1-mesa-glx-dbg dh_strip -plibgl1-mesa-dri --dbg-package=libgl1-mesa-dri-dbg commit ee6b47cee90c80d6cdda19e021bfeb4625293828 Author: Cyril Brulebois <k...@debian.org> Date: Wed Feb 9 17:12:26 2011 +0100 debian/local/control: Report-with: xserver-xorg{,-core}. diff --git a/debian/changelog b/debian/changelog index f3527ae..d9c2e60 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,6 +2,7 @@ mesa (7.10-4) UNRELEASED; urgency=low * debian/not-installed: Ignore the same files on kfreebsd-i386 as i386. * debian/rules: Don't try to build the x11 EGL display on hurd-i386. + * debian/local/control: Report-with: xserver-xorg{,-core}. * debian/local/script: New bug script, calling glxinfo if available, then the server's bug script. diff --git a/debian/local/control b/debian/local/control new file mode 100644 index 0000000..ffd3ee4 --- /dev/null +++ b/debian/local/control @@ -0,0 +1 @@ +report-with: xserver-xorg xserver-xorg-core commit de6969989826bfb207c2b9332bb7a94ee26de23e Author: Cyril Brulebois <k...@debian.org> Date: Wed Feb 9 17:09:52 2011 +0100 debian/local/script: New bug script, calling glxinfo if available, then the server's bug script. diff --git a/debian/changelog b/debian/changelog index da2cc5f..f3527ae 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,6 +2,8 @@ mesa (7.10-4) UNRELEASED; urgency=low * debian/not-installed: Ignore the same files on kfreebsd-i386 as i386. * debian/rules: Don't try to build the x11 EGL display on hurd-i386. + * debian/local/script: New bug script, calling glxinfo if available, + then the server's bug script. -- Cyril Brulebois <k...@debian.org> Tue, 08 Feb 2011 19:19:57 +0100 diff --git a/debian/local/script b/debian/local/script new file mode 100644 index 0000000..fb6b56c --- /dev/null +++ b/debian/local/script @@ -0,0 +1,26 @@ +#!/bin/sh + +SERVER_BUG_SCRIPT=/usr/share/bug/xserver-xorg-core/script + +exec >&3 + +echo "glxinfo:" +echo "--------" + +if [ -z "$DISPLAY" ]; then + echo "DISPLAY is not set." +else + if which glxinfo >/dev/null 2>&1; then + glxinfo + else + echo "glxinfo is not available (missing mesa-utils package)." + fi +fi + +echo + +if [ -x "$SERVER_BUG_SCRIPT" ]; then + $SERVER_BUG_SCRIPT 3>&1 +else + echo "$SERVER_BUG_SCRIPT not available" +fi commit ea8f7f99dda56cb55f948782e8595fa1782208c9 Author: Cyril Brulebois <k...@debian.org> Date: Wed Feb 9 12:06:01 2011 +0100 debian/rules: Don't try to build the x11 EGL display on hurd-i386. diff --git a/debian/changelog b/debian/changelog index 71e9aee..da2cc5f 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,6 +1,7 @@ mesa (7.10-4) UNRELEASED; urgency=low * debian/not-installed: Ignore the same files on kfreebsd-i386 as i386. + * debian/rules: Don't try to build the x11 EGL display on hurd-i386. -- Cyril Brulebois <k...@debian.org> Tue, 08 Feb 2011 19:19:57 +0100 diff --git a/debian/rules b/debian/rules index 8353f05..a635c76 100755 --- a/debian/rules +++ b/debian/rules @@ -61,7 +61,11 @@ confflags-common = \ DRI_DRIVERS = swrast GALLIUM_DRIVERS = swrast -EGL_DISPLAYS = x11 + +# hurd doesn't do EGL/DRI2: +ifneq ($(DEB_HOST_ARCH_OS), hurd) + EGL_DISPLAYS = x11 +endif # hurd doesn't do direct rendering ifeq ($(DEB_HOST_ARCH_OS), hurd) -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/e1pphbk-0005yh...@alioth.debian.org