Hello community,

here is the log from the commit of package Mesa for openSUSE:Factory checked in 
at 2018-02-19 12:59:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/Mesa (Old)
 and      /work/SRC/openSUSE:Factory/.Mesa.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "Mesa"

Mon Feb 19 12:59:37 2018 rev:315 rq:577310 version:unknown

Changes:
--------
--- /work/SRC/openSUSE:Factory/Mesa/Mesa-drivers.changes        2018-02-07 
09:33:26.685495155 +0100
+++ /work/SRC/openSUSE:Factory/.Mesa.new/Mesa-drivers.changes   2018-02-19 
12:59:43.220776643 +0100
@@ -1,0 +2,35 @@
+Fri Feb 16 14:59:04 UTC 2018 - msta...@suse.com
+
+- Split Nouveau and VC4 from the main driver package on all systems
+
+  Fixes (boo#1081210).
+
+-------------------------------------------------------------------
+Thu Feb 15 09:25:16 UTC 2018 - mimi...@gmail.com
+
+- remove %{release} based dependecies
+   Unfortuanetly Mesa and Mesa-drivers can have different release number
+   Release is Commit_Count.Build_Count and build count can be different
+   because both packages have different dependencies
+
+-------------------------------------------------------------------
+Wed Feb 14 09:48:41 UTC 2018 - mimi...@gmail.com
+
+- add u_glsl-linker-error.patch
+  * Fix attaching multiple shader objects for the same stage to a
+    GLSL program triggers a linker error (fdo#104777, bnc#1080492)
+  * Fixes issue with wine applications.
+
+-------------------------------------------------------------------
+Mon Feb 12 12:31:05 UTC 2018 - joop.boo...@opensuse.org
+
+- Added %{release} so the correct package release is used
+  when a package has been patched 
+
+-------------------------------------------------------------------
+Fri Feb  9 13:45:16 UTC 2018 - sndir...@suse.com
+
+- Update to 18.0.0-rc4
+- supersedes u_mesa-st-shader_cache-restore-num_tgsi_tokens-when-loading.patch 
+
+-------------------------------------------------------------------
Mesa.changes: same change

Old:
----
  mesa-18.0.0-rc3.tar.xz
  mesa-18.0.0-rc3.tar.xz.sig
  u_mesa-st-shader_cache-restore-num_tgsi_tokens-when-loading.patch

New:
----
  mesa-18.0.0-rc4.tar.xz
  mesa-18.0.0-rc4.tar.xz.sig
  u_glsl-linker-error.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ Mesa-drivers.spec ++++++
--- /var/tmp/diff_new_pack.vPe7I2/_old  2018-02-19 12:59:53.344411540 +0100
+++ /var/tmp/diff_new_pack.vPe7I2/_new  2018-02-19 12:59:53.348411396 +0100
@@ -43,7 +43,7 @@
 
 %define glamor 1
 %define _name_archive mesa
-%define _version 18.0.0-rc3
+%define _version 18.0.0-rc4
 %define with_opencl 0
 %define with_vulkan 0
 %define with_llvm 0
@@ -141,8 +141,8 @@
 Patch32:        archlinux_glvnd-fix-gl-dot-pc.patch
 # Upstream
 Patch43:        u_mesa-python3-only.patch
-Patch44:        
u_mesa-st-shader_cache-restore-num_tgsi_tokens-when-loading.patch
 Patch45:        n_Disable-AMDGPU-GFX9-Vega-on-LLVM-lessthan-6.0.0.patch
+Patch46:        u_glsl-linker-error.patch
 
 BuildRequires:  autoconf >= 2.60
 BuildRequires:  automake
@@ -467,8 +467,8 @@
 Summary:        Mesa Off-screen rendering extension
 # Wrongly named package shipped .so.8
 Group:          System/Libraries
-Obsoletes:      libOSMesa9 < %{version}-%{release}
-Provides:       libOSMesa9 = %{version}-%{release}
+Obsoletes:      libOSMesa9 < %{version}
+Provides:       libOSMesa9 = %{version}
 
 %description -n libOSMesa8
 OSmesa is a Mesa extension that allows programs to render to an
@@ -533,6 +533,16 @@
 Nouveau's 3D acceleration to work. It is packaged separately
 since it is still experimental.
 
+%package -n Mesa-dri-vc4
+Summary:        Mesa DRI plug-in for 3D acceleration on Raspberry Pi
+Group:          System/Libraries
+Requires:       Mesa = %{version}
+
+%description -n Mesa-dri-vc4
+This package contains vc4_dri.so, which is necessary for 3D
+acceleration on the Raspberry Pi to work. It is packaged separately
+since it is still experimental.
+
 %package -n Mesa-gallium
 Summary:        Mesa Gallium GPU drivers
 Group:          System/Libraries
@@ -750,8 +760,8 @@
 %endif
 
 %patch43 -p1
-%patch44 -p1
 %patch45 -p1
+%patch46 -p1
 
 # Remove requires to libglvnd/libglvnd-devel from baselibs.conf when
 # disabling libglvnd build; ugly ...
@@ -1170,11 +1180,12 @@
 %files -n Mesa-dri
 %dir %{_libdir}/dri
 %{_libdir}/dri/*_dri.so
-%if 0%{?is_opensuse}
 %ifarch %ix86 x86_64 aarch64 %arm ppc64 ppc64le
 %exclude %{_libdir}/dri/nouveau_dri.so
 %exclude %{_libdir}/dri/nouveau_vieux_dri.so
 %endif
+%ifarch %arm aarch64
+%exclude %{_libdir}/dri/vc4_dri.so
 %endif
 
 %if 0%{with_opencl}
@@ -1184,12 +1195,15 @@
 %{_libdir}/gallium-pipe/pipe_*.so
 %endif
 
-%if 0%{?is_opensuse}
 %ifarch %ix86 x86_64 aarch64 %arm ppc64 ppc64le
 %files -n Mesa-dri-nouveau
 %{_libdir}/dri/nouveau_dri.so
 %{_libdir}/dri/nouveau_vieux_dri.so
 %endif
+
+%ifarch aarch64 %arm
+%files -n Mesa-dri-vc4
+%{_libdir}/dri/vc4_dri.so
 %endif
 
 # drivers

++++++ Mesa.spec ++++++
--- /var/tmp/diff_new_pack.vPe7I2/_old  2018-02-19 12:59:53.376410386 +0100
+++ /var/tmp/diff_new_pack.vPe7I2/_new  2018-02-19 12:59:53.376410386 +0100
@@ -42,7 +42,7 @@
 
 %define glamor 1
 %define _name_archive mesa
-%define _version 18.0.0-rc3
+%define _version 18.0.0-rc4
 %define with_opencl 0
 %define with_vulkan 0
 %define with_llvm 0
@@ -140,8 +140,8 @@
 Patch32:        archlinux_glvnd-fix-gl-dot-pc.patch
 # Upstream
 Patch43:        u_mesa-python3-only.patch
-Patch44:        
u_mesa-st-shader_cache-restore-num_tgsi_tokens-when-loading.patch
 Patch45:        n_Disable-AMDGPU-GFX9-Vega-on-LLVM-lessthan-6.0.0.patch
+Patch46:        u_glsl-linker-error.patch
 
 BuildRequires:  autoconf >= 2.60
 BuildRequires:  automake
@@ -466,8 +466,8 @@
 Summary:        Mesa Off-screen rendering extension
 # Wrongly named package shipped .so.8
 Group:          System/Libraries
-Obsoletes:      libOSMesa9 < %{version}-%{release}
-Provides:       libOSMesa9 = %{version}-%{release}
+Obsoletes:      libOSMesa9 < %{version}
+Provides:       libOSMesa9 = %{version}
 
 %description -n libOSMesa8
 OSmesa is a Mesa extension that allows programs to render to an
@@ -532,6 +532,16 @@
 Nouveau's 3D acceleration to work. It is packaged separately
 since it is still experimental.
 
+%package -n Mesa-dri-vc4
+Summary:        Mesa DRI plug-in for 3D acceleration on Raspberry Pi
+Group:          System/Libraries
+Requires:       Mesa = %{version}
+
+%description -n Mesa-dri-vc4
+This package contains vc4_dri.so, which is necessary for 3D
+acceleration on the Raspberry Pi to work. It is packaged separately
+since it is still experimental.
+
 %package -n Mesa-gallium
 Summary:        Mesa Gallium GPU drivers
 Group:          System/Libraries
@@ -749,8 +759,8 @@
 %endif
 
 %patch43 -p1
-%patch44 -p1
 %patch45 -p1
+%patch46 -p1
 
 # Remove requires to libglvnd/libglvnd-devel from baselibs.conf when
 # disabling libglvnd build; ugly ...
@@ -1169,11 +1179,12 @@
 %files -n Mesa-dri
 %dir %{_libdir}/dri
 %{_libdir}/dri/*_dri.so
-%if 0%{?is_opensuse}
 %ifarch %ix86 x86_64 aarch64 %arm ppc64 ppc64le
 %exclude %{_libdir}/dri/nouveau_dri.so
 %exclude %{_libdir}/dri/nouveau_vieux_dri.so
 %endif
+%ifarch %arm aarch64
+%exclude %{_libdir}/dri/vc4_dri.so
 %endif
 
 %if 0%{with_opencl}
@@ -1183,12 +1194,15 @@
 %{_libdir}/gallium-pipe/pipe_*.so
 %endif
 
-%if 0%{?is_opensuse}
 %ifarch %ix86 x86_64 aarch64 %arm ppc64 ppc64le
 %files -n Mesa-dri-nouveau
 %{_libdir}/dri/nouveau_dri.so
 %{_libdir}/dri/nouveau_vieux_dri.so
 %endif
+
+%ifarch aarch64 %arm
+%files -n Mesa-dri-vc4
+%{_libdir}/dri/vc4_dri.so
 %endif
 
 # drivers


++++++ baselibs.conf ++++++
--- /var/tmp/diff_new_pack.vPe7I2/_old  2018-02-19 12:59:53.536404616 +0100
+++ /var/tmp/diff_new_pack.vPe7I2/_new  2018-02-19 12:59:53.540404472 +0100
@@ -106,6 +106,7 @@
 libvdpau_r600
 libvdpau_radeonsi
 libwayland-egl1
+Mesa-dri-vc4
 Mesa-dri-nouveau
 Mesa-dri
        supplements "Mesa-<targettype> = <version>"

++++++ mesa-18.0.0-rc3.tar.xz -> mesa-18.0.0-rc4.tar.xz ++++++
/work/SRC/openSUSE:Factory/Mesa/mesa-18.0.0-rc3.tar.xz 
/work/SRC/openSUSE:Factory/.Mesa.new/mesa-18.0.0-rc4.tar.xz differ: char 26, 
line 1

++++++ u_glsl-linker-error.patch ++++++
>From 4195eed961ccfe404ae81b9112189fc93a254ded Mon Sep 17 00:00:00 2001
From: "Juan A. Suarez Romero" <jasua...@igalia.com>
Date: Mon, 5 Feb 2018 17:38:39 +0100
Subject: glsl/linker: check same name is not used in block and outside
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

According with OpenGL GLSL 3.20 spec, section 4.3.9:

  "It is a link-time error if any particular shader interface
   contains:
     - two different blocks, each having no instance name, and each
       having a member of the same name, or
     - a variable outside a block, and a block with no instance name,
       where the variable has the same name as a member in the block."

This fixes a previous commit 9b894c8 ("glsl/linker: link-error using the
same name in unnamed block and outside") that covered this case, but
did not take in account that precision qualifiers are ignored when
comparing blocks with no instance name.

With this commit, the original tests
KHR-GL*.shaders.uniform_block.common.name_matching keep fixed, and also
dEQP-GLES31.functional.shaders.linkage.uniform.block.differing_precision
regression is fixed, which was broken by previous commit.

v2: use helper varibles (Matteo Bruni)

Fixes: 9b894c8 ("glsl/linker: link-error using the same name in unnamed block 
and outside")
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104668
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104777
CC: Mark Janes <mark.a.ja...@intel.com>
CC: "18.0" <mesa-sta...@lists.freedesktop.org>
Tested-by: Matteo Bruni <matteo.myst...@gmail.com>
Reviewed-by: Tapani Pälli <tapani.pa...@intel.com>
Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com>
---
 src/compiler/glsl/linker.cpp | 53 +++++++++++++++++++++++++-------------------
 1 file changed, 30 insertions(+), 23 deletions(-)

diff --git a/src/compiler/glsl/linker.cpp b/src/compiler/glsl/linker.cpp
index ce10193..d3d18c2 100644
--- a/src/compiler/glsl/linker.cpp
+++ b/src/compiler/glsl/linker.cpp
@@ -1111,29 +1111,6 @@ cross_validate_globals(struct gl_shader_program *prog,
             return;
          }
 
-         /* In OpenGL GLSL 4.20 spec, section 4.3.9, page 57:
-          *
-          *   "It is a link-time error if any particular shader interface
-          *    contains:
-          *
-          *    - two different blocks, each having no instance name, and each
-          *      having a member of the same name, or
-          *
-          *    - a variable outside a block, and a block with no instance name,
-          *      where the variable has the same name as a member in the 
block."
-          */
-         if (var->data.mode == existing->data.mode &&
-             var->get_interface_type() != existing->get_interface_type()) {
-            linker_error(prog, "declarations for %s `%s` are in "
-                         "%s and %s\n",
-                         mode_string(var), var->name,
-                         existing->get_interface_type() ?
-                           existing->get_interface_type()->name : "outside a 
block",
-                         var->get_interface_type() ?
-                           var->get_interface_type()->name : "outside a 
block");
-
-            return;
-         }
          /* Only in GLSL ES 3.10, the precision qualifier should not match
           * between block members defined in matched block names within a
           * shader interface.
@@ -1155,6 +1132,36 @@ cross_validate_globals(struct gl_shader_program *prog,
                               mode_string(var), var->name);
             }
          }
+
+         /* In OpenGL GLSL 3.20 spec, section 4.3.9:
+          *
+          *   "It is a link-time error if any particular shader interface
+          *    contains:
+          *
+          *    - two different blocks, each having no instance name, and each
+          *      having a member of the same name, or
+          *
+          *    - a variable outside a block, and a block with no instance name,
+          *      where the variable has the same name as a member in the 
block."
+          */
+         const glsl_type *var_itype = var->get_interface_type();
+         const glsl_type *existing_itype = existing->get_interface_type();
+         if (var_itype != existing_itype) {
+            if (!var_itype || !existing_itype) {
+               linker_error(prog, "declarations for %s `%s` are inside block "
+                            "`%s` and outside a block",
+                            mode_string(var), var->name,
+                            var_itype ? var_itype->name : 
existing_itype->name);
+               return;
+            } else if (strcmp(var_itype->name, existing_itype->name) != 0) {
+               linker_error(prog, "declarations for %s `%s` are inside blocks "
+                            "`%s` and `%s`",
+                            mode_string(var), var->name,
+                            existing_itype->name,
+                            var_itype->name);
+               return;
+            }
+         }
       } else
          variables->add_variable(var);
    }
-- 
cgit v1.1


Reply via email to