Hello community, here is the log from the commit of package vtk for openSUSE:Factory checked in at 2017-10-09 19:40:31 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/vtk (Old) and /work/SRC/openSUSE:Factory/.vtk.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "vtk" Mon Oct 9 19:40:31 2017 rev:29 rq:529946 version:8.0.1 Changes: -------- --- /work/SRC/openSUSE:Factory/vtk/vtk-compat_gl.changes 2017-09-12 19:55:20.891471260 +0200 +++ /work/SRC/openSUSE:Factory/.vtk.new/vtk-compat_gl.changes 2017-10-09 19:40:36.247670632 +0200 @@ -1,0 +2,43 @@ +Thu Sep 28 10:43:27 UTC 2017 - badshah...@gmail.com + +- Drop vtk-compat_gl-rpmlintrc: openSUSE:Factory bots don't accept + conditional sources and one rpmlintrc file is sufficient for + both main and linked packages anyway. + +------------------------------------------------------------------- +Tue Sep 19 10:46:40 UTC 2017 - kkhere....@gmail.com + +- do not exclude libViewsGeovisJava.so from devel package + This library is required for development. +- package vtk binary in devel package. +- VTKTargets-debug.cmake tests for the existance of the library (line 3394) + and the binary (line 3404) and causes an error if the files do + not exist + +------------------------------------------------------------------- +Thu Sep 14 20:54:34 UTC 2017 - stefan.bru...@rwth-aachen.de + +- Remove the various subpackage Requires from the devel package + again. The qt subpackage contains a Qt Designer plugin and no + dependency at all. Package the vtkWrap{Tcl,Java,Python} wrapper + generators in the devel package, as these are useless without + the vtk headers files. +- Fix description/summary of vtk-qt subpackage + +------------------------------------------------------------------- +Tue Sep 12 12:33:38 UTC 2017 - kkhere....@gmail.com + +- devel subpackage should require -tcl, -java and -qt subpackages + since the *.cmake files refer to files in those subpackages + +------------------------------------------------------------------- +Mon Sep 11 13:46:28 UTC 2017 - stefan.bru...@rwth-aachen.de + +- Add 0001-Allow-compilation-on-GLES-platforms.patch + The QOpenGLFunctions_3_2_Core class providing the framebuffer + blit functions is not available on GLES 2 builds of Qt5. Let Qt + handle the framebuffer blit, and just use the GLES/GL subset + provided by QOpenGLFunctions for the remainder. + Fix for https://gitlab.kitware.com/vtk/vtk/issues/17113 + +------------------------------------------------------------------- vtk.changes: same change Old: ---- vtk-compat_gl-rpmlintrc New: ---- 0001-Allow-compilation-on-GLES-platforms.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ vtk-compat_gl.spec ++++++ --- /var/tmp/diff_new_pack.zz4ngJ/_old 2017-10-09 19:40:37.727605586 +0200 +++ /var/tmp/diff_new_pack.zz4ngJ/_new 2017-10-09 19:40:37.731605410 +0200 @@ -45,15 +45,13 @@ Source: http://www.vtk.org/files/release/%{series}/VTK-%{version}.tar.gz # FIXME See if packaging can be tweaked to accommodate python-vtk's devel files in a devel package later # We need to use the compat conditionals here to avoid Factory's source validator from tripping up -%if %{compat_gl} -Source1: vtk-compat_gl-rpmlintrc -%else Source1: vtk-rpmlintrc -%endif # PATCH-FIX-UPSTREAM vtk-fix-file-contains-date-time.patch badshah...@gmail.com -- Fix file containing DATE and TIME Patch1: vtk-fix-file-contains-date-time.patch # PATCH-FIX-UPSTREAM vtk-Rinterface-uintptr_t.patch boo#985386 badshah...@gmail.com -- Fix issues with uintptr_t redefinition by defining the HAVE_UINTPTR_T macro using cmake functions to avoid redefinition of uintptr_t, which is already defined in stdint.h called earlier; patch sent upstream Patch2: vtk-Rinterface-uintptr_t.patch +# PATCH-FIX-OPENSUSE 0001-Allow-compilation-on-GLES-platforms.patch VTK issue #17113 stefan.bru...@rwth-aachen.de -- Fix building with Qt GLES builds +Patch3: 0001-Allow-compilation-on-GLES-platforms.patch BuildRequires: Mesa-libGL-devel BuildRequires: R-base-devel BuildRequires: boost-devel @@ -216,7 +214,7 @@ This package provides python bindings for VTK. %package qt -Summary: Qt VTK widget +Summary: Qt Designer plugin for QVTKWidget Group: Development/Libraries/C and C++ Requires: %{shlib} = %{version} %if %{compat_gl} @@ -230,7 +228,7 @@ VTK is a software system for image processing, 3D graphics, volume rendering and visualization. -This package provides Qt bindings for VTK. +This package provides a Qt Designer plugin for the QVTKWidget. %package tcl Summary: Tcl bindings for VTK @@ -290,6 +288,7 @@ %setup -q -n VTK-%{version} %patch1 -p1 %patch2 -p1 +%patch3 -p1 # Replace relative path ../../../VTKData with %%{_datadir}/%%{pkgname}data-%%{version} # otherwise it will break on symlinks. @@ -432,9 +431,16 @@ %files devel %defattr(-,root,root,-) %doc Copyright.txt +%{_bindir}/%{pkgname} %{_bindir}/%{pkgname}EncodeString %{_bindir}/%{pkgname}HashSource %{_bindir}/%{pkgname}WrapHierarchy +%{_bindir}/%{pkgname}ParseJava +%{_bindir}/%{pkgname}WrapJava +%{_bindir}/%{pkgname}WrapPython +%{_bindir}/%{pkgname}WrapPythonInit +%{_bindir}/%{pkgname}WrapTcl +%{_bindir}/%{pkgname}WrapTclInit %if %{compat_gl} %{_bindir}/%{pkgname}ParseOGLExt %endif @@ -451,30 +457,19 @@ %{_libdir}/libvtkWrappingTools.a %{_includedir}/%{pkgname}-%{series}/ %exclude %{_datadir}/tcl/vtk/vtktcl.c -# This goes in the vtk-java subpackage, not a devel symlink -%exclude %{_libdir}/libvtkViewsGeovisJava.so -# %files java %defattr(-,root,root,-) -%{_bindir}/%{pkgname}ParseJava -%{_bindir}/%{pkgname}WrapJava %{_libdir}/%{pkgname}.jar -%{_libdir}/libvtkViewsGeovisJava.so %files -n python3-%{name} %defattr(-,root,root,-) %{_bindir}/%{pkgname}python %{_bindir}/p%{pkgname}python -%{_bindir}/%{pkgname}WrapPython -%{_bindir}/%{pkgname}WrapPythonInit %{python3_sitearch}/%{pkgname}/ %files tcl %defattr(-,root,root,-) -%{_bindir}/%{pkgname} -%{_bindir}/%{pkgname}WrapTcl -%{_bindir}/%{pkgname}WrapTclInit %{_datadir}/tcl/%{pkgname}/ %files qt ++++++ vtk.spec ++++++ --- /var/tmp/diff_new_pack.zz4ngJ/_old 2017-10-09 19:40:37.763604004 +0200 +++ /var/tmp/diff_new_pack.zz4ngJ/_new 2017-10-09 19:40:37.767603828 +0200 @@ -45,15 +45,13 @@ Source: http://www.vtk.org/files/release/%{series}/VTK-%{version}.tar.gz # FIXME See if packaging can be tweaked to accommodate python-vtk's devel files in a devel package later # We need to use the compat conditionals here to avoid Factory's source validator from tripping up -%if %{compat_gl} -Source1: vtk-compat_gl-rpmlintrc -%else Source1: vtk-rpmlintrc -%endif # PATCH-FIX-UPSTREAM vtk-fix-file-contains-date-time.patch badshah...@gmail.com -- Fix file containing DATE and TIME Patch1: vtk-fix-file-contains-date-time.patch # PATCH-FIX-UPSTREAM vtk-Rinterface-uintptr_t.patch boo#985386 badshah...@gmail.com -- Fix issues with uintptr_t redefinition by defining the HAVE_UINTPTR_T macro using cmake functions to avoid redefinition of uintptr_t, which is already defined in stdint.h called earlier; patch sent upstream Patch2: vtk-Rinterface-uintptr_t.patch +# PATCH-FIX-OPENSUSE 0001-Allow-compilation-on-GLES-platforms.patch VTK issue #17113 stefan.bru...@rwth-aachen.de -- Fix building with Qt GLES builds +Patch3: 0001-Allow-compilation-on-GLES-platforms.patch BuildRequires: Mesa-libGL-devel BuildRequires: R-base-devel BuildRequires: boost-devel @@ -216,7 +214,7 @@ This package provides python bindings for VTK. %package qt -Summary: Qt VTK widget +Summary: Qt Designer plugin for QVTKWidget Group: Development/Libraries/C and C++ Requires: %{shlib} = %{version} %if %{compat_gl} @@ -230,7 +228,7 @@ VTK is a software system for image processing, 3D graphics, volume rendering and visualization. -This package provides Qt bindings for VTK. +This package provides a Qt Designer plugin for the QVTKWidget. %package tcl Summary: Tcl bindings for VTK @@ -290,6 +288,7 @@ %setup -q -n VTK-%{version} %patch1 -p1 %patch2 -p1 +%patch3 -p1 # Replace relative path ../../../VTKData with %%{_datadir}/%%{pkgname}data-%%{version} # otherwise it will break on symlinks. @@ -432,9 +431,16 @@ %files devel %defattr(-,root,root,-) %doc Copyright.txt +%{_bindir}/%{pkgname} %{_bindir}/%{pkgname}EncodeString %{_bindir}/%{pkgname}HashSource %{_bindir}/%{pkgname}WrapHierarchy +%{_bindir}/%{pkgname}ParseJava +%{_bindir}/%{pkgname}WrapJava +%{_bindir}/%{pkgname}WrapPython +%{_bindir}/%{pkgname}WrapPythonInit +%{_bindir}/%{pkgname}WrapTcl +%{_bindir}/%{pkgname}WrapTclInit %if %{compat_gl} %{_bindir}/%{pkgname}ParseOGLExt %endif @@ -451,30 +457,19 @@ %{_libdir}/libvtkWrappingTools.a %{_includedir}/%{pkgname}-%{series}/ %exclude %{_datadir}/tcl/vtk/vtktcl.c -# This goes in the vtk-java subpackage, not a devel symlink -%exclude %{_libdir}/libvtkViewsGeovisJava.so -# %files java %defattr(-,root,root,-) -%{_bindir}/%{pkgname}ParseJava -%{_bindir}/%{pkgname}WrapJava %{_libdir}/%{pkgname}.jar -%{_libdir}/libvtkViewsGeovisJava.so %files -n python3-%{name} %defattr(-,root,root,-) %{_bindir}/%{pkgname}python %{_bindir}/p%{pkgname}python -%{_bindir}/%{pkgname}WrapPython -%{_bindir}/%{pkgname}WrapPythonInit %{python3_sitearch}/%{pkgname}/ %files tcl %defattr(-,root,root,-) -%{_bindir}/%{pkgname} -%{_bindir}/%{pkgname}WrapTcl -%{_bindir}/%{pkgname}WrapTclInit %{_datadir}/tcl/%{pkgname}/ %files qt ++++++ 0001-Allow-compilation-on-GLES-platforms.patch ++++++ >From 2d5a68b91f9d638aa408285d1608bc5d70060602 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <stefan.bru...@rwth-aachen.de> Date: Fri, 1 Sep 2017 02:11:37 +0200 Subject: [PATCH] Allow compilation on GLES platforms MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On GLES 2.0 platforms (more specifically, for Qt5 "opengl es2" builds), QOpenGLFunctions_3_2_Core does not exist. Since Qt 5.7, QOpenGlFramebufferObject has a static wrapper method for framebuffer blitting, which in worst case is a noop. Signed-off-by: Stefan BrĂ¼ns <stefan.bru...@rwth-aachen.de> --- GUISupport/Qt/QVTKOpenGLWidget.cxx | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/GUISupport/Qt/QVTKOpenGLWidget.cxx b/GUISupport/Qt/QVTKOpenGLWidget.cxx index a1676e8..16e255f 100644 --- a/GUISupport/Qt/QVTKOpenGLWidget.cxx +++ b/GUISupport/Qt/QVTKOpenGLWidget.cxx @@ -421,10 +421,15 @@ void QVTKOpenGLWidget::paintGL() // blit from this->FBO to QOpenGLWidget's FBO. vtkQVTKOpenGLWidgetDebugMacro("paintGL::blit-to-defaultFBO"); +#if QT_VERSION < 0x050700 QOpenGLFunctions_3_2_Core* f = QOpenGLContext::currentContext()->versionFunctions<QOpenGLFunctions_3_2_Core>(); +#else + QOpenGLFunctions* f = QOpenGLContext::currentContext()->functions(); +#endif if (f) { +#if QT_VERSION < 0x050700 f->glBindFramebuffer(GL_DRAW_FRAMEBUFFER, this->defaultFramebufferObject()); f->glDrawBuffer(GL_COLOR_ATTACHMENT0); @@ -434,6 +439,13 @@ void QVTKOpenGLWidget::paintGL() f->glBlitFramebuffer(0, 0, this->RenderWindow->GetSize()[0], this->RenderWindow->GetSize()[1], 0, 0, this->RenderWindow->GetSize()[0], this->RenderWindow->GetSize()[1], GL_COLOR_BUFFER_BIT, GL_NEAREST); +#else + f->glDisable(GL_SCISSOR_TEST); // Scissor affects glBindFramebuffer. + QRect rect(0, 0, this->RenderWindow->GetSize()[0], this->RenderWindow->GetSize()[1]); + QOpenGLFramebufferObject::blitFramebuffer(0 /* binds to default framebuffer */, rect, + this->FBO, rect, GL_COLOR_BUFFER_BIT, GL_NEAREST, GL_COLOR_ATTACHMENT0, + GL_COLOR_ATTACHMENT0, QOpenGLFramebufferObject::DontRestoreFramebufferBinding); +#endif // now clear alpha otherwise we end up blending the rendering with // background windows in certain cases. It happens on OsX -- 2.14.1 ++++++ pre_checkin.sh ++++++ --- /var/tmp/diff_new_pack.zz4ngJ/_old 2017-10-09 19:40:37.843600488 +0200 +++ /var/tmp/diff_new_pack.zz4ngJ/_new 2017-10-09 19:40:37.847600312 +0200 @@ -1,5 +1,4 @@ #!/bin/sh sed 's|%define compat_gl 0|%define compat_gl 1|' vtk.spec > vtk-compat_gl.spec -cp vtk-rpmlintrc vtk-compat_gl-rpmlintrc cp vtk.changes vtk-compat_gl.changes