debian/changelog | 20 ++ debian/clean | 15 - debian/control | 16 + debian/libgl1-mesa-dev.install | 2 debian/libgl1-mesa-dev.install.in | 2 debian/libgl1-mesa-dri-experimental.lintian-overrides | 3 debian/libgl1-mesa-dri-i686.install | 1 debian/libgl1-mesa-dri-i686.install.in | 1 debian/libgl1-mesa-dri.lintian-overrides | 3 debian/libgl1-mesa-swx11-dev.install | 2 debian/libgl1-mesa-swx11-dev.install.in | 2 debian/libgl1-mesa-swx11-i686.install | 1 debian/libgl1-mesa-swx11-i686.install.in | 1 debian/libgl1-mesa-swx11.install | 1 debian/libgl1-mesa-swx11.install.in | 1 debian/libglu1-mesa-dev.install | 5 debian/libglu1-mesa-dev.install.in | 5 debian/libglu1-mesa.install | 1 debian/libglu1-mesa.install.in | 1 debian/libglw1-mesa-dev.install | 4 debian/libglw1-mesa-dev.install.in | 4 debian/libglw1-mesa.install | 1 debian/libglw1-mesa.install.in | 1 debian/libosmesa6-dev.install | 8 debian/libosmesa6-dev.install.in | 8 debian/libosmesa6.install | 3 debian/libosmesa6.install.in | 3 debian/rules | 12 - src/gallium/drivers/r300/r300_texture.c | 24 -- src/gallium/drivers/r600/r600_pipe.c | 4 src/gallium/state_trackers/wgl/stw_ext_pbuffer.c | 2 src/glsl/ast_to_hir.cpp | 2 src/glsl/ir_print_visitor.cpp | 6 src/glsl/linker.cpp | 149 +++++++++++++----- src/glsl/opt_constant_propagation.cpp | 17 +- src/mesa/drivers/dri/radeon/radeon_screen.c | 3 src/mesa/main/pack.c | 1 src/mesa/main/texstore.c | 9 - src/mesa/program/ir_to_mesa.cpp | 28 +-- src/mesa/state_tracker/st_format.c | 19 +- 40 files changed, 242 insertions(+), 149 deletions(-)
New commits: commit e02e66ee3a347f0a795265c427c3071cd76e5fcc Author: Cyril Brulebois <k...@debian.org> Date: Sun Aug 7 21:50:57 2011 +0200 Upload to unstable. diff --git a/debian/changelog b/debian/changelog index 3292ccc..9338e1d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -mesa (7.10.3-4) UNRELEASED; urgency=medium +mesa (7.10.3-4) unstable; urgency=medium [ Cyril Brulebois ] * Accept libmotif-dev as an alternative to lesstif2-dev in @@ -25,7 +25,7 @@ mesa (7.10.3-4) UNRELEASED; urgency=medium * Fix comments in libegl1-mesa.symbols to avoid impending FTBFS with the upcoming dpkg-dev 1.16.1. - -- Cyril Brulebois <k...@debian.org> Wed, 22 Jun 2011 11:18:36 +0200 + -- Cyril Brulebois <k...@debian.org> Sun, 07 Aug 2011 21:50:46 +0200 mesa (7.10.3-3) unstable; urgency=low commit 3e1960d66e3967f6645522567f0b2dac1aa6b78e Author: Cyril Brulebois <k...@debian.org> Date: Sun Aug 7 21:49:50 2011 +0200 Set urgency to “medium” to speed things up. Migration to testing is a prerequisite for squeeze backports. diff --git a/debian/changelog b/debian/changelog index 67867bd..3292ccc 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -mesa (7.10.3-4) UNRELEASED; urgency=low +mesa (7.10.3-4) UNRELEASED; urgency=medium [ Cyril Brulebois ] * Accept libmotif-dev as an alternative to lesstif2-dev in @@ -18,6 +18,8 @@ mesa (7.10.3-4) UNRELEASED; urgency=low * Use the sed substitution on all debian/*.in files accordingly. * Remove debian/clean, and use the same for loop to remove the generated files. + * Set urgency to “medium” to speed things up. Migration to testing is + a prerequisite for squeeze backports. [ Sven Joachim ] * Fix comments in libegl1-mesa.symbols to avoid impending FTBFS with commit a444ca833e0462dc1faa7f04ff93de64b95a6eb5 Author: Cyril Brulebois <k...@debian.org> Date: Sun Jul 10 00:36:28 2011 +0200 Remove debian/clean, and use the same for loop to remove the generated files. diff --git a/debian/changelog b/debian/changelog index 9443133..67867bd 100644 --- a/debian/changelog +++ b/debian/changelog @@ -16,6 +16,8 @@ mesa (7.10.3-4) UNRELEASED; urgency=low * Rename all remaining *.install files as *.install.in and use “${DEB_HOST_MULTIARCH}” instead of “*”. * Use the sed substitution on all debian/*.in files accordingly. + * Remove debian/clean, and use the same for loop to remove the generated + files. [ Sven Joachim ] * Fix comments in libegl1-mesa.symbols to avoid impending FTBFS with diff --git a/debian/clean b/debian/clean deleted file mode 100644 index f8a01aa..0000000 --- a/debian/clean +++ /dev/null @@ -1,15 +0,0 @@ -debian/mesa-common-dev.install -debian/libopenvg1-mesa.install -debian/libopenvg1-mesa-dev.install -debian/libgles2-mesa.install -debian/libgles2-mesa-dev.install -debian/libgles1-mesa.install -debian/libgles1-mesa-dev.install -debian/libgl1-mesa-glx.install -debian/libgl1-mesa-glx-i686.install -debian/libgl1-mesa-dri.install -debian/libgl1-mesa-dri.install.linux -debian/libgl1-mesa-dri-experimental.install -debian/libegl1-mesa.install -debian/libegl1-mesa-drivers.install -debian/libegl1-mesa-dev.install diff --git a/debian/rules b/debian/rules index 9086eb9..070548d 100755 --- a/debian/rules +++ b/debian/rules @@ -261,6 +261,7 @@ clean: unpatch rm -rf $$(find -name Makefile.in) rm -rf aclocal.m4 missing depcomp install-sh ltmain.sh rm -rf $(STAMP_DIR) + for file in debian/*.in; do rm -f $${file%%.in}; done dh_clean commit cc8fce3273c24a478cca18a71552d7f52df16c04 Author: Cyril Brulebois <k...@debian.org> Date: Sat Jul 9 22:54:12 2011 +0200 Use the sed substitution on all debian/*.in files accordingly. diff --git a/debian/changelog b/debian/changelog index 264e006..9443133 100644 --- a/debian/changelog +++ b/debian/changelog @@ -15,6 +15,7 @@ mesa (7.10.3-4) UNRELEASED; urgency=low library…” in the description of the libglu1-mesa* packages. * Rename all remaining *.install files as *.install.in and use “${DEB_HOST_MULTIARCH}” instead of “*”. + * Use the sed substitution on all debian/*.in files accordingly. [ Sven Joachim ] * Fix comments in libegl1-mesa.symbols to avoid impending FTBFS with diff --git a/debian/rules b/debian/rules index cedef45..9086eb9 100755 --- a/debian/rules +++ b/debian/rules @@ -241,17 +241,10 @@ install: build $(MAKE) -C $(DEB_BUILD_DIR)/$$config DESTDIR=$(CURDIR)/debian/tmp install; \ done $(MAKE) -C $(DEB_BUILD_DIR)/dri DESTDIR=$(CURDIR)/debian/tmp/dri install - for file in mesa-common-dev.install libopenvg1-mesa.install \ - libopenvg1-mesa-dev.install libgles2-mesa.install \ - libgles2-mesa-dev.install libgles1-mesa.install \ - libgles1-mesa-dev.install libgl1-mesa-glx.install \ - libgl1-mesa-glx-i686.install libgl1-mesa-dri.install \ - libgl1-mesa-dri.install.linux libegl1-mesa.install \ - libgl1-mesa-dri-experimental.install \ - libegl1-mesa-drivers.install libegl1-mesa-dev.install; \ + for file in debian/*.in; \ do \ sed -e"s,\$${DEB_HOST_MULTIARCH},$(DEB_HOST_MULTIARCH),g" \ - debian/$${file}.in > debian/$$file; \ + $${file} > $${file%%.in}; \ done clean: unpatch commit 4099db5472d66684140719ccb9dc87534047f3c5 Author: Cyril Brulebois <k...@debian.org> Date: Sat Jul 9 22:46:49 2011 +0200 Rename all remaining *.install files as *.install.in and use “${DEB_HOST_MULTIARCH}” instead of “*”. diff --git a/debian/changelog b/debian/changelog index 389f8a9..264e006 100644 --- a/debian/changelog +++ b/debian/changelog @@ -13,6 +13,8 @@ mesa (7.10.3-4) UNRELEASED; urgency=low packages are only provided in squeeze-backports. * Replace “The OpenGL utility library…” with “Mesa OpenGL utility library…” in the description of the libglu1-mesa* packages. + * Rename all remaining *.install files as *.install.in and use + “${DEB_HOST_MULTIARCH}” instead of “*”. [ Sven Joachim ] * Fix comments in libegl1-mesa.symbols to avoid impending FTBFS with diff --git a/debian/libgl1-mesa-dev.install b/debian/libgl1-mesa-dev.install deleted file mode 100644 index a8c371e..0000000 --- a/debian/libgl1-mesa-dev.install +++ /dev/null @@ -1,2 +0,0 @@ -usr/lib/*/libGL.so -usr/lib/*/pkgconfig/gl.pc diff --git a/debian/libgl1-mesa-dev.install.in b/debian/libgl1-mesa-dev.install.in new file mode 100644 index 0000000..d915191 --- /dev/null +++ b/debian/libgl1-mesa-dev.install.in @@ -0,0 +1,2 @@ +usr/lib/${DEB_HOST_MULTIARCH}/libGL.so +usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig/gl.pc diff --git a/debian/libgl1-mesa-dri-i686.install b/debian/libgl1-mesa-dri-i686.install deleted file mode 100644 index ab0baef..0000000 --- a/debian/libgl1-mesa-dri-i686.install +++ /dev/null @@ -1 +0,0 @@ -dri/usr/lib/*/dri/i686/cmov/*.so diff --git a/debian/libgl1-mesa-dri-i686.install.in b/debian/libgl1-mesa-dri-i686.install.in new file mode 100644 index 0000000..4c1ae9e --- /dev/null +++ b/debian/libgl1-mesa-dri-i686.install.in @@ -0,0 +1 @@ +dri/usr/lib/${DEB_HOST_MULTIARCH}/dri/i686/cmov/*.so diff --git a/debian/libgl1-mesa-swx11-dev.install b/debian/libgl1-mesa-swx11-dev.install deleted file mode 100644 index 09ddbae..0000000 --- a/debian/libgl1-mesa-swx11-dev.install +++ /dev/null @@ -1,2 +0,0 @@ -usr/lib/*/libGL.a -usr/lib/*/libGL.so diff --git a/debian/libgl1-mesa-swx11-dev.install.in b/debian/libgl1-mesa-swx11-dev.install.in new file mode 100644 index 0000000..8318ac8 --- /dev/null +++ b/debian/libgl1-mesa-swx11-dev.install.in @@ -0,0 +1,2 @@ +usr/lib/${DEB_HOST_MULTIARCH}/libGL.a +usr/lib/${DEB_HOST_MULTIARCH}/libGL.so diff --git a/debian/libgl1-mesa-swx11-i686.install b/debian/libgl1-mesa-swx11-i686.install deleted file mode 100644 index 05652a2..0000000 --- a/debian/libgl1-mesa-swx11-i686.install +++ /dev/null @@ -1 +0,0 @@ -usr/lib/*/i686/cmov/libGL.so.* diff --git a/debian/libgl1-mesa-swx11-i686.install.in b/debian/libgl1-mesa-swx11-i686.install.in new file mode 100644 index 0000000..fc0fa69 --- /dev/null +++ b/debian/libgl1-mesa-swx11-i686.install.in @@ -0,0 +1 @@ +usr/lib/${DEB_HOST_MULTIARCH}/i686/cmov/libGL.so.* diff --git a/debian/libgl1-mesa-swx11.install b/debian/libgl1-mesa-swx11.install deleted file mode 100644 index 6fc3110..0000000 --- a/debian/libgl1-mesa-swx11.install +++ /dev/null @@ -1 +0,0 @@ -usr/lib/*/libGL.so.* diff --git a/debian/libgl1-mesa-swx11.install.in b/debian/libgl1-mesa-swx11.install.in new file mode 100644 index 0000000..d333e7b --- /dev/null +++ b/debian/libgl1-mesa-swx11.install.in @@ -0,0 +1 @@ +usr/lib/${DEB_HOST_MULTIARCH}/libGL.so.* diff --git a/debian/libglu1-mesa-dev.install b/debian/libglu1-mesa-dev.install deleted file mode 100644 index 5f24f2a..0000000 --- a/debian/libglu1-mesa-dev.install +++ /dev/null @@ -1,5 +0,0 @@ -usr/include/GL/glu.h -usr/include/GL/glu_mangle.h -usr/lib/*/libGLU.a -usr/lib/*/libGLU.so -usr/lib/*/pkgconfig/glu.pc diff --git a/debian/libglu1-mesa-dev.install.in b/debian/libglu1-mesa-dev.install.in new file mode 100644 index 0000000..e577f6a --- /dev/null +++ b/debian/libglu1-mesa-dev.install.in @@ -0,0 +1,5 @@ +usr/include/GL/glu.h +usr/include/GL/glu_mangle.h +usr/lib/${DEB_HOST_MULTIARCH}/libGLU.a +usr/lib/${DEB_HOST_MULTIARCH}/libGLU.so +usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig/glu.pc diff --git a/debian/libglu1-mesa.install b/debian/libglu1-mesa.install deleted file mode 100644 index aeb2775..0000000 --- a/debian/libglu1-mesa.install +++ /dev/null @@ -1 +0,0 @@ -usr/lib/*/libGLU.so.* diff --git a/debian/libglu1-mesa.install.in b/debian/libglu1-mesa.install.in new file mode 100644 index 0000000..21c51c0 --- /dev/null +++ b/debian/libglu1-mesa.install.in @@ -0,0 +1 @@ +usr/lib/${DEB_HOST_MULTIARCH}/libGLU.so.* diff --git a/debian/libglw1-mesa-dev.install b/debian/libglw1-mesa-dev.install deleted file mode 100644 index c0559e6..0000000 --- a/debian/libglw1-mesa-dev.install +++ /dev/null @@ -1,4 +0,0 @@ -usr/include/GL/GLw*A.h -usr/lib/*/libGLw.a -usr/lib/*/libGLw.so -usr/lib/*/pkgconfig/glw.pc diff --git a/debian/libglw1-mesa-dev.install.in b/debian/libglw1-mesa-dev.install.in new file mode 100644 index 0000000..822fa4a --- /dev/null +++ b/debian/libglw1-mesa-dev.install.in @@ -0,0 +1,4 @@ +usr/include/GL/GLw*A.h +usr/lib/${DEB_HOST_MULTIARCH}/libGLw.a +usr/lib/${DEB_HOST_MULTIARCH}/libGLw.so +usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig/glw.pc diff --git a/debian/libglw1-mesa.install b/debian/libglw1-mesa.install deleted file mode 100644 index dcd1d5a..0000000 --- a/debian/libglw1-mesa.install +++ /dev/null @@ -1 +0,0 @@ -usr/lib/*/libGLw.so.* diff --git a/debian/libglw1-mesa.install.in b/debian/libglw1-mesa.install.in new file mode 100644 index 0000000..14036ee --- /dev/null +++ b/debian/libglw1-mesa.install.in @@ -0,0 +1 @@ +usr/lib/${DEB_HOST_MULTIARCH}/libGLw.so.* diff --git a/debian/libosmesa6-dev.install b/debian/libosmesa6-dev.install deleted file mode 100644 index c15fb4b..0000000 --- a/debian/libosmesa6-dev.install +++ /dev/null @@ -1,8 +0,0 @@ -usr/include/GL/osmesa.h -usr/lib/*/libOSMesa.a -usr/lib/*/libOSMesa.so -usr/lib/*/libOSMesa16.a -usr/lib/*/libOSMesa16.so -usr/lib/*/libOSMesa32.a -usr/lib/*/libOSMesa32.so -usr/lib/*/pkgconfig/osmesa.pc diff --git a/debian/libosmesa6-dev.install.in b/debian/libosmesa6-dev.install.in new file mode 100644 index 0000000..8453da0 --- /dev/null +++ b/debian/libosmesa6-dev.install.in @@ -0,0 +1,8 @@ +usr/include/GL/osmesa.h +usr/lib/${DEB_HOST_MULTIARCH}/libOSMesa.a +usr/lib/${DEB_HOST_MULTIARCH}/libOSMesa.so +usr/lib/${DEB_HOST_MULTIARCH}/libOSMesa16.a +usr/lib/${DEB_HOST_MULTIARCH}/libOSMesa16.so +usr/lib/${DEB_HOST_MULTIARCH}/libOSMesa32.a +usr/lib/${DEB_HOST_MULTIARCH}/libOSMesa32.so +usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig/osmesa.pc diff --git a/debian/libosmesa6.install b/debian/libosmesa6.install deleted file mode 100644 index 444cb13..0000000 --- a/debian/libosmesa6.install +++ /dev/null @@ -1,3 +0,0 @@ -usr/lib/*/libOSMesa.so.* -usr/lib/*/libOSMesa16.so.* -usr/lib/*/libOSMesa32.so.* diff --git a/debian/libosmesa6.install.in b/debian/libosmesa6.install.in new file mode 100644 index 0000000..5bfc5a3 --- /dev/null +++ b/debian/libosmesa6.install.in @@ -0,0 +1,3 @@ +usr/lib/${DEB_HOST_MULTIARCH}/libOSMesa.so.* +usr/lib/${DEB_HOST_MULTIARCH}/libOSMesa16.so.* +usr/lib/${DEB_HOST_MULTIARCH}/libOSMesa32.so.* commit d88f7e9338e81114967be750574ec8d1f251c8bf Author: Cyril Brulebois <k...@debian.org> Date: Sun Jun 19 00:35:06 2011 +0200 Replace “The OpenGL utility library…” with “Mesa OpenGL utility library…” in the description of the libglu1-mesa* packages. Conflicts: debian/changelog Cherry-picked from debian-experimental. diff --git a/debian/changelog b/debian/changelog index dae76ea..389f8a9 100644 --- a/debian/changelog +++ b/debian/changelog @@ -11,6 +11,8 @@ mesa (7.10.3-4) UNRELEASED; urgency=low multiarch) to wheezy (with multiarch). * Add lintian overrides for breaks-without-version accordingly, those packages are only provided in squeeze-backports. + * Replace “The OpenGL utility library…” with “Mesa OpenGL utility + library…” in the description of the libglu1-mesa* packages. [ Sven Joachim ] * Fix comments in libegl1-mesa.symbols to avoid impending FTBFS with diff --git a/debian/control b/debian/control index baee989..aa88d18 100644 --- a/debian/control +++ b/debian/control @@ -639,7 +639,7 @@ Conflicts: mesag3 (<< 5.0.0-1), xlibmesa3, libglu1 Replaces: libglu1 Pre-Depends: ${misc:Pre-Depends} Multi-Arch: same -Description: The OpenGL utility library (GLU) +Description: Mesa OpenGL utility library (GLU) GLU offers simple interfaces for building mipmaps; checking for the presence of extensions in the OpenGL (or other libraries which follow the same conventions for advertising extensions); drawing @@ -663,7 +663,7 @@ Depends: Provides: libglu-dev, xlibmesa-glu-dev Conflicts: mesag-dev (<< 5.0.0-1), mesa-glide2-dev (<< 5.0.0-1), mesag3+ggi-dev (<< 5.0.0-1), xlibmesa-dev Replaces: libglu-dev -Description: The OpenGL utility library -- development files +Description: Mesa OpenGL utility library -- development files Includes headers and static libraries for compiling programs with GLU. . For a complete description of GLU, please look at the libglu1-mesa commit 413424265828e8c0fc15b269e3752f466e1687b4 Author: Cyril Brulebois <k...@debian.org> Date: Sat Jul 9 13:56:14 2011 +0200 Add lintian overrides for breaks-without-version accordingly. Those packages are only provided in squeeze-backports. diff --git a/debian/changelog b/debian/changelog index 15ae1b7..dae76ea 100644 --- a/debian/changelog +++ b/debian/changelog @@ -9,6 +9,8 @@ mesa (7.10.3-4) UNRELEASED; urgency=low * Add Breaks: {xserver-xorg-core,libgl1-mesa-glx}-no-multiarch to libgl1-mesa-dri* to handle upgrades from squeeze-backports (without multiarch) to wheezy (with multiarch). + * Add lintian overrides for breaks-without-version accordingly, those + packages are only provided in squeeze-backports. [ Sven Joachim ] * Fix comments in libegl1-mesa.symbols to avoid impending FTBFS with diff --git a/debian/libgl1-mesa-dri-experimental.lintian-overrides b/debian/libgl1-mesa-dri-experimental.lintian-overrides new file mode 100644 index 0000000..e1bec96 --- /dev/null +++ b/debian/libgl1-mesa-dri-experimental.lintian-overrides @@ -0,0 +1,3 @@ +# virtual packages only: +breaks-without-version libgl1-mesa-glx-no-multiarch +breaks-without-version xserver-xorg-core-no-multiarch diff --git a/debian/libgl1-mesa-dri.lintian-overrides b/debian/libgl1-mesa-dri.lintian-overrides new file mode 100644 index 0000000..e1bec96 --- /dev/null +++ b/debian/libgl1-mesa-dri.lintian-overrides @@ -0,0 +1,3 @@ +# virtual packages only: +breaks-without-version libgl1-mesa-glx-no-multiarch +breaks-without-version xserver-xorg-core-no-multiarch commit 315b84a34652e3a2aa716c68238bd39fa66f9bee Author: Cyril Brulebois <k...@debian.org> Date: Sat Jul 9 13:18:54 2011 +0200 Add Breaks: {xserver-xorg-core,libgl1-mesa-glx}-no-multiarch to libgl1-mesa-dri*. This helps handling upgrades from squeeze-backports (without multiarch) to wheezy (with multiarch). diff --git a/debian/changelog b/debian/changelog index 6875177..15ae1b7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -6,6 +6,9 @@ mesa (7.10.3-4) UNRELEASED; urgency=low (Closes: #631236). * Merge upstream 7.10 branch up to e041956cb2. * Wrap Breaks fields. + * Add Breaks: {xserver-xorg-core,libgl1-mesa-glx}-no-multiarch to + libgl1-mesa-dri* to handle upgrades from squeeze-backports (without + multiarch) to wheezy (with multiarch). [ Sven Joachim ] * Fix comments in libegl1-mesa.symbols to avoid impending FTBFS with diff --git a/debian/control b/debian/control index b6839a1..baee989 100644 --- a/debian/control +++ b/debian/control @@ -477,7 +477,9 @@ Conflicts: xlibmesa-dri (<< 1:7.0.0) Replaces: xlibmesa-dri (<< 1:7.0.0) Breaks: xserver-xorg-core (<< 2:1.10.2-2), + xserver-xorg-core-no-multiarch, libgl1-mesa-glx (<< 7.10.2-4), + libgl1-mesa-glx-no-multiarch, Multi-Arch: same Description: free implementation of the OpenGL API -- DRI modules This version of Mesa provides GLX and DRI capabilities: it is capable of @@ -521,7 +523,9 @@ Depends: ${misc:Depends}, Breaks: xserver-xorg-core (<< 2:1.10.2-2), + xserver-xorg-core-no-multiarch, libgl1-mesa-glx (<< 7.10.2-4), + libgl1-mesa-glx-no-multiarch, Multi-Arch: same Description: free implementation of the OpenGL API -- Extra DRI modules This version of Mesa provides GLX and DRI capabilities: it is capable of commit 672791631b7be96129112701b2dba0907dfc87f8 Author: Cyril Brulebois <k...@debian.org> Date: Sat Jul 9 13:10:25 2011 +0200 Wrap Breaks fields. diff --git a/debian/changelog b/debian/changelog index c0169e0..6875177 100644 --- a/debian/changelog +++ b/debian/changelog @@ -5,6 +5,7 @@ mesa (7.10.3-4) UNRELEASED; urgency=low libglw1-mesa-dev's dependencies, as requested by Michael Hanke (Closes: #631236). * Merge upstream 7.10 branch up to e041956cb2. + * Wrap Breaks fields. [ Sven Joachim ] * Fix comments in libegl1-mesa.symbols to avoid impending FTBFS with diff --git a/debian/control b/debian/control index 89a227e..b6839a1 100644 --- a/debian/control +++ b/debian/control @@ -475,7 +475,9 @@ Depends: Suggests: libglide3 Conflicts: xlibmesa-dri (<< 1:7.0.0) Replaces: xlibmesa-dri (<< 1:7.0.0) -Breaks: xserver-xorg-core (<< 2:1.10.2-2), libgl1-mesa-glx (<< 7.10.2-4) +Breaks: + xserver-xorg-core (<< 2:1.10.2-2), + libgl1-mesa-glx (<< 7.10.2-4), Multi-Arch: same Description: free implementation of the OpenGL API -- DRI modules This version of Mesa provides GLX and DRI capabilities: it is capable of @@ -517,7 +519,9 @@ Architecture: linux-any Depends: ${shlibs:Depends}, ${misc:Depends}, -Breaks: xserver-xorg-core (<< 2:1.10.2-2), libgl1-mesa-glx (<< 7.10.2-4) +Breaks: + xserver-xorg-core (<< 2:1.10.2-2), + libgl1-mesa-glx (<< 7.10.2-4), Multi-Arch: same Description: free implementation of the OpenGL API -- Extra DRI modules This version of Mesa provides GLX and DRI capabilities: it is capable of commit 88453b19f8cd202ebd74b269f277da4c5d0571dd Author: Cyril Brulebois <k...@debian.org> Date: Sat Jul 9 12:51:50 2011 +0200 Bump changelog. diff --git a/debian/changelog b/debian/changelog index de0e26c..c0169e0 100644 --- a/debian/changelog +++ b/debian/changelog @@ -4,6 +4,7 @@ mesa (7.10.3-4) UNRELEASED; urgency=low * Accept libmotif-dev as an alternative to lesstif2-dev in libglw1-mesa-dev's dependencies, as requested by Michael Hanke (Closes: #631236). + * Merge upstream 7.10 branch up to e041956cb2. [ Sven Joachim ] * Fix comments in libegl1-mesa.symbols to avoid impending FTBFS with commit e041956cb230209e6ccf9d4a14336d0219350183 Author: Marek Olšák <mar...@gmail.com> Date: Mon Jun 27 19:01:25 2011 +0200 st/mesa: use the first non-VOID channel in st_format_datatype Otherwise PIPE_FORMAT_X8B8G8R8_UNORM and friends would fail. NOTE: This is a candidate for the 7.10 and 7.11 branches. Reviewed-by: Brian Paul <bri...@vmware.com> (cherry picked from commit 292148dc4b18958d4447df7596311bd2f09fd44f) diff --git a/src/mesa/state_tracker/st_format.c b/src/mesa/state_tracker/st_format.c index f9b6096..d9c3b30 100644 --- a/src/mesa/state_tracker/st_format.c +++ b/src/mesa/state_tracker/st_format.c @@ -67,10 +67,18 @@ GLenum st_format_datatype(enum pipe_format format) { const struct util_format_description *desc; + int i; desc = util_format_description(format); assert(desc); + /* Find the first non-VOID channel. */ + for (i = 0; i < 4; i++) { + if (desc->channel[i].type != UTIL_FORMAT_TYPE_VOID) { + break; + } + } + if (desc->layout == UTIL_FORMAT_LAYOUT_PLAIN) { if (format == PIPE_FORMAT_B5G5R5A1_UNORM || format == PIPE_FORMAT_B5G6R5_UNORM) { @@ -84,21 +92,26 @@ st_format_datatype(enum pipe_format format) } else { const GLuint size = format_max_bits(format); + + assert(i < 4); + if (i == 4) + return GL_NONE; + if (size == 8) { - if (desc->channel[0].type == UTIL_FORMAT_TYPE_UNSIGNED) + if (desc->channel[i].type == UTIL_FORMAT_TYPE_UNSIGNED) return GL_UNSIGNED_BYTE; else return GL_BYTE; } else if (size == 16) { - if (desc->channel[0].type == UTIL_FORMAT_TYPE_UNSIGNED) + if (desc->channel[i].type == UTIL_FORMAT_TYPE_UNSIGNED) return GL_UNSIGNED_SHORT; else return GL_SHORT; } else { assert( size <= 32 ); - if (desc->channel[0].type == UTIL_FORMAT_TYPE_UNSIGNED) + if (desc->channel[i].type == UTIL_FORMAT_TYPE_UNSIGNED) return GL_UNSIGNED_INT; else return GL_INT; commit c286f7870f8b3f280f9fc3f417bbf689593658e9 Author: Ian Romanick <ian.d.roman...@intel.com> Date: Mon Jun 27 17:59:58 2011 -0700 linker: Assign locations for fragment shader output Fixes an assertion failure in the piglib out-01.frag ARB_explicit_attrib_location test. The locations set via the layout qualifier in fragment shader were not being applied to the shader outputs. As a result all of these variables still had a location of -1 set. This may need some more work for pre-3.0 contexts. The problem is dealing with generic outputs that lack a layout qualifier. There is no way for the application to specify a location (glBindFragDataLocation is not supported) or query the location assigned by the linker (glGetFragDataLocation is not supported). NOTE: This is a candidate for the 7.10 and 7.11 branches. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=38624 Reviewed-by: Eric Anholt <e...@anholt.net> Cc: Kenneth Graunke <kenn...@whitecape.org> Cc: Vinson Lee <v...@vmware.com> (cherry picked from commit d32d4f780f9dad122adb63086da266aec6e88850) diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp index 03d0d79..dbbaa2c 100644 --- a/src/glsl/linker.cpp +++ b/src/glsl/linker.cpp @@ -1158,16 +1158,43 @@ find_available_slots(unsigned used_mask, unsigned needed_count) } +/** + * Assign locations for either VS inputs for FS outputs + * + * \param prog Shader program whose variables need locations assigned + * \param target_index Selector for the program target to receive location + * assignmnets. Must be either \c MESA_SHADER_VERTEX or + * \c MESA_SHADER_FRAGMENT. + * \param max_index Maximum number of generic locations. This corresponds + * to either the maximum number of draw buffers or the + * maximum number of generic attributes. + * + * \return + * If locations are successfully assigned, true is returned. Otherwise an + * error is emitted to the shader link log and false is returned. + * + * \bug + * Locations set via \c glBindFragDataLocation are not currently supported. + * Only locations assigned automatically by the linker, explicitly set by a + * layout qualifier, or explicitly set by a built-in variable (e.g., \c + * gl_FragColor) are supported for fragment shaders. + */ bool -assign_attribute_locations(gl_shader_program *prog, unsigned max_attribute_index) +assign_attribute_or_color_locations(gl_shader_program *prog, + unsigned target_index, + unsigned max_index) { - /* Mark invalid attribute locations as being used. + /* Mark invalid locations as being used. */ - unsigned used_locations = (max_attribute_index >= 32) - ? ~0 : ~((1 << max_attribute_index) - 1); + unsigned used_locations = (max_index >= 32) + ? ~0 : ~((1 << max_index) - 1); - gl_shader *const sh = prog->_LinkedShaders[0]; - assert(sh->Type == GL_VERTEX_SHADER); + assert((target_index == MESA_SHADER_VERTEX) + || (target_index == MESA_SHADER_FRAGMENT)); + + gl_shader *const sh = prog->_LinkedShaders[target_index]; + if (sh == NULL) + return true; /* Operate in a total of four passes. * @@ -1184,9 +1211,16 @@ assign_attribute_locations(gl_shader_program *prog, unsigned max_attribute_index * 4. Assign locations to any inputs without assigned locations. */ - invalidate_variable_locations(sh, ir_var_in, VERT_ATTRIB_GENERIC0); + const int generic_base = (target_index == MESA_SHADER_VERTEX) + ? VERT_ATTRIB_GENERIC0 : FRAG_RESULT_DATA0; + + const enum ir_variable_mode direction = + (target_index == MESA_SHADER_VERTEX) ? ir_var_in : ir_var_out; + - if (prog->Attributes != NULL) { + invalidate_variable_locations(sh, direction, generic_base); + + if ((target_index == MESA_SHADER_VERTEX) && (prog->Attributes != NULL)) { for (unsigned i = 0; i < prog->Attributes->NumParameters; i++) { ir_variable *const var = sh->symbols->get_variable(prog->Attributes->Parameters[i].Name); @@ -1273,15 +1307,15 @@ assign_attribute_locations(gl_shader_program *prog, unsigned max_attribute_index foreach_list(node, sh->ir) { ir_variable *const var = ((ir_instruction *) node)->as_variable(); - if ((var == NULL) || (var->mode != ir_var_in)) + if ((var == NULL) || (var->mode != direction)) continue; if (var->explicit_location) { const unsigned slots = count_attribute_slots(var->type); const unsigned use_mask = (1 << slots) - 1; - const int attr = var->location - VERT_ATTRIB_GENERIC0; + const int attr = var->location - generic_base; - if ((var->location >= (int)(max_attribute_index + VERT_ATTRIB_GENERIC0)) + if ((var->location >= (int)(max_index + generic_base)) || (var->location < 0)) { linker_error_printf(prog, "invalid explicit location %d specified for " @@ -1289,7 +1323,7 @@ assign_attribute_locations(gl_shader_program *prog, unsigned max_attribute_index (var->location < 0) ? var->location : attr, var->name); return false; - } else if (var->location >= VERT_ATTRIB_GENERIC0) { + } else if (var->location >= generic_base) { used_locations |= (use_mask << attr); } } @@ -1313,14 +1347,16 @@ assign_attribute_locations(gl_shader_program *prog, unsigned max_attribute_index qsort(to_assign, num_attr, sizeof(to_assign[0]), temp_attr::compare); - /* VERT_ATTRIB_GENERIC0 is a psdueo-alias for VERT_ATTRIB_POS. It can only - * be explicitly assigned by via glBindAttribLocation. Mark it as reserved - * to prevent it from being automatically allocated below. - */ - find_deref_visitor find("gl_Vertex"); - find.run(sh->ir); - if (find.variable_found()) - used_locations |= (1 << 0); + if (target_index == MESA_SHADER_VERTEX) { + /* VERT_ATTRIB_GENERIC0 is a pseudo-alias for VERT_ATTRIB_POS. It can + * only be explicitly assigned by via glBindAttribLocation. Mark it as + * reserved to prevent it from being automatically allocated below. + */ + find_deref_visitor find("gl_Vertex"); + find.run(sh->ir); + if (find.variable_found()) + used_locations |= (1 << 0); + } for (unsigned i = 0; i < num_attr; i++) { /* Mask representing the contiguous slots that will be used by this @@ -1331,14 +1367,17 @@ assign_attribute_locations(gl_shader_program *prog, unsigned max_attribute_index int location = find_available_slots(used_locations, to_assign[i].slots); if (location < 0) { + const char *const string = (target_index == MESA_SHADER_VERTEX) + ? "vertex shader input" : "fragment shader output"; + linker_error_printf(prog, "insufficient contiguous attribute locations " - "available for vertex shader input `%s'", - to_assign[i].var->name); + "available for %s `%s'", + string, to_assign[i].var->name); return false; } - to_assign[i].var->location = VERT_ATTRIB_GENERIC0 + location; + to_assign[i].var->location = generic_base + location; used_locations |= (use_mask << location); } @@ -1635,16 +1674,19 @@ link_shaders(struct gl_context *ctx, struct gl_shader_program *prog) assign_uniform_locations(prog); - if (prog->_LinkedShaders[MESA_SHADER_VERTEX] != NULL) { - /* FINISHME: The value of the max_attribute_index parameter is - * FINISHME: implementation dependent based on the value of - * FINISHME: GL_MAX_VERTEX_ATTRIBS. GL_MAX_VERTEX_ATTRIBS must be - * FINISHME: at least 16, so hardcode 16 for now. - */ - if (!assign_attribute_locations(prog, 16)) { - prog->LinkStatus = false; - goto done; - } + /* FINISHME: The value of the max_attribute_index parameter is + * FINISHME: implementation dependent based on the value of + * FINISHME: GL_MAX_VERTEX_ATTRIBS. GL_MAX_VERTEX_ATTRIBS must be + * FINISHME: at least 16, so hardcode 16 for now. + */ + if (!assign_attribute_or_color_locations(prog, MESA_SHADER_VERTEX, 16)) { + prog->LinkStatus = false; + goto done; + } + + if (!assign_attribute_or_color_locations(prog, MESA_SHADER_FRAGMENT, ctx->Const.MaxDrawBuffers)) { + prog->LinkStatus = false; + goto done; } unsigned prev; commit 4e2a5d013d24105cb746b9ccd4d3448f938768dc Author: Paul Berry <stereotype...@gmail.com> Date: Tue Jun 28 09:42:24 2011 -0700 glsl: permit explicit locations on fragment shader outputs, not inputs From the OpenGL docs for GL_ARB_explicit_attrib_location: This extension provides a method to pre-assign attribute locations to named vertex shader inputs and color numbers to named fragment shader outputs. This was accidentally implemented for fragment shader inputs. This patch fixes it to apply to fragment shader outputs. Fixes piglit tests spec/ARB_explicit_attrib_location/1.{10,20}/compiler/layout-{01,03,06,07,08,09,10}.frag Reviewed-by: Ian Romanick <ian.d.roman...@intel.com> NOTE: This is a candidate for the 7.10 and 7.11 branches. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=38624 (cherry picked from commit b078aad8ab22d840456688480a8c27d4664297ce) diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp index c88a745..74252da 100644 --- a/src/glsl/ast_to_hir.cpp +++ b/src/glsl/ast_to_hir.cpp @@ -1918,7 +1918,7 @@ apply_type_qualifier_to_variable(const struct ast_type_qualifier *qual, break; case fragment_shader: - if (!global_scope || (var->mode != ir_var_in)) { + if (!global_scope || (var->mode != ir_var_out)) { fail = true; string = "output"; } commit cd73c06eed3e8ff517d8741eb91b2d3356cfd214 Author: Ian Romanick <ian.d.roman...@intel.com> Date: Wed Jul 6 17:24:54 2011 -0700 glsl: Don't choke when printing an anonymous function parameter This is based on commit 174cef7fee7d400fc89a3ce68b7791d2aa3eb90f, but the code is heavily changed. The original commit modifies ir_print_visitor::unique_name, but there is no such method in 7.10. Instead, this code just modifies ir_print_visitor::visit(ir_variable *ir) to "do the right thing" when ir_variable::name is NULL. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=38584 diff --git a/src/glsl/ir_print_visitor.cpp b/src/glsl/ir_print_visitor.cpp index 0aa0b0a..04927e7 100644 --- a/src/glsl/ir_print_visitor.cpp +++ b/src/glsl/ir_print_visitor.cpp @@ -104,7 +104,11 @@ void ir_print_visitor::visit(ir_variable *ir) cent, inv, mode[ir->mode], interp[ir->interpolation]); print_type(ir->type); - printf(" %s@%p)", ir->name, (void *) ir); + if (ir->name == NULL) { + static unsigned arg = 1; + printf(" parameter@%u)", arg++); + } else + printf(" %s@%p)", ir->name, (void *) ir); } commit 7424f9c1fe0ba57db3d4d19f668835fcea300d5c Author: Ian Romanick <ian.d.roman...@intel.com> Date: Fri Jun 24 17:12:31 2011 -0700 ir_to_mesa: Allocate temporary instructions on the visitor's ralloc context And don't delete them. Let ralloc clean them up. Deleting the temporary IR leaves dangling references in the prog_instruction. That results in a bad dereference when printing the IR with MESA_GLSL=dump. NOTE: This is a candidate for the 7.10 and 7.11 branches. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=38584 Reviewed-by: Eric Anholt <e...@anholt.net> Reviewed-by: Kenneth Graunke <kenn...@whitecape.org> (cherry picked from commit dbda466fc05a6262ba857a7887e16347cf3d3e96) diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp index cd97c0a..71b9fd6 100644 --- a/src/mesa/program/ir_to_mesa.cpp +++ b/src/mesa/program/ir_to_mesa.cpp @@ -827,48 +827,44 @@ ir_to_mesa_visitor::visit(ir_loop *ir) ir_dereference_variable *counter = NULL; if (ir->counter != NULL) - counter = new(ir) ir_dereference_variable(ir->counter); + counter = new(mem_ctx) ir_dereference_variable(ir->counter); if (ir->from != NULL) { assert(ir->counter != NULL); - ir_assignment *a = new(ir) ir_assignment(counter, ir->from, NULL); + ir_assignment *a = + new(mem_ctx) ir_assignment(counter, ir->from, NULL); a->accept(this); - delete a; } ir_to_mesa_emit_op0(NULL, OPCODE_BGNLOOP); if (ir->to) { ir_expression *e = - new(ir) ir_expression(ir->cmp, glsl_type::bool_type, - counter, ir->to); - ir_if *if_stmt = new(ir) ir_if(e); + new(mem_ctx) ir_expression(ir->cmp, glsl_type::bool_type, + counter, ir->to); + ir_if *if_stmt = new(mem_ctx) ir_if(e); - ir_loop_jump *brk = new(ir) ir_loop_jump(ir_loop_jump::jump_break); + ir_loop_jump *brk = + new(mem_ctx) ir_loop_jump(ir_loop_jump::jump_break); if_stmt->then_instructions.push_tail(brk); -- 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/e1qq9dk-0003in...@vasks.debian.org