diff --git a/Mesa.changes b/Mesa.changes index d23c3c3..bcb0d11 100644 --- a/Mesa.changes +++ b/Mesa.changes @@ -1,3 +1,49 @@ +------------------------------------------------------------------- +Tue Jun 7 23:25:31 UTC 2016 - tobias.johannes.klausmann@mni.thm.de + +- Update to version 12.0.0-rc2: +- New features: + + OpenGL 4.3 on nvc0, radeonsi, i965 (Gen8+) + + OpenGL ES 3.1 on nvc0, radeonsi + + GL_ARB_ES3_1_compatibility on nvc0, radeonsi + + GL_ARB_compute_shader on nvc0, radeonsi, softpipe + + GL_ARB_cull_distance on i965/gen6+, nv50, nvc0, llvmpipe, softpipe + + GL_ARB_framebuffer_no_attachments on nvc0, r600, radeonsi, softpipe + + GL_ARB_internalformat_query2 on all drivers + + GL_ARB_query_buffer_object on i965/hsw+ + + GL_ARB_robust_buffer_access_behavior on i965, nvc0, radeonsi + + GL_ARB_shader_atomic_counters on radeonsi, softpipe + + GL_ARB_shader_atomic_counter_ops on nvc0, radeonsi, softpipe + + GL_ARB_shader_image_load_store on nvc0, radeonsi, softpipe + + GL_ARB_shader_image_size on nvc0, radeonsi, softpipe + + GL_ARB_shader_storage_buffer_objects on radeonsi, softpipe + + GL_ATI_fragment_shader on all Gallium drivers + + GL_EXT_base_instance on all drivers that support GL_ARB_base_instance + + GL_EXT_clip_cull_distance on all drivers that support GL_ARB_cull_distance + + GL_KHR_robustness on i965 + + GL_OES_copy_image on i965 (Baytrail and Gen8+) + + GL_OES_draw_buffers_indexed and GL_EXT_draw_buffers_indexed on all drivers + that support GL_ARB_draw_buffers_blend + +GL_OES_gpu_shader5 and GL_EXT_gpu_shader5 on all drivers that support + GL_ARB_gpu_shader5 + +GL_OES_sample_shading on i965, nvc0, r600, radeonsi + +GL_OES_sample_variables on i965, nvc0, r600, radeonsi + +GL_OES_shader_image_atomic on all drivers that support + GL_ARB_shader_image_load_store + +GL_OES_shader_io_blocks on i965, nvc0, radeonsi + +GL_OES_shader_multisample_interpolation on i965, nvc0, r600, radeonsi + + GL_OES_texture_border_clamp and GL_EXT_texture_border_clamp on all drivers + that support +GL_ARB_texture_border_clamp + + GL_OES_texture_buffer and GL_EXT_texture_buffer on i965, nvc0, radeonsi + + EGL_KHR_reusable_sync on all drivers + + GL_ARB_stencil_texture8 and GL_OES_stencil_texture8 on i965/gen8+ +- Enable build of the Intel Vulkan driver (anv): + + Introduce new packages: libVulkan and libVulkan-devel +- Remove upstreamed patches: + + u_glxcmds-glXGetFBConfigs-fix-screen-bounds.patch + + U_gallivm-disable-avx512-features.patch +- drop docs/COPYING: No GPL licensed code in Mesa resident (upstream change) + ------------------------------------------------------------------- Wed Jun 1 14:48:38 UTC 2016 - eich@suse.com diff --git a/Mesa.spec b/Mesa.spec index 5dce398..ac94898 100644 --- a/Mesa.spec +++ b/Mesa.spec @@ -18,7 +18,7 @@ %define glamor 1 %define _name_archive mesa -%define _version 11.2.2 +%define _version 12.0.0-rc2 %define with_opencl 0 %ifarch %ix86 x86_64 %arm ppc ppc64 ppc64le s390x %define gallium_loader 1 @@ -40,9 +40,11 @@ # llvm >= 3.7 not provided for <= 13.1 %define with_opencl 1 %endif +%define with_vulkan 1 %endif + Name: Mesa -Version: 11.2.2 +Version: 12.0.0~rc2 Release: 0 Summary: System for rendering interactive 3-D graphics License: MIT @@ -67,10 +69,10 @@ Patch15: u_mesa-8.0-llvmpipe-shmget.patch Patch17: u_st-va-hardlink-driver-instances-to-gallium_drv_video.patch # never to be upstreamed Patch18: n_VDPAU-XVMC-libs-Replace-hardlinks-with-copies.patch -# Already upstream +# never to be upstreamed Patch21: n_Define-GLAPIVAR-separate-from-GLAPI.patch -Patch22: u_glxcmds-glXGetFBConfigs-fix-screen-bounds.patch -Patch23: U_gallivm-disable-avx512-features.patch +# Build fix for intel vulkan (to be upstreamed) +Patch30: U_anv-add-the-X-related-and-Wayland-CFLAGS-to-VULKAN.patch BuildRequires: autoconf >= 2.60 BuildRequires: automake @@ -452,6 +454,23 @@ Requires: %{name}-libd3d = %{version} Mesa Direct3D9 state tracker development package %endif +%if 0%{with_vulkan} +%package libVulkan +Summary: Mesas Vulkan implementation +Group: System/Libraries + +%description libVulkan +This package contains the Vulkan parts for Mesa. + +%package libVulkan-devel +Summary: Mesas Vulkan development files +Group: System/Libraries +Requires: %{name}-libvulkan = %{version} + +%description libVulkan-devel +This package contains the development files for Mesas Vulkan implementation. +%endif + %package -n libxatracker2 Version: 1.0.0 Release: 0 @@ -564,8 +583,7 @@ rm -rf docs/README.{VMS,WIN32,OS2} %patch17 -p1 %patch18 -p1 %patch21 -p1 -%patch22 -p1 -%patch23 -p1 +%patch30 -p1 %build %if 0%{?suse_version} >= 1310 @@ -574,9 +592,7 @@ egl_platforms=x11,drm,wayland egl_platforms=x11,drm %endif autoreconf -fvi -### --with-gallium-drivers=r300,r600,radeonsi,nouveau,swrast,svga \ -### --with-gallium-drivers=r300,r600,nouveau,swrast,svga \ -### --with-gallium-drivers=r300,nouveau,swrast,svga \ + %configure --enable-gles1 \ --enable-gles2 \ --enable-dri \ @@ -600,12 +616,14 @@ autoreconf -fvi --enable-xa \ --enable-gallium-llvm \ --with-dri-drivers=i915,i965,nouveau,r200,radeon \ +%if 0%{with_vulkan} + --with-vulkan-drivers=intel \ +%endif %if 0%{with_opencl} --enable-opencl \ --enable-opencl-icd \ %endif --enable-llvm-shared-libs \ - --enable-r600-llvm-compiler \ --with-gallium-drivers=r300,r600,radeonsi,nouveau,swrast,svga \ --enable-vdpau \ --enable-va \ @@ -750,9 +768,15 @@ install -m 644 $RPM_SOURCE_DIR/README.updates \ %postun libva -p /sbin/ldconfig +%if 0%{with_vulkan} +%post libVulkan -p /sbin/ldconfig + +%postun libVulkan -p /sbin/ldconfig +%endif + %files %defattr(-,root,root) -%doc docs/README* docs/COPYING +%doc docs/README* %config %{_sysconfdir}/drirc %dir %{_libdir}/dri %if 0%{?suse_version} < 1315 @@ -956,4 +980,18 @@ install -m 644 $RPM_SOURCE_DIR/README.updates \ %{_libdir}/dri/*_drv_video.so %endif +%if 0%{with_vulkan} +%files libVulkan +%defattr(-,root,root) +%dir %{_sysconfdir}/vulkan +%dir %{_sysconfdir}/vulkan/icd.d +%{_sysconfdir}/vulkan/icd.d/intel_icd.json +%{_libdir}/libvulkan*.so + +%files libVulkan-devel +%defattr(-,root,root) +%dir %_includedir/vulkan +%_includedir/vulkan +%endif + %changelog diff --git a/U_anv-add-the-X-related-and-Wayland-CFLAGS-to-VULKAN.patch b/U_anv-add-the-X-related-and-Wayland-CFLAGS-to-VULKAN.patch new file mode 100644 index 0000000..1985c11 --- /dev/null +++ b/U_anv-add-the-X-related-and-Wayland-CFLAGS-to-VULKAN.patch @@ -0,0 +1,37 @@ +From patchwork Fri Jun 3 23:22:40 2016 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Subject: [Mesa-dev] anv: add the X related and Wayland CFLAGS to + VULKAN_ENTRYPOINT_CPPFLAGS +From: Emil Velikov +X-Patchwork-Id: 91607 +Message-Id: <1464996160-23417-1-git-send-email-emil.l.velikov@gmail.com> +To: mesa-dev@lists.freedesktop.org +Cc: emil.l.velikov@gmail.com, Emil Velikov +Date: Sat, 4 Jun 2016 00:22:40 +0100 + +From: Emil Velikov + +Otherwise we might fail to find the headers in some scenarios. + +Cc: Tobias Klausmann +Reported-by: Tobias Klausmann +Signed-off-by: Emil Velikov +--- + src/intel/vulkan/Makefile.am | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/intel/vulkan/Makefile.am b/src/intel/vulkan/Makefile.am +index 37c2986..3294fa4 100644 +--- a/src/intel/vulkan/Makefile.am ++++ b/src/intel/vulkan/Makefile.am +@@ -125,6 +125,8 @@ nodist_EXTRA_libvulkan_intel_la_SOURCES = dummy.cpp + libvulkan_intel_la_SOURCES = $(VULKAN_GEM_FILES) + + VULKAN_ENTRYPOINT_CPPFLAGS = \ ++ $(XCB_DRI3_CFLAGS) \ ++ $(WAYLAND_CFLAGS) \ + -DVK_USE_PLATFORM_XCB_KHR \ + -DVK_USE_PLATFORM_WAYLAND_KHR + diff --git a/U_gallivm-disable-avx512-features.patch b/U_gallivm-disable-avx512-features.patch deleted file mode 100644 index a461b17..0000000 --- a/U_gallivm-disable-avx512-features.patch +++ /dev/null @@ -1,48 +0,0 @@ -From: Roland Scheidegger -Date: Sun May 8 00:40:07 2016 +0200 -Subject: [PATCH]gallivm: disable avx512 features -Patch-mainline: Upstream -Git-repo: git://anongit.freedesktop.org/git/mesa/mesa -Git-commit: 8b66e2647d5e36e318177a460e6e586d6ca8c36b -References: bsc#980557 -Signed-off-by: Egbert Eich - -We don't target this yet, and some llvm versions incorrectly enable it based -on cpu string, causing crashes. -(Albeit this is a losing battle, it is pretty much guaranteed when the next -new feature comes along llvm will mistakenly enable it on some future cpu, -thus we would have to proactively disable all new features as llvm adds them.) - -This should fix https://bugs.freedesktop.org/show_bug.cgi?id=94291 (untested) - -Tested-by: Timo Aaltonen -Reviewed-by: Jose Fonseca ---- - src/gallium/auxiliary/gallivm/lp_bld_misc.cpp | 12 ++++++++++++ - 1 file changed, 12 insertions(+) - -diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp -index bb08892..42a53ec 100644 ---- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp -+++ b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp -@@ -571,6 +571,18 @@ lp_build_create_jit_compiler_for_module(LLVMExecutionEngineRef *OutJIT, - MAttrs.push_back(util_cpu_caps.has_avx ? "+avx" : "-avx"); - MAttrs.push_back(util_cpu_caps.has_f16c ? "+f16c" : "-f16c"); - MAttrs.push_back(util_cpu_caps.has_avx2 ? "+avx2" : "-avx2"); -+ /* disable avx512 and all subvariants */ -+#if HAVE_LLVM >= 0x0304 -+ MAttrs.push_back("-avx512cd"); -+ MAttrs.push_back("-avx512er"); -+ MAttrs.push_back("-avx512f"); -+ MAttrs.push_back("-avx512pf"); -+#endif -+#if HAVE_LLVM >= 0x0305 -+ MAttrs.push_back("-avx512bw"); -+ MAttrs.push_back("-avx512dq"); -+ MAttrs.push_back("-avx512vl"); -+#endif - #endif - - #if defined(PIPE_ARCH_PPC) diff --git a/baselibs.conf b/baselibs.conf index e9cc3e7..e55c347 100644 --- a/baselibs.conf +++ b/baselibs.conf @@ -54,6 +54,9 @@ Mesa-libd3d provides "d3dadapter9.so.1" Mesa-libd3d-devel requires "Mesa-libd3d- = " +Mesa-libVulkan +Mesa-libVulkan-devel + requires "Mesa-libVulkan- = " libXvMC_nouveau libXvMC_r600 libvdpau_nouveau diff --git a/mesa-11.2.2.tar.xz b/mesa-11.2.2.tar.xz deleted file mode 100644 index 7add1b1..0000000 --- a/mesa-11.2.2.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:40e148812388ec7c6d7b6657d5a16e2e8dabba8b97ddfceea5197947647bdfb4 -size 7860932 diff --git a/mesa-11.2.2.tar.xz.sig b/mesa-11.2.2.tar.xz.sig deleted file mode 100644 index c65d98d..0000000 Binary files a/mesa-11.2.2.tar.xz.sig and /dev/null differ diff --git a/mesa-12.0.0-rc2.tar.xz b/mesa-12.0.0-rc2.tar.xz new file mode 100644 index 0000000..79ec387 --- /dev/null +++ b/mesa-12.0.0-rc2.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4fea2e873e8baf92cefa58695d4e719bcddb279c601077f0e7fafaed1259fbc0 +size 8550332 diff --git a/mesa-12.0.0-rc2.tar.xz.sig b/mesa-12.0.0-rc2.tar.xz.sig new file mode 100644 index 0000000..4d40b26 Binary files /dev/null and b/mesa-12.0.0-rc2.tar.xz.sig differ diff --git a/u_glxcmds-glXGetFBConfigs-fix-screen-bounds.patch b/u_glxcmds-glXGetFBConfigs-fix-screen-bounds.patch deleted file mode 100644 index 3367af6..0000000 --- a/u_glxcmds-glXGetFBConfigs-fix-screen-bounds.patch +++ /dev/null @@ -1,69 +0,0 @@ -From: Jiri Slaby -Date: Tue May 17 08:22:42 2016 +0200 -Subject: glxcmds: glXGetFBConfigs, fix screen bounds -Patch-mainline: Not yet -Git-repo: git://anongit.freedesktop.org/git/mesa/mesa -Git-commit: 6aaa258229ec09f84ca51a728e125009ecee2d16 -References: boo#980382 - -Bounds of screen are 0 (inclusive) and ScreenCount(dpy) (exclusive). -The upper bound was too high: ScreenCount(dpy) (inclusive). - -This causes a crash invoked by java3d which passes down an invalid -screen: -6 0x00007f0e5198ba70 in () at /lib64/libc.so.6 -7 0x00007f0e14531e14 in glXGetFBConfigs (dpy=, screen=1, nelements=nelements@entry=0x7f0dab3c522c) at glxcmds.c:1660 -8 0x00007f0e14532f7f in glXChooseFBConfig (dpy=, screen=, attribList=0x7f0dab3c54e0, nitems=0x7f0dab3c535c) at glxcmds.c:1611 -9 0x00007f0e1478d29b in find_S_FBConfigs () at /usr/lib64/libj3dcore-ogl.so -10 0x00007f0e1478d3dc in find_S_S_FBConfigs () at /usr/lib64/libj3dcore-ogl.so -11 0x00007f0e1478d567 in find_AA_S_S_FBConfigs () at /usr/lib64/libj3dcore-ogl.so -12 0x00007f0e1478d728 in find_DB_AA_S_S_FBConfigs () at /usr/lib64/libj3dcore-ogl.so -13 0x00007f0e1478d97c in Java_javax_media_j3d_X11NativeConfigTemplate3D_chooseOglVisual () at /usr/lib64/libj3dcore-ogl.so - -While ScreenCount(dpy) is actually 1: -(gdb) p dpy->nscreens -$2 = 1 -screen=1 is passed to glXGetFBConfigs. - -Easily reproducible by: - #include - - #include - #include - - int main() - { - unsigned a; - int n; - Display *d = XOpenDisplay(":0"); - GLXFBConfig *cfg; - - for (a = 0; a <= ScreenCount(d); a++) - cfg = glXGetFBConfigs(d, a, &n); - - XCloseDisplay(d); - - return 0; - } - -Fix this typo in glXGetFBConfigs. - -Signed-off-by: Jiri Slaby -Cc: -Signed-off-by: Egbert Eich ---- - src/glx/glxcmds.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/src/glx/glxcmds.c b/src/glx/glxcmds.c -index 63f4921..46bc214 100644 ---- a/src/glx/glxcmds.c -+++ b/src/glx/glxcmds.c -@@ -1657,7 +1657,7 @@ glXGetFBConfigs(Display * dpy, int screen, int *nelements) - - *nelements = 0; - if (priv && (priv->screens != NULL) -- && (screen >= 0) && (screen <= ScreenCount(dpy)) -+ && (screen >= 0) && (screen < ScreenCount(dpy)) - && (priv->screens[screen]->configs != NULL) - && (priv->screens[screen]->configs->fbconfigID - != (int) GLX_DONT_CARE)) {