From 4809cbcd8f9bb976d2bbe5b2a74e9a77250f32e96e74cbe177520a3e3d0b058e Mon Sep 17 00:00:00 2001 From: Atri Bhattacharya Date: Fri, 28 Apr 2017 08:42:10 +0000 Subject: [PATCH 01/11] Accepting request 489183 from home:polyconvex:branches:science As discussed in [1] I made a new package with compatibility build for the old OpenGL interface of vtk to support machines with older graphics cards that do not support OpenGL version 3.2 which the default build requires. [1] https://lists.opensuse.org/opensuse-factory/2017-04/msg00121.html Please create a link to this package with the new name after accepting this request. - add a separate package vtk-compat_gl compile using rendering backend OpenGL for systems without brand new graphic cards - default package vtk still uses new rendering backend default OpenGL2 - add a separate package vtk-compat_gl compile using rendering backend OpenGL for systems without brand new graphic cards - default package vtk still uses new rendering backend default OpenGL2 - Update to version 7.1.0: See news item at https://blog.kitware.com/kitware-plans-to-spotlight-new-vtk-and-paraview-releases-at-sc16/ - Drop patch vtk-gcc6.patch, upstreamed. - Turn off usage of system DIY2, this library is not yet packaged for openSUSE. - Disable mkg3states binary also for openSUSE:Leap versions. - Update file list for upstream installation changes. - Use bundled gl2ps, as it no longer builds against the system one (requires svn trunk version of gl2ps). - CMake >= 3.4 is now required (earlier versions don't support NAMES_PER_DIR in find_program). - Enable use of SYSTEM_LIBRARIES for openSUSE:Leap versions too (only 13.2 requires this turned off as of now). - Refresh vtk-Rinterface-uintptr_t.patch to fix further issues with uintptr_t redefinition by defining the HAVE_UINTPTR_T macro using cmake functions; removing the #include of stdint.h is not needed any more since we will not be using the defs from Rinterface.h anyway (boo#985386). Although this really causes a build failure for the i586 arch, where the redefinition of unitptr_t in Rinterface.h conflicts with the stdint.h defintion, OBS-URL: https://build.opensuse.org/request/show/489183 OBS-URL: https://build.opensuse.org/package/show/science/vtk?expand=0&rev=81 --- pre_checkin.sh | 5 + vtk-compat_gl-rpmlintrc | 6 + vtk-compat_gl.changes | 387 ++++++++++++++++++++++++++++ vtk-compat_gl.spec | 554 ++++++++++++++++++++++++++++++++++++++++ vtk-rpmlintrc | 2 +- vtk.changes | 7 + vtk.spec | 155 +++++++---- 7 files changed, 1071 insertions(+), 45 deletions(-) create mode 100644 pre_checkin.sh create mode 100644 vtk-compat_gl-rpmlintrc create mode 100644 vtk-compat_gl.changes create mode 100644 vtk-compat_gl.spec diff --git a/pre_checkin.sh b/pre_checkin.sh new file mode 100644 index 0000000..9a4f91c --- /dev/null +++ b/pre_checkin.sh @@ -0,0 +1,5 @@ +#!/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 diff --git a/vtk-compat_gl-rpmlintrc b/vtk-compat_gl-rpmlintrc new file mode 100644 index 0000000..17af08d --- /dev/null +++ b/vtk-compat_gl-rpmlintrc @@ -0,0 +1,6 @@ +# FIXME: See if packaging can be tweaked to avoid these warnings later +# python-vtk needs these devel files to work +addFilter("python3-vtk* devel-file-in-non-devel-package") + +# Upstream does not supply manuals for any binary, suppress warnings +addFilter(".* no-manual-page-for-binary") diff --git a/vtk-compat_gl.changes b/vtk-compat_gl.changes new file mode 100644 index 0000000..4403ad0 --- /dev/null +++ b/vtk-compat_gl.changes @@ -0,0 +1,387 @@ +------------------------------------------------------------------- +Fri Apr 14 18:18:36 UTC 2017 - kkhere.geo@gmail.com + +- add a separate package vtk-compat_gl compile using rendering backend + OpenGL for systems without brand new graphic cards +- default package vtk still uses new rendering backend default OpenGL2 + +------------------------------------------------------------------- +Wed Nov 23 10:28:02 UTC 2016 - badshah400@gmail.com + +- Update to version 7.1.0: See news item at + https://blog.kitware.com/kitware-plans-to-spotlight-new-vtk-and-paraview-releases-at-sc16/ +- Drop patch vtk-gcc6.patch, upstreamed. +- Turn off usage of system DIY2, this library is not yet packaged + for openSUSE. +- Disable mkg3states binary also for openSUSE:Leap versions. +- Update file list for upstream installation changes. +- Use bundled gl2ps, as it no longer builds against the system + one (requires svn trunk version of gl2ps). +- CMake >= 3.4 is now required (earlier versions don't support + NAMES_PER_DIR in find_program). +- Enable use of SYSTEM_LIBRARIES for openSUSE:Leap versions too + (only 13.2 requires this turned off as of now). + +------------------------------------------------------------------- +Wed Aug 10 00:56:56 UTC 2016 - badshah400@gmail.com + +- Refresh vtk-Rinterface-uintptr_t.patch to fix further issues + with uintptr_t redefinition by defining the HAVE_UINTPTR_T + macro using cmake functions; removing the #include of stdint.h + is not needed any more since we will not be using the defs from + Rinterface.h anyway (boo#985386). Although this really causes a + build failure for the i586 arch, where the redefinition of + unitptr_t in Rinterface.h conflicts with the stdint.h defintion, + the patch is applied generally because the redefinition is not + needed in any case. Patch sent upstream. + +------------------------------------------------------------------- +Wed Apr 13 11:32:12 UTC 2016 - badshah400@gmail.com + +- Add freetype2-devel as a Requires for vtk-devel. + +------------------------------------------------------------------- +Wed Mar 30 14:31:03 UTC 2016 - badshah400@gmail.com + +- Apply vtk-gcc6.patch also to python-vtk. + +------------------------------------------------------------------- +Wed Mar 30 13:08:09 UTC 2016 - stecue@gmail.com + +- Fixed RPATH error for Factory by passing the option + CMAKE_NO_BUILTIN_CHRPATH:BOOL=ON to cmake. + +------------------------------------------------------------------- +Tue Mar 29 20:27:32 UTC 2016 - dmueller@suse.com + +- add vtk-gcc6.patch: Fix build with gcc 6 +- skip RPATH setting + +------------------------------------------------------------------- +Fri Mar 18 19:27:34 UTC 2016 - stecue@gmail.com + +- openmpi-libs will be installed with openmpi-devel if necessary. + No such package on openSUSE 13.1. + +------------------------------------------------------------------- +Tue Mar 15 13:33:58 UTC 2016 - dvaleev@suse.com + +- Add disk constraints + +------------------------------------------------------------------- +Wed Feb 17 01:13:12 UTC 2016 - badshah400@gmail.com + +- Update to version 7.0.0: + + See https://blog.kitware.com/vtk-7-0-0/ for a detailed + article describing all the changes in this version. +- Add vtk-Rinterface-uintptr_t.patch to fix building: uintptr_t + is already defined in the R headers, uintptr_t definition in + conflicts with the R definition and causes builds to + fail. This patch fixes the problem by commenting out the call + to include stdint.h (it was only being used for this solitary + symbol). +- Use python 3 for building, rename python- subpackages + accordingly to python3-. +- Update file lists in accordance with added/dropped binaries + upstream; affects vtk-examples, vtk-devel. +- Drop conditionals referencing outdated openSUSE version 12.3. +- Update rpmlintrc file to suppress rpmlint warnings for + "no-manual-page-for-binary": upstream does not supply manuals + for its binaries and does not plan to. + +------------------------------------------------------------------- +Fri Sep 18 09:11:38 UTC 2015 - badshah400@gmail.com + +- vtkdata should be a Recommends for vtk-examples, not Requires. + +------------------------------------------------------------------- +Mon Aug 31 07:39:10 UTC 2015 - badshah400@gmail.com + +- Update to version 6.3.0: + - See list of changes at + http://www.vtk.org/Bug/changelog_page.php?version_id=118 + or blog post at + http://www.kitware.com/blog/home/post/963. + +------------------------------------------------------------------- +Sat Aug 15 04:16:39 UTC 2015 - badshah400@gmail.com + +- python-vtk also needs openmpi-devel at runtime. + +------------------------------------------------------------------- +Fri Aug 14 10:51:11 UTC 2015 - badshah400@gmail.com + +- python-vtk should have Requires on openmpi-libs to enable its + parallelized modules to work. + +------------------------------------------------------------------- +Thu Jun 25 08:17:04 UTC 2015 - alinm.elena@gmail.com + +- use qt5 for factory + +------------------------------------------------------------------- +Mon Jun 22 18:00:32 UTC 2015 - olaf@aepfle.de + +- Add libxml2-devel/netcdf-devel/libnetcdf_c++-devel Requires to vtk-devel + +------------------------------------------------------------------- +Wed Apr 8 19:57:31 UTC 2015 - dimstar@opensuse.org + +- Add jsoncpp-devel Requires to vtk-devel (for openSUSE > 13.2): + vtkjsoncpp.cmake has + set(vtkjsoncpp_LIBRARIES "/usr/lib64/libjsoncpp.so"). + +------------------------------------------------------------------- +Fri Mar 13 19:50:12 UTC 2015 - badshah400@gmail.com + +- Update to version 6.2.0: + + See http://www.kitware.com/blog/home/post/858 for a list of + changes. +- Drop patches incorporated upstream: + + vtk-install-missing-modules.patch + + vtk-Mesa10.3-build-failures.patch + + vtk-system.patch. +- Update filelist to incorporate new files installed by upstream. +- Use system hdf5 and netcdf on all openSUSE versions. +- Build on openSUSE > 13.2 with system libraries ON (except + for libproj4); all required depndencies for this purpose are + now in Factory. +- Add rpmlintrc file to suppress + "devel-files-in-non-devel-package" warning; python-vtk needs + these devel files for its own functioning. + +------------------------------------------------------------------- +Thu Feb 26 12:30:11 UTC 2015 - dkxls23@gmail.com + +- Add MPI support + +------------------------------------------------------------------- +Thu Sep 11 01:52:56 UTC 2014 - badshah400@gmail.com + +- Add vtk-Mesa10.3-build-failures.patch to workaround build + failures when compiling against Mesa >= 10.3; patch taken from + upstream git and rebased; applied only for openSUSE >= 13.2. + +------------------------------------------------------------------- +Fri Jan 24 20:44:24 UTC 2014 - badshah400@gmail.com + +- Update to version 6.1.0: + + See http://www.kitware.com/news/home/browse/502 for a list of + changes +- Rebase patches: + + vtk-system.patch + + vtk-install-missing-modules.patch +- Packaging changes: + + Re-enable R bindings for 13.1 and above + + Turn off building test modules for now as it leads to build + issues (DBUILD_TESTING:BOOL=OFF) + + Turn off usage of system libraries for now + (DVTK_USE_SYSTEM_LIBRARIES:BOOL=OFF), as usage of system + libraries now introduces dependency on json-cpp which is not + available for openSUSE (yet) + + Python modules are now installed by vtk's cmake script; + hence, pass system python dirs to cmake by using cmake + variable DVTK_INSTALL_PYTHON_MODULE_DIR instead of + DVTK_PYTHON_SETUP_ARGS used previously + + vtkpython is now installed by cmake script automatically; + hence remove the manual copying to /usr/bin used earlier + + Python libraries are now stripped automatically on install; + chrpath no longer needed on these + + Python object files are now installed in + %python_sitearch + + Skip examples no longer installed as a result of test modules + being turned off + + Install new binaries (mkg3states) and bundled data files + (/usr/share/vtk-6.1) + + Cleanup spec file: + - Remove support for EOL openSUSE versions (12.1 and earlier) + by dropping appropriate conditionals + - Fix minor formatting issues. + +------------------------------------------------------------------- +Fri Jul 19 02:52:28 UTC 2013 - badshah400@gmail.com + +- Disable R bindings for Factory, since it causes weird build + failures in openSUSE:Factory, (strangely no failures in devel + project) until the reason behind the failure is found and fixed. + +------------------------------------------------------------------- +Fri Jun 28 13:41:09 UTC 2013 - badshah400@gmail.com + +- Update to version 6.0.0: + + Lengthy list of changes, see + http://www.kitware.com/blog/home/post/515 for a summary +- Also build R language bindings, introduces dependency on R-base +- Drop patches for already being incorporated upstream: + + vtk-pythondestdir.patch + + vtk-sqldatabaseschema.patch + + vtk-soversion2.patch +- Rebase patches for updated version: + + vtk-fix-file-contains-date-time.patch + + vtk-system.patch +- Add vtk-install-missing-modules.patch to install cmake modules + missed by the upstream packaging, will be required esp. when + we will be able to use the system installed vtk to build + paraview in the future; patch taken from Fedora +- Remove unused cmake variables during configuration +- Install all examples (several more added in current version) +- Install vtk.conf file in /etc/ld.so.conf.d to enable vtk find + its libraries +- Testing binaries are no longer installed separately. + +------------------------------------------------------------------- +Fri Oct 26 14:04:41 UTC 2012 - badshah400@gmail.com + +- Update to version 5.10.1: + + Fix netCDF symbol mangling, which allows applications to use + an external netCDF library and VTK's internal copy + simultaneously + + Fixes for STL and SLC readers that prevent crashes and file + handle resource exhaustion + + Fix compilation on FreeBSD operating system + + A handful of fixes in VTK's Qt interface kit + + Fixes for interpreted language wrapping including a bug which + prevented java wrapping of VTK on power PC macs, and + compatibility with Tcl 8.6 +- Add vtk-fix-file-contains-date-time.patch to fix rpmlint + warning about a packaged file containing DATE and TIME. + +------------------------------------------------------------------- +Mon Jun 25 20:46:30 UTC 2012 - scorot@free.fr + +- build python-qt and java binding for openSUSE version higher than + 11.2 which fixes build on SLE 11 + +------------------------------------------------------------------- +Fri May 18 21:20:14 UTC 2012 - badshah400@gmail.com + +- Update to version 5.10.0: See + http://www.kitware.com/news/home/browse/408 + for a detailed list of changes +- Dropped patches: + + vtk-boost149.patch: implemented upstream +- Patch vtk-sqldatabaseschema.patch now only required for + openSUSE 11.4 +- Minor rebasing of existing patches so they apply cleanly +- No longer use verbose make. + +------------------------------------------------------------------- +Thu May 10 11:32:21 UTC 2012 - idonmez@suse.com + +- Remove openmotif dependency + +------------------------------------------------------------------- +Sun Apr 22 15:11:53 UTC 2012 - asterios.dramis@gmail.com + +- Use the gl2ps and hdf5 system libraries for building in openSUSE > 12.1. +- Updated Mesa and XOrg dependencies for openSUSE > 12.1. +- Removed the following dependencies which are not needed: + MesaGLw-devel, freeglut-devel, gcc-java, libgcj-devel and sqlite3-devel. +- Removed postgresql-devel dependency (wasn't enabled and fails to compile + anyway - added a note about it). +- Removed build time references so build-compare can do its work. +- Compile the package out-of-source. +- Use the generic "VTK_USE_SYSTEM_LIBRARIES" cmake variable for enabling the + use of system libraries instead of doing it with a per package variable. + +------------------------------------------------------------------- +Sun Apr 8 11:22:34 UTC 2012 - idonmez@suse.com + +- Fix compilation with boost 1.49 and enable boost again + +------------------------------------------------------------------- +Tue Mar 27 14:15:13 UTC 2012 - toddrme2178@gmail.com + +- Cleaned up spec file formatting +- Build and package python-qt (python-sip) bindings +- Link libraries to library directory instead of moving them to + avoid breaking the find vtk cmake macro +- Force enable of various additional optional components +- Removed redundant packages (readme and logo) from backends +- Make the devel package depend on the backends, since it does not + work properly without them +- Disable boost building on factory due to an icompatibility with + boosswt 1.4.9+. See http://vtk.org/Bug/view.php?id=12988 + +------------------------------------------------------------------- +Thu Feb 2 12:39:13 UTC 2012 - toddrme2178@gmail.com + +- Reverted the source file change since it didn't work +- Changed the license text a little + +------------------------------------------------------------------- +Wed Feb 1 12:05:32 UTC 2012 - toddrme2178@gmail.com + +- Switched to approved license text (fix for RPMLINT warning) +- Escaped some macros in comments (fix for RPMLINT warnings) +- Made the source file a tiny bit easier to use + +------------------------------------------------------------------- +Wed Oct 12 22:12:40 UTC 2011 - prusnak@opensuse.org + +- updated to 5.8.0 +- removed patches: +* vtk-Balloon-Representation.patch (applied in upstream) +* vtk-gcc43.patch (applied in upstream) +* vtk-gcc46.patch (applied in upstream) +* vtk-libpng14.patch (applied in upstream) +* vtk-python27-compat.patch (applied in upstream) +* vtk-soversion.patch (applied in upstream) +* vtk-string-length.patch (not needed anymore) +* vtk-testcxxjavaremove.patch (applied in upstream) + +------------------------------------------------------------------- +Sat May 28 17:35:51 UTC 2011 - badshah400@gmail.com + +- Add explicit libQtWebKit-devel BuildRequires to fix build +failures on openSUSE 11.3 +- Make description of sub-package vtk-qt more detailed +- Spec file clean up + +------------------------------------------------------------------- +Sat May 28 07:49:50 UTC 2011 - alinm.elena@gmail.com + +- fix the missing soname for libVTKnetcdf_cxx + +------------------------------------------------------------------- +Sun May 22 17:02:27 UTC 2011 - stecue@gmail.com + +- Fix the broken vtk-qt package + +------------------------------------------------------------------- +Thu Apr 14 19:59:13 UTC 2011 - badshah400@gmail.com + +- Fix dependencies for openSUSE 11.2 and SLE 11 +- Fix build problems with openSUSE 11.4 + +------------------------------------------------------------------- +Thu Apr 14 16:54:15 UTC 2011 - badshah400@gmail.com + +- Restored vtk-string-length.patch to solve buffer overflow errors +during string copy operations + +------------------------------------------------------------------- +Wed Mar 30 03:42:15 UTC 2011 - badshah400@gmail.com + +- Added vtk-sqldatabaseschema.patch (from upstream) to fix +compilation errors with python enabled + +------------------------------------------------------------------- +Wed Mar 23 18:21:30 UTC 2011 - badshah400@gmail.com + +- Update to version 5.6.1, rebase existing patches and remove +unnecessary ones + +------------------------------------------------------------------- +Wed Mar 23 11:01:06 UTC 2011 - badshah400@gmail.com + +- Add vtk-python2.7-compat.patch to fix build problems with +python 2.7 +- Add vtk-gcc4.3.patch to fix building issues with gcc 4.3 + +------------------------------------------------------------------ +Thu Mar 25 11:50:35 CET 2010 - boris@steki.net + +- Extended buffer size in VTK/Utilities/kwsys/SystemInformation.cxx +to fix buffer overflow report from rpmlint + diff --git a/vtk-compat_gl.spec b/vtk-compat_gl.spec new file mode 100644 index 0000000..7a92cba --- /dev/null +++ b/vtk-compat_gl.spec @@ -0,0 +1,554 @@ +# +# spec file for package vtk-compat_gl +# +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + + +%define compat_gl 1 +%define pkgname vtk + +%if %{compat_gl} +Name: vtk-compat_gl +%else +Name: vtk +%endif +Version: 7.1.0 +Release: 0 +%define series 7.1 +# This is a variant BSD license, a cross between BSD and ZLIB. +# For all intents, it has the same rights and restrictions as BSD. +# http://fedoraproject.org/wiki/Licensing/BSD#VTKBSDVariant +Summary: The Visualization Toolkit - A high level 3D visualization library +License: BSD-3-Clause +Group: Productivity/Scientific/Other +Url: http://vtk.org/ +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 +Source1: %{name}-rpmlintrc +# PATCH-FIX-UPSTREAM vtk-fix-file-contains-date-time.patch badshah400@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 badshah400@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 +BuildRequires: Mesa-libGL-devel +BuildRequires: R-base-devel +BuildRequires: boost-devel +BuildRequires: chrpath +BuildRequires: cmake >= 3.4 +BuildRequires: doxygen +BuildRequires: fdupes +BuildRequires: freetype2-devel +BuildRequires: gcc-c++ +BuildRequires: gl2ps-devel +BuildRequires: gnuplot +BuildRequires: graphviz +BuildRequires: hdf5-devel +BuildRequires: java-devel +BuildRequires: libQtWebKit-devel +BuildRequires: libX11-devel +BuildRequires: libXt-devel +BuildRequires: libexpat-devel +BuildRequires: libiodbc-devel +BuildRequires: libjpeg-devel +BuildRequires: libmysqlclient-devel +BuildRequires: libnetcdf_c++-devel +BuildRequires: libpng-devel +BuildRequires: libtheora-devel +BuildRequires: libtiff-devel +BuildRequires: netcdf-devel +BuildRequires: openmpi-devel +BuildRequires: python3-devel +BuildRequires: tcl-devel +BuildRequires: tk-devel +BuildRequires: wget +BuildRequires: zlib-devel +%if 0%{?suse_version} > 1320 +BuildRequires: python3-qt5-devel +BuildRequires: pkgconfig(Qt5OpenGL) +BuildRequires: pkgconfig(Qt5OpenGLExtensions) +BuildRequires: pkgconfig(Qt5Sql) +BuildRequires: pkgconfig(Qt5WebKitWidgets) +BuildRequires: pkgconfig(Qt5Widgets) +%else +BuildRequires: libqt4-devel +BuildRequires: python3-qt4-devel +%endif +%if %{?sles_version} +BuildRequires: libxml2-devel +%else +BuildRequires: pkgconfig(libxml-2.0) +%endif +# jsoncpp available for openSUSE > 13.2 & Leap +%if 0%{?suse_version} > 1320 || 0%{suse_version} == 1315 +BuildRequires: jsoncpp-devel +%endif +BuildRoot: %{_tmppath}/%{name}-%{version}-build +%if 0%{?suse_version} > 1320 +%define qtdir %{_lib}/qt5 +%else +%define qtdir %{_lib}/qt4 +%endif +%if %{compat_gl} +Conflicts: vtk +Provides: vtk = %{version} +%else +Conflicts: vtk-compat_gl +%endif + +%description +VTK is an open-source software system for image processing, 3D +graphics, volume rendering and visualization. VTK includes many +advanced algorithms (e.g., surface reconstruction, implicit modelling, +decimation) and rendering techniques (e.g., hardware-accelerated +volume rendering, LOD control). + +%package devel +Summary: VTK header files for building C++ code +Group: Development/Libraries/Other +Requires: %{name} = %{version} +Requires: %{name}-java = %{version} +Requires: %{name}-qt = %{version} +Requires: %{name}-tcl = %{version} +Requires: Mesa-libGL-devel +Requires: R-base-devel +Requires: gl2ps-devel +Requires: hdf5-devel +# jsoncpp available for openSUSE > 13.2 & Leap +%if 0%{?suse_version} > 1320 || 0%{suse_version} == 1315 +Requires: jsoncpp-devel +%endif +Requires: freetype2-devel +Requires: libexpat-devel +Requires: libjpeg-devel +Requires: libmysqlclient-devel +Requires: libnetcdf_c++-devel +Requires: libogg-devel +Requires: libpng-devel +Requires: libtheora-devel +Requires: libtiff-devel +Requires: libxml2-devel +Requires: netcdf-devel +Requires: openmpi-devel +Requires: python3-%{name} = %{version} +Requires: python3-%{name}-qt = %{version} +%if %{compat_gl} +Conflicts: vtk-devel +Provides: vtk-devel +%else +Conflicts: vtk-compat_gl-devel +%endif + +%description devel +VTK is an open-source software system for image processing, 3D +graphics, volume rendering and visualization. VTK includes many +advanced algorithms (e.g., surface reconstruction, implicit modelling, +decimation) and rendering techniques (e.g., hardware-accelerated +volume rendering, LOD control). + +This provides the VTK header files required to compile C++ programs that +use VTK to do 3D visualisation. + +%package java +Summary: Java bindings for VTK +Group: Development/Libraries/Java +Requires: %{name} = %{version} +%if %{compat_gl} +Conflicts: vtk-java +Provides: vtk-java +%else +Conflicts: vtk-compat_gl-java +%endif + +%description java +VTK is an open-source software system for image processing, 3D +graphics, volume rendering and visualization. VTK includes many +advanced algorithms (e.g., surface reconstruction, implicit modelling, +decimation) and rendering techniques (e.g., hardware-accelerated +volume rendering, LOD control). + +This package provides java bindings for VTK. + +%package -n python3-%{name} +Summary: Python bindings for VTK +Group: System/Libraries +Requires: %{name} = %{version} +# DESPITE NOT BEING A DEVEL PACKAGE, THIS REQUIRES OPENMPI-DEVEL TO RUN +Requires: openmpi-devel +%if %{compat_gl} +Conflicts: python3-vtk +Provides: python3-vtk +%else +Conflicts: python3-vtk-compat_gl +%endif + +%description -n python3-%{name} +VTK is an open-source software system for image processing, 3D +graphics, volume rendering and visualization. VTK includes many +advanced algorithms (e.g., surface reconstruction, implicit modelling, +decimation) and rendering techniques (e.g., hardware-accelerated +volume rendering, LOD control). + +This package provides python bindings for VTK. + +%package -n python3-%{name}-qt +Summary: Qt Python VTK widget +Group: System/Libraries +Requires: %{name} = %{version} +Requires: %{name}-qt = %{version} +Requires: python3-%{name} = %{version} +%if 0%{?suse_version} > 1320 +Requires: libQt5OpenGL-devel +Requires: libQt5OpenGLExtensions-devel-static +Requires: libQt5Sql-devel +Requires: libQt5WebKitWidgets-devel +Requires: libQt5Widgets-devel +Requires: python3-qt5 +%else +Requires: libqt4-devel +Requires: python3-qt4 +%endif +# CONFLICTS IS FOR A PKG (python-vtk) IN SCIENCE THAT IS NOT INTENDED TO BE INCLUDED IN openSUSE:FACTORY +Conflicts: python-vtk +%if %{compat_gl} +Conflicts: python3-vtk-qt +Provides: python3-vtk-qt +%else +Conflicts: python3-vtk-compat_gl-qt +%endif + +%description -n python3-%{name}-qt +VTK is an open-source software system for image processing, 3D +graphics, volume rendering and visualization. VTK includes many +advanced algorithms (e.g., surface reconstruction, implicit modelling, +decimation) and rendering techniques (e.g., hardware-accelerated +volume rendering, LOD control). + +This package provides python-qt bindings for VTK. + +%package qt +Summary: Qt VTK widget +Group: Development/Libraries/C and C++ +Requires: %{name} = %{version} +%if %{compat_gl} +Conflicts: vtk-qt +Provides: vtk-qt +%else +Conflicts: vtk-compat_gl-qt +%endif + +%description qt +VTK is an open-source software system for image processing, 3D +graphics, volume rendering and visualization. VTK includes many +advanced algorithms (e.g., surface reconstruction, implicit modelling, +decimation) and rendering techniques (e.g., hardware-accelerated +volume rendering, LOD control). + +This package provides Qt bindings for VTK. + +%package tcl +Summary: Tcl bindings for VTK +Group: System/Libraries +Requires: %{name} = %{version} +%if %{compat_gl} +Conflicts: vtk-tcl +Provides: vtk-tcl +%else +Conflicts: vtk-compat_gl-tcl +%endif + +%description tcl +VTK is an open-source software system for image processing, 3D +graphics, volume rendering and visualization. VTK includes many +advanced algorithms (e.g., surface reconstruction, implicit modelling, +decimation) and rendering techniques (e.g., hardware-accelerated +volume rendering, LOD control). + +This package provides tcl bindings for VTK. + +%package examples +Summary: Examples for VTK +Group: Productivity/Scientific/Other +Requires: %{name} = %{version} +Recommends: %{name}data = %{version} +%if %{compat_gl} +Conflicts: vtk-examples +Provides: vtk-examples +%else +Conflicts: vtk-compat_gl-examples +%endif + +%description examples +VTK is an open-source software system for image processing, 3D +graphics, volume rendering and visualization. VTK includes many +advanced algorithms (e.g., surface reconstruction, implicit modelling, +decimation) and rendering techniques (e.g., hardware-accelerated +volume rendering, LOD control). + +This package contains many well-commented examples showing how to use +VTK. Examples are available in the C++, Tcl, Python and Java +programming languages. + +%package testing +Summary: Testing programs for VTK +Group: Productivity/Scientific/Other +Requires: %{name} = %{version} +Requires: %{name}data = %{version} +%if %{compat_gl} +Conflicts: vtk-testing +Provides: vtk-testing +%else +Conflicts: vtk-compat_gl-testing +%endif + +%description testing +VTK is an open-source software system for image processing, 3D +graphics, volume rendering and visualization. VTK includes many +advanced algorithms (e.g., surface reconstruction, implicit modelling, +decimation) and rendering techniques (e.g., hardware-accelerated +volume rendering, LOD control). + +This package provides a few testing programs for VTK. + +%prep +%setup -q -n VTK-%{version} +%patch1 -p1 +%patch2 -p1 + +# Replace relative path ../../../VTKData with %%{_datadir}/%%{pkgname}data-%%{version} +# otherwise it will break on symlinks. +grep -rl '\.\./\.\./\.\./\.\./VTKData' . | xargs perl -pi -e's,\.\./\.\./\.\./\.\./VTKData,%{_datadir}/%{pkgname},g' + +%build +export CFLAGS="%{optflags}" +export CXXFLAGS="%{optflags}" + +mkdir build +pushd build +cmake .. \ + -DCMAKE_CXX_COMPILER:STRING='mpicxx' \ + -DCMAKE_C_COMPILER:STRING='mpicc' \ + -DBUILD_DOCUMENTATION:BOOL=ON \ + -DBUILD_EXAMPLES:BOOL=ON \ + -DBUILD_SHARED_LIBS:BOOL=ON \ + -DBUILD_TESTING:BOOL=OFF \ + -DCMAKE_SKIP_RPATH:BOOL=ON \ + -DVTK_CUSTOM_LIBRARY_SUFFIX="" \ + -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \ + -DSIP_INCLUDE_DIR:Path=%{py3_incdir} \ + -DVTK_INSTALL_ARCHIVE_DIR:PATH=%{_lib}/%{pkgname} \ + -DVTK_INSTALL_LIBRARY_DIR:PATH=%{_lib}/%{pkgname}\ + -DVTK_INSTALL_PACKAGE_DIR:PATH=%{_lib}/cmake/%{pkgname} \ + -DVTK_INSTALL_TCL_DIR:PATH=share/tcl/%{pkgname} \ +%if 0%{?suse_version} > 1320 + -DVTK_QT_VERSION=5 \ +%endif + -DVTK_INSTALL_QT_DIR:STRING=/%{qtdir}/plugins/designer \ + -DVTK_USE_OGGTHEORA_ENCODER:BOOL=ON \ + -DVTK_USE_RENDERING:BOOL=ON \ +%if %{compat_gl} + -DVTK_RENDERING_BACKEND:STRING='OpenGL' \ +%endif +%if 0%{?suse_version} > 1320 || 0%{suse_version} == 1315 + -DVTK_USE_SYSTEM_LIBRARIES:BOOL=ON \ +%else + -DVTK_USE_SYSTEM_LIBRARIES:BOOL=OFF \ +%endif + -DVTK_USE_SYSTEM_LIBPROJ4:BOOL=OFF \ + -DVTK_INSTALL_PYTHON_MODULE_DIR:PATH=%{_lib}/python%{py3_ver}/site-packages \ + -DVTK_WRAP_PYTHON:BOOL=ON \ + -DVTK_WRAP_JAVA:BOOL=ON \ + -DVTK_WRAP_PYTHON_SIP:BOOL=ON \ + -DVTK_WRAP_TCL:BOOL=ON \ + -DVTK_Group_MPI:BOOL=ON \ + -DVTK_Group_Imaging:BOOL=ON \ + -DVTK_Group_Qt:BOOL=ON \ + -DModule_vtkTestingCore:BOOL=ON \ + -DModule_vtkTestingRendering:BOOL=ON \ + -DVTK_Group_Rendering:BOOL=ON \ + -DVTK_Group_StandAlone:BOOL=ON \ + -DVTK_Group_Tk:BOOL=ON \ + -DVTK_Group_Views:BOOL=ON \ + -DModule_vtkFiltersStatisticsGnuR:BOOL=ON \ + -DVTK_WRAP_TCL:BOOL=ON \ + -DVTK_USE_SYSTEM_HDF5:BOOL=ON \ + -DVTK_USE_SYSTEM_NETCDF:BOOL=ON \ + -DVTK_PYTHON_VERSION=3 \ + -DCMAKE_NO_BUILTIN_CHRPATH:BOOL=ON \ + -DVTK_USE_SYSTEM_DIY2=OFF \ + -DVTK_USE_SYSTEM_GL2PS=OFF + +make %{?_smp_mflags} VERBOSE=1 + +# Remove executable bits from sources (some of which are generated) +find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or -name \*.gif | xargs chmod -x +popd + +%install +pushd build +%makeinstall + +# Install conf file to enable vtk to find its libraries +mkdir -p %{buildroot}/%{_sysconfdir}/ld.so.conf.d +echo %{_libdir}/%{pkgname} > %{buildroot}/%{_sysconfdir}/ld.so.conf.d/%{pkgname}.conf + +# Gather list of non-binding libraries +ls %{buildroot}%{_libdir}/%{pkgname}/lib*.so.* | grep -Ev '(Java|QVTK|Qt|Python|TCL)' | sed -e's,^%{buildroot},,' > libs.list + +# List of executable examples +cat > examples.list << EOF +Generate2DAMRDataSetWithPulse +Generate3DAMRDataSetWithPulse +HierarchicalBoxPipeline +ImageSlicing +DumpXMLFile +ParticleReader +GenerateCubesFromLabels +GenerateModelsFromLabels +Medical1 +Medical2 +Medical3 +Medical4 +Delaunay3D +Delaunay3DAlpha +finance +MultiBlock +BandedContours +FilledContours +TubesWithVaryingRadiusAndColors +BalloonWidget +Slider +Slider2D +LabeledMesh +Arrays +Cube +RGrid +SGrid +AmbientSpheres +Cylinder +DiffuseSpheres +SpecularSpheres +Cone +Cone2 +Cone3 +Cone4 +Cone5 +Cone6 +FixedPointVolumeRayCastMapperCT +GPURenderDemo +EOF + +# Install examples +for file in `cat examples.list`; do + install -p bin/$file %{buildroot}%{_bindir} +done +perl -pi -e's,^,%{_bindir}/,' examples.list + +# Remove rpaths from installed binaries +chrpath -d %{buildroot}%{_bindir}/* + +%fdupes -s %{buildroot} + +%post -p /sbin/ldconfig +%postun -p /sbin/ldconfig + +%post java -p /sbin/ldconfig +%postun java -p /sbin/ldconfig + +%post -n python3-%{name} -p /sbin/ldconfig +%postun -n python3-%{name} -p /sbin/ldconfig + +%post -n python3-%{name}-qt -p /sbin/ldconfig +%postun -n python3-%{name}-qt -p /sbin/ldconfig + +%post qt -p /sbin/ldconfig +%postun qt -p /sbin/ldconfig + +%post tcl -p /sbin/ldconfig +%postun tcl -p /sbin/ldconfig + +%files -f build/libs.list +%defattr(-,root,root,-) +%config %{_sysconfdir}/ld.so.conf.d/%{pkgname}.conf +%doc Copyright.txt +%dir %{_libdir}/%{pkgname}/ +%if 0%{?suse_version} <= 1320 && 0%{?suse_version} != 1315 +%{_libdir}/libvtktiff.so.* +%endif + +%files devel +%defattr(-,root,root,-) +%{_bindir}/%{pkgname}EncodeString +%{_bindir}/%{pkgname}HashSource +%{_bindir}/%{pkgname}WrapHierarchy +%if %{compat_gl} +%{_bindir}/%{pkgname}ParseOGLExt +%endif +%{_bindir}/pvtk +%if 0%{?suse_version} <= 1320 && 0%{?suse_version} != 1315 +%{_bindir}/%{pkgname}mkg3states +%endif +%{_datadir}/doc/%{pkgname}-%{series}/ +%{_libdir}/%{pkgname}/*.so +%if 0%{?suse_version} <= 1320 && 0%{?suse_version} != 1315 +%{_libdir}/libvtktiff.so +%endif +%{_libdir}/cmake/%{pkgname}/ +%{_libdir}/%{pkgname}/libvtkWrappingTools.a +%{_includedir}/%{pkgname}-%{series}/ +%{_datadir}/tcl/vtk/vtktcl.c + +%files java +%defattr(-,root,root,-) +%{_bindir}/%{pkgname}ParseJava +%{_bindir}/%{pkgname}WrapJava +%{_libdir}/%{pkgname}/%{pkgname}.jar +%{_libdir}/%{pkgname}/*Java.so.* + +%files -n python3-%{name} +%defattr(-,root,root,-) +%{_bindir}/%{pkgname}python +%{_bindir}/p%{pkgname}python +%{_bindir}/%{pkgname}WrapPython +%{_bindir}/%{pkgname}WrapPythonInit +%{_libdir}/%{pkgname}/*Python*.so.* +%{python3_sitearch}/%{pkgname}/ +%dir %{_libdir}/%{pkgname}/site-packages +%{_libdir}/%{pkgname}/site-packages/mpi4py/ +%exclude %{_libdir}/%{pkgname}/*QtPython*.so.* + +%files tcl +%defattr(-,root,root,-) +%{_bindir}/%{pkgname} +%{_bindir}/%{pkgname}WrapTcl +%{_bindir}/%{pkgname}WrapTclInit +%{_datadir}/tcl/%{pkgname}/ +%{_libdir}/%{pkgname}/lib%{pkgname}*TCL.so.* +%exclude %{_libdir}/%{pkgname}/*QtTCL.so.* +%exclude %{_datadir}/tcl/vtk/vtktcl.c + +%files qt +%defattr(-,root,root,-) +%{_libdir}/%{pkgname}/lib*Qt*.so.* +%dir %{_prefix}/%{qtdir}/plugins/designer +%{_prefix}/%{qtdir}/plugins/designer/libQVTKWidgetPlugin.so +%exclude %{_libdir}/%{pkgname}/*Python*.so.* + +%files -n python3-%{name}-qt +%defattr(-,root,root,-) +%{_libdir}/%{pkgname}/*QtPython*.so.* + +%files examples -f build/examples.list +%defattr(-,root,root,-) + +%changelog diff --git a/vtk-rpmlintrc b/vtk-rpmlintrc index 719311b..17af08d 100644 --- a/vtk-rpmlintrc +++ b/vtk-rpmlintrc @@ -1,6 +1,6 @@ # FIXME: See if packaging can be tweaked to avoid these warnings later # python-vtk needs these devel files to work -addFilter("python3-vtk.* devel-file-in-non-devel-package") +addFilter("python3-vtk* devel-file-in-non-devel-package") # Upstream does not supply manuals for any binary, suppress warnings addFilter(".* no-manual-page-for-binary") diff --git a/vtk.changes b/vtk.changes index 3db489c..4403ad0 100644 --- a/vtk.changes +++ b/vtk.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Fri Apr 14 18:18:36 UTC 2017 - kkhere.geo@gmail.com + +- add a separate package vtk-compat_gl compile using rendering backend + OpenGL for systems without brand new graphic cards +- default package vtk still uses new rendering backend default OpenGL2 + ------------------------------------------------------------------- Wed Nov 23 10:28:02 UTC 2016 - badshah400@gmail.com diff --git a/vtk.spec b/vtk.spec index 33496ee..e70a904 100644 --- a/vtk.spec +++ b/vtk.spec @@ -1,7 +1,7 @@ # -# spec file for package vtk +# spec file for package vtk-compat_gl # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,7 +16,14 @@ # +%define compat_gl 0 +%define pkgname vtk + +%if %{compat_gl} +Name: vtk-compat_gl +%else Name: vtk +%endif Version: 7.1.0 Release: 0 %define series 7.1 @@ -29,7 +36,7 @@ Group: Productivity/Scientific/Other Url: http://vtk.org/ 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 -Source1: vtk-rpmlintrc +Source1: %{name}-rpmlintrc # PATCH-FIX-UPSTREAM vtk-fix-file-contains-date-time.patch badshah400@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 badshah400@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 @@ -92,6 +99,12 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build %else %define qtdir %{_lib}/qt4 %endif +%if %{compat_gl} +Conflicts: vtk +Provides: vtk = %{version} +%else +Conflicts: vtk-compat_gl +%endif %description VTK is an open-source software system for image processing, 3D @@ -129,6 +142,12 @@ Requires: netcdf-devel Requires: openmpi-devel Requires: python3-%{name} = %{version} Requires: python3-%{name}-qt = %{version} +%if %{compat_gl} +Conflicts: vtk-devel +Provides: vtk-devel +%else +Conflicts: vtk-compat_gl-devel +%endif %description devel VTK is an open-source software system for image processing, 3D @@ -144,6 +163,12 @@ use VTK to do 3D visualisation. Summary: Java bindings for VTK Group: Development/Libraries/Java Requires: %{name} = %{version} +%if %{compat_gl} +Conflicts: vtk-java +Provides: vtk-java +%else +Conflicts: vtk-compat_gl-java +%endif %description java VTK is an open-source software system for image processing, 3D @@ -160,6 +185,12 @@ Group: System/Libraries Requires: %{name} = %{version} # DESPITE NOT BEING A DEVEL PACKAGE, THIS REQUIRES OPENMPI-DEVEL TO RUN Requires: openmpi-devel +%if %{compat_gl} +Conflicts: python3-vtk +Provides: python3-vtk +%else +Conflicts: python3-vtk-compat_gl +%endif %description -n python3-%{name} VTK is an open-source software system for image processing, 3D @@ -189,6 +220,12 @@ Requires: python3-qt4 %endif # CONFLICTS IS FOR A PKG (python-vtk) IN SCIENCE THAT IS NOT INTENDED TO BE INCLUDED IN openSUSE:FACTORY Conflicts: python-vtk +%if %{compat_gl} +Conflicts: python3-vtk-qt +Provides: python3-vtk-qt +%else +Conflicts: python3-vtk-compat_gl-qt +%endif %description -n python3-%{name}-qt VTK is an open-source software system for image processing, 3D @@ -203,6 +240,12 @@ This package provides python-qt bindings for VTK. Summary: Qt VTK widget Group: Development/Libraries/C and C++ Requires: %{name} = %{version} +%if %{compat_gl} +Conflicts: vtk-qt +Provides: vtk-qt +%else +Conflicts: vtk-compat_gl-qt +%endif %description qt VTK is an open-source software system for image processing, 3D @@ -217,6 +260,12 @@ This package provides Qt bindings for VTK. Summary: Tcl bindings for VTK Group: System/Libraries Requires: %{name} = %{version} +%if %{compat_gl} +Conflicts: vtk-tcl +Provides: vtk-tcl +%else +Conflicts: vtk-compat_gl-tcl +%endif %description tcl VTK is an open-source software system for image processing, 3D @@ -232,6 +281,12 @@ Summary: Examples for VTK Group: Productivity/Scientific/Other Requires: %{name} = %{version} Recommends: %{name}data = %{version} +%if %{compat_gl} +Conflicts: vtk-examples +Provides: vtk-examples +%else +Conflicts: vtk-compat_gl-examples +%endif %description examples VTK is an open-source software system for image processing, 3D @@ -249,6 +304,12 @@ Summary: Testing programs for VTK Group: Productivity/Scientific/Other Requires: %{name} = %{version} Requires: %{name}data = %{version} +%if %{compat_gl} +Conflicts: vtk-testing +Provides: vtk-testing +%else +Conflicts: vtk-compat_gl-testing +%endif %description testing VTK is an open-source software system for image processing, 3D @@ -264,9 +325,9 @@ This package provides a few testing programs for VTK. %patch1 -p1 %patch2 -p1 -# Replace relative path ../../../VTKData with %%{_datadir}/%%{name}data-%%{version} +# Replace relative path ../../../VTKData with %%{_datadir}/%%{pkgname}data-%%{version} # otherwise it will break on symlinks. -grep -rl '\.\./\.\./\.\./\.\./VTKData' . | xargs perl -pi -e's,\.\./\.\./\.\./\.\./VTKData,%{_datadir}/%{name},g' +grep -rl '\.\./\.\./\.\./\.\./VTKData' . | xargs perl -pi -e's,\.\./\.\./\.\./\.\./VTKData,%{_datadir}/%{pkgname},g' %build export CFLAGS="%{optflags}" @@ -285,16 +346,19 @@ cmake .. \ -DVTK_CUSTOM_LIBRARY_SUFFIX="" \ -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \ -DSIP_INCLUDE_DIR:Path=%{py3_incdir} \ - -DVTK_INSTALL_ARCHIVE_DIR:PATH=%{_lib}/%{name} \ - -DVTK_INSTALL_LIBRARY_DIR:PATH=%{_lib}/%{name}\ - -DVTK_INSTALL_PACKAGE_DIR:PATH=%{_lib}/cmake/%{name} \ - -DVTK_INSTALL_TCL_DIR:PATH=share/tcl/%{name} \ + -DVTK_INSTALL_ARCHIVE_DIR:PATH=%{_lib}/%{pkgname} \ + -DVTK_INSTALL_LIBRARY_DIR:PATH=%{_lib}/%{pkgname}\ + -DVTK_INSTALL_PACKAGE_DIR:PATH=%{_lib}/cmake/%{pkgname} \ + -DVTK_INSTALL_TCL_DIR:PATH=share/tcl/%{pkgname} \ %if 0%{?suse_version} > 1320 -DVTK_QT_VERSION=5 \ %endif -DVTK_INSTALL_QT_DIR:STRING=/%{qtdir}/plugins/designer \ -DVTK_USE_OGGTHEORA_ENCODER:BOOL=ON \ -DVTK_USE_RENDERING:BOOL=ON \ +%if %{compat_gl} + -DVTK_RENDERING_BACKEND:STRING='OpenGL' \ +%endif %if 0%{?suse_version} > 1320 || 0%{suse_version} == 1315 -DVTK_USE_SYSTEM_LIBRARIES:BOOL=ON \ %else @@ -336,10 +400,10 @@ pushd build # Install conf file to enable vtk to find its libraries mkdir -p %{buildroot}/%{_sysconfdir}/ld.so.conf.d -echo %{_libdir}/%{name} > %{buildroot}/%{_sysconfdir}/ld.so.conf.d/%{name}.conf +echo %{_libdir}/%{pkgname} > %{buildroot}/%{_sysconfdir}/ld.so.conf.d/%{pkgname}.conf # Gather list of non-binding libraries -ls %{buildroot}%{_libdir}/%{name}/lib*.so.* | grep -Ev '(Java|QVTK|Qt|Python|TCL)' | sed -e's,^%{buildroot},,' > libs.list +ls %{buildroot}%{_libdir}/%{pkgname}/lib*.so.* | grep -Ev '(Java|QVTK|Qt|Python|TCL)' | sed -e's,^%{buildroot},,' > libs.list # List of executable examples cat > examples.list << EOF @@ -415,71 +479,74 @@ chrpath -d %{buildroot}%{_bindir}/* %files -f build/libs.list %defattr(-,root,root,-) -%config %{_sysconfdir}/ld.so.conf.d/%{name}.conf +%config %{_sysconfdir}/ld.so.conf.d/%{pkgname}.conf %doc Copyright.txt -%dir %{_libdir}/%{name}/ +%dir %{_libdir}/%{pkgname}/ %if 0%{?suse_version} <= 1320 && 0%{?suse_version} != 1315 %{_libdir}/libvtktiff.so.* %endif %files devel %defattr(-,root,root,-) -%{_bindir}/%{name}EncodeString -%{_bindir}/%{name}HashSource -%{_bindir}/%{name}WrapHierarchy +%{_bindir}/%{pkgname}EncodeString +%{_bindir}/%{pkgname}HashSource +%{_bindir}/%{pkgname}WrapHierarchy +%if %{compat_gl} +%{_bindir}/%{pkgname}ParseOGLExt +%endif %{_bindir}/pvtk %if 0%{?suse_version} <= 1320 && 0%{?suse_version} != 1315 -%{_bindir}/%{name}mkg3states +%{_bindir}/%{pkgname}mkg3states %endif -%{_datadir}/doc/%{name}-%{series}/ -%{_libdir}/%{name}/*.so +%{_datadir}/doc/%{pkgname}-%{series}/ +%{_libdir}/%{pkgname}/*.so %if 0%{?suse_version} <= 1320 && 0%{?suse_version} != 1315 %{_libdir}/libvtktiff.so %endif -%{_libdir}/cmake/%{name}/ -%{_libdir}/%{name}/libvtkWrappingTools.a -%{_includedir}/%{name}-%{series}/ +%{_libdir}/cmake/%{pkgname}/ +%{_libdir}/%{pkgname}/libvtkWrappingTools.a +%{_includedir}/%{pkgname}-%{series}/ %{_datadir}/tcl/vtk/vtktcl.c %files java %defattr(-,root,root,-) -%{_bindir}/%{name}ParseJava -%{_bindir}/%{name}WrapJava -%{_libdir}/%{name}/%{name}.jar -%{_libdir}/%{name}/*Java.so.* +%{_bindir}/%{pkgname}ParseJava +%{_bindir}/%{pkgname}WrapJava +%{_libdir}/%{pkgname}/%{pkgname}.jar +%{_libdir}/%{pkgname}/*Java.so.* %files -n python3-%{name} %defattr(-,root,root,-) -%{_bindir}/%{name}python -%{_bindir}/p%{name}python -%{_bindir}/%{name}WrapPython -%{_bindir}/%{name}WrapPythonInit -%{_libdir}/%{name}/*Python*.so.* -%{python3_sitearch}/%{name}/ -%dir %{_libdir}/%{name}/site-packages -%{_libdir}/%{name}/site-packages/mpi4py/ -%exclude %{_libdir}/%{name}/*QtPython*.so.* +%{_bindir}/%{pkgname}python +%{_bindir}/p%{pkgname}python +%{_bindir}/%{pkgname}WrapPython +%{_bindir}/%{pkgname}WrapPythonInit +%{_libdir}/%{pkgname}/*Python*.so.* +%{python3_sitearch}/%{pkgname}/ +%dir %{_libdir}/%{pkgname}/site-packages +%{_libdir}/%{pkgname}/site-packages/mpi4py/ +%exclude %{_libdir}/%{pkgname}/*QtPython*.so.* %files tcl %defattr(-,root,root,-) -%{_bindir}/%{name} -%{_bindir}/%{name}WrapTcl -%{_bindir}/%{name}WrapTclInit -%{_datadir}/tcl/%{name}/ -%{_libdir}/%{name}/lib%{name}*TCL.so.* -%exclude %{_libdir}/%{name}/*QtTCL.so.* +%{_bindir}/%{pkgname} +%{_bindir}/%{pkgname}WrapTcl +%{_bindir}/%{pkgname}WrapTclInit +%{_datadir}/tcl/%{pkgname}/ +%{_libdir}/%{pkgname}/lib%{pkgname}*TCL.so.* +%exclude %{_libdir}/%{pkgname}/*QtTCL.so.* %exclude %{_datadir}/tcl/vtk/vtktcl.c %files qt %defattr(-,root,root,-) -%{_libdir}/%{name}/lib*Qt*.so.* +%{_libdir}/%{pkgname}/lib*Qt*.so.* %dir %{_prefix}/%{qtdir}/plugins/designer %{_prefix}/%{qtdir}/plugins/designer/libQVTKWidgetPlugin.so -%exclude %{_libdir}/%{name}/*Python*.so.* +%exclude %{_libdir}/%{pkgname}/*Python*.so.* %files -n python3-%{name}-qt %defattr(-,root,root,-) -%{_libdir}/%{name}/*QtPython*.so.* +%{_libdir}/%{pkgname}/*QtPython*.so.* %files examples -f build/examples.list %defattr(-,root,root,-) From 32724c207f3f46ed01d6eace795d7acef80565b27a7e00033c70564bcbefc549 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ismail=20D=C3=B6nmez?= Date: Fri, 14 Jul 2017 08:49:26 +0000 Subject: [PATCH 02/11] Accepting request 509014 from home:badshah400:branches:science - Update to version 8.0.0: * Read about changes here: https://blog.kitware.com/vtk-8-0-0/ * API changes: http://www.vtk.org/Wiki/VTK/API_Changes_7_1_0_to_8_0_0 - Add BuildRequires on liblz4-devel, libharu-devel, mandatory requirements for version 8.0.0. - Run make DoxygenDoc to generate documentation. - Update to version 8.0.0: * Read about changes here: https://blog.kitware.com/vtk-8-0-0/ * API changes: http://www.vtk.org/Wiki/VTK/API_Changes_7_1_0_to_8_0_0 - Add BuildRequires on liblz4-devel, libharu-devel, mandatory requirements for version 8.0.0. - Run make DoxygenDoc to generate documentation. OBS-URL: https://build.opensuse.org/request/show/509014 OBS-URL: https://build.opensuse.org/package/show/science/vtk?expand=0&rev=82 --- VTK-7.1.0.tar.gz | 3 --- VTK-8.0.0.tar.gz | 3 +++ vtk-Rinterface-uintptr_t.patch | 14 +++++++------- vtk-compat_gl.changes | 11 +++++++++++ vtk-compat_gl.spec | 7 +++++-- vtk.changes | 11 +++++++++++ vtk.spec | 7 +++++-- 7 files changed, 42 insertions(+), 14 deletions(-) delete mode 100644 VTK-7.1.0.tar.gz create mode 100644 VTK-8.0.0.tar.gz diff --git a/VTK-7.1.0.tar.gz b/VTK-7.1.0.tar.gz deleted file mode 100644 index ddfacf6..0000000 --- a/VTK-7.1.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5f3ea001204d4f714be972a810a62c0f2277fbb9d8d2f8df39562988ca37497a -size 31171521 diff --git a/VTK-8.0.0.tar.gz b/VTK-8.0.0.tar.gz new file mode 100644 index 0000000..8c0e12c --- /dev/null +++ b/VTK-8.0.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7e727706fb689fb6fd764d3b47cac8f4dc03204806ff19a10dfd406c6072a27 +size 30855576 diff --git a/vtk-Rinterface-uintptr_t.patch b/vtk-Rinterface-uintptr_t.patch index 5c9c29e..4ea531d 100644 --- a/vtk-Rinterface-uintptr_t.patch +++ b/vtk-Rinterface-uintptr_t.patch @@ -1,8 +1,8 @@ -Index: VTK-7.0.0/Filters/StatisticsGnuR/CMakeLists.txt +Index: VTK-8.0.0/Filters/StatisticsGnuR/CMakeLists.txt =================================================================== ---- VTK-7.0.0.orig/Filters/StatisticsGnuR/CMakeLists.txt -+++ VTK-7.0.0/Filters/StatisticsGnuR/CMakeLists.txt -@@ -16,6 +16,10 @@ include_directories(${R_INCLUDE_DIR}) +--- VTK-8.0.0.orig/Filters/StatisticsGnuR/CMakeLists.txt ++++ VTK-8.0.0/Filters/StatisticsGnuR/CMakeLists.txt +@@ -27,6 +27,10 @@ include_directories(${R_INCLUDE_DIR}) add_definitions(-DVTK_BUILDING_FILTERS_STATISTICSGNUR) @@ -13,10 +13,10 @@ Index: VTK-7.0.0/Filters/StatisticsGnuR/CMakeLists.txt # Configure the module specific settings into a module configured header. configure_file(${CMAKE_CURRENT_SOURCE_DIR}/vtkFiltersStatisticsGnuRConfigure.h.in ${CMAKE_CURRENT_BINARY_DIR}/vtkFiltersStatisticsGnuRConfigure.h) -Index: VTK-7.0.0/Filters/StatisticsGnuR/vtkFiltersStatisticsGnuRConfigure.h.in +Index: VTK-8.0.0/Filters/StatisticsGnuR/vtkFiltersStatisticsGnuRConfigure.h.in =================================================================== ---- VTK-7.0.0.orig/Filters/StatisticsGnuR/vtkFiltersStatisticsGnuRConfigure.h.in -+++ VTK-7.0.0/Filters/StatisticsGnuR/vtkFiltersStatisticsGnuRConfigure.h.in +--- VTK-8.0.0.orig/Filters/StatisticsGnuR/vtkFiltersStatisticsGnuRConfigure.h.in ++++ VTK-8.0.0/Filters/StatisticsGnuR/vtkFiltersStatisticsGnuRConfigure.h.in @@ -17,5 +17,6 @@ #define vtkFiltersStatisticsGnuRConfigure_h diff --git a/vtk-compat_gl.changes b/vtk-compat_gl.changes index 4403ad0..1bdf27d 100644 --- a/vtk-compat_gl.changes +++ b/vtk-compat_gl.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Mon Jul 3 13:47:05 UTC 2017 - badshah400@gmail.com + +- Update to version 8.0.0: + * Read about changes here: https://blog.kitware.com/vtk-8-0-0/ + * API changes: + http://www.vtk.org/Wiki/VTK/API_Changes_7_1_0_to_8_0_0 +- Add BuildRequires on liblz4-devel, libharu-devel, mandatory + requirements for version 8.0.0. +- Run make DoxygenDoc to generate documentation. + ------------------------------------------------------------------- Fri Apr 14 18:18:36 UTC 2017 - kkhere.geo@gmail.com diff --git a/vtk-compat_gl.spec b/vtk-compat_gl.spec index 7a92cba..34a5185 100644 --- a/vtk-compat_gl.spec +++ b/vtk-compat_gl.spec @@ -24,9 +24,9 @@ Name: vtk-compat_gl %else Name: vtk %endif -Version: 7.1.0 +Version: 8.0.0 Release: 0 -%define series 7.1 +%define series 8.0 # This is a variant BSD license, a cross between BSD and ZLIB. # For all intents, it has the same rights and restrictions as BSD. # http://fedoraproject.org/wiki/Licensing/BSD#VTKBSDVariant @@ -59,8 +59,10 @@ BuildRequires: libQtWebKit-devel BuildRequires: libX11-devel BuildRequires: libXt-devel BuildRequires: libexpat-devel +BuildRequires: libharu-devel BuildRequires: libiodbc-devel BuildRequires: libjpeg-devel +BuildRequires: liblz4-devel BuildRequires: libmysqlclient-devel BuildRequires: libnetcdf_c++-devel BuildRequires: libpng-devel @@ -389,6 +391,7 @@ cmake .. \ -DVTK_USE_SYSTEM_GL2PS=OFF make %{?_smp_mflags} VERBOSE=1 +make %{?_smp_mflags} DoxygenDoc # Remove executable bits from sources (some of which are generated) find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or -name \*.gif | xargs chmod -x diff --git a/vtk.changes b/vtk.changes index 4403ad0..1bdf27d 100644 --- a/vtk.changes +++ b/vtk.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Mon Jul 3 13:47:05 UTC 2017 - badshah400@gmail.com + +- Update to version 8.0.0: + * Read about changes here: https://blog.kitware.com/vtk-8-0-0/ + * API changes: + http://www.vtk.org/Wiki/VTK/API_Changes_7_1_0_to_8_0_0 +- Add BuildRequires on liblz4-devel, libharu-devel, mandatory + requirements for version 8.0.0. +- Run make DoxygenDoc to generate documentation. + ------------------------------------------------------------------- Fri Apr 14 18:18:36 UTC 2017 - kkhere.geo@gmail.com diff --git a/vtk.spec b/vtk.spec index e70a904..5b2f90d 100644 --- a/vtk.spec +++ b/vtk.spec @@ -24,9 +24,9 @@ Name: vtk-compat_gl %else Name: vtk %endif -Version: 7.1.0 +Version: 8.0.0 Release: 0 -%define series 7.1 +%define series 8.0 # This is a variant BSD license, a cross between BSD and ZLIB. # For all intents, it has the same rights and restrictions as BSD. # http://fedoraproject.org/wiki/Licensing/BSD#VTKBSDVariant @@ -59,8 +59,10 @@ BuildRequires: libQtWebKit-devel BuildRequires: libX11-devel BuildRequires: libXt-devel BuildRequires: libexpat-devel +BuildRequires: libharu-devel BuildRequires: libiodbc-devel BuildRequires: libjpeg-devel +BuildRequires: liblz4-devel BuildRequires: libmysqlclient-devel BuildRequires: libnetcdf_c++-devel BuildRequires: libpng-devel @@ -389,6 +391,7 @@ cmake .. \ -DVTK_USE_SYSTEM_GL2PS=OFF make %{?_smp_mflags} VERBOSE=1 +make %{?_smp_mflags} DoxygenDoc # Remove executable bits from sources (some of which are generated) find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or -name \*.gif | xargs chmod -x From 3dbda990085e5acf7a9f3dfa206d7814ddcb4e88bd793b0ac459a050864b510b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ismail=20D=C3=B6nmez?= Date: Fri, 14 Jul 2017 08:56:32 +0000 Subject: [PATCH 03/11] - OBS-URL: https://build.opensuse.org/package/show/science/vtk?expand=0&rev=83 --- vtk.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vtk.spec b/vtk.spec index 5b2f90d..a7943c8 100644 --- a/vtk.spec +++ b/vtk.spec @@ -36,7 +36,7 @@ Group: Productivity/Scientific/Other Url: http://vtk.org/ 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 -Source1: %{name}-rpmlintrc +Source1: vtk-rpmlintrc # PATCH-FIX-UPSTREAM vtk-fix-file-contains-date-time.patch badshah400@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 badshah400@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 From ffe99d6da7987b979ba49c537fda871b0820e9b8583a2001e354a4da5cc6a1c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Mon, 17 Jul 2017 23:39:39 +0000 Subject: [PATCH 04/11] fix OBS-URL: https://build.opensuse.org/package/show/science/vtk?expand=0&rev=84 --- vtk-compat_gl.spec | 2 ++ vtk.changes | 6 ++++++ vtk.spec | 2 ++ 3 files changed, 10 insertions(+) diff --git a/vtk-compat_gl.spec b/vtk-compat_gl.spec index 34a5185..b5e6597 100644 --- a/vtk-compat_gl.spec +++ b/vtk-compat_gl.spec @@ -132,7 +132,9 @@ Requires: jsoncpp-devel %endif Requires: freetype2-devel Requires: libexpat-devel +Requires: libharu-devel Requires: libjpeg-devel +Requires: liblz4-devel Requires: libmysqlclient-devel Requires: libnetcdf_c++-devel Requires: libogg-devel diff --git a/vtk.changes b/vtk.changes index 1bdf27d..281db96 100644 --- a/vtk.changes +++ b/vtk.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Mon Jul 17 23:37:37 UTC 2017 - adrian@suse.de + +- add liblz4-devel and libharu-devel also to Requires of devel package + (fixes linking errors in other packages) + ------------------------------------------------------------------- Mon Jul 3 13:47:05 UTC 2017 - badshah400@gmail.com diff --git a/vtk.spec b/vtk.spec index a7943c8..f79a2c1 100644 --- a/vtk.spec +++ b/vtk.spec @@ -132,7 +132,9 @@ Requires: jsoncpp-devel %endif Requires: freetype2-devel Requires: libexpat-devel +Requires: libharu-devel Requires: libjpeg-devel +Requires: liblz4-devel Requires: libmysqlclient-devel Requires: libnetcdf_c++-devel Requires: libogg-devel From 00cc6dfdccba7e8f61de62a41b231a5a47825dd0ecdb0081b96c675e479f1492 Mon Sep 17 00:00:00 2001 From: Dmitry Roshchin Date: Sat, 5 Aug 2017 16:43:24 +0000 Subject: [PATCH 05/11] Accepting request 512394 from home:jengelh:branches:science - Trim descriptions and rectify RPM groups. - Trim descriptions and rectify RPM groups. OBS-URL: https://build.opensuse.org/request/show/512394 OBS-URL: https://build.opensuse.org/package/show/science/vtk?expand=0&rev=85 --- vtk-compat_gl.changes | 11 ++++++ vtk-compat_gl.spec | 81 +++++++++++++++-------------------------- vtk.changes | 5 +++ vtk.spec | 83 +++++++++++++++---------------------------- 4 files changed, 73 insertions(+), 107 deletions(-) diff --git a/vtk-compat_gl.changes b/vtk-compat_gl.changes index 1bdf27d..ce7c178 100644 --- a/vtk-compat_gl.changes +++ b/vtk-compat_gl.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Tue Jul 25 00:04:11 UTC 2017 - jengelh@inai.de + +- Trim descriptions and rectify RPM groups. + +------------------------------------------------------------------- +Mon Jul 17 23:37:37 UTC 2017 - adrian@suse.de + +- add liblz4-devel and libharu-devel also to Requires of devel package + (fixes linking errors in other packages) + ------------------------------------------------------------------- Mon Jul 3 13:47:05 UTC 2017 - badshah400@gmail.com diff --git a/vtk-compat_gl.spec b/vtk-compat_gl.spec index b5e6597..a437101 100644 --- a/vtk-compat_gl.spec +++ b/vtk-compat_gl.spec @@ -109,15 +109,15 @@ Conflicts: vtk-compat_gl %endif %description -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. VTK includes many advanced algorithms +(e.g. surface reconstruction, implicit modelling, decimation) and +rendering techniques (e.g. hardware-accelerated volume rendering, LOD +control). %package devel Summary: VTK header files for building C++ code -Group: Development/Libraries/Other +Group: Development/Libraries/C and C++ Requires: %{name} = %{version} Requires: %{name}-java = %{version} Requires: %{name}-qt = %{version} @@ -154,11 +154,8 @@ Conflicts: vtk-compat_gl-devel %endif %description devel -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. This provides the VTK header files required to compile C++ programs that use VTK to do 3D visualisation. @@ -175,17 +172,14 @@ Conflicts: vtk-compat_gl-java %endif %description java -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. This package provides java bindings for VTK. %package -n python3-%{name} Summary: Python bindings for VTK -Group: System/Libraries +Group: Development/Languages/Python Requires: %{name} = %{version} # DESPITE NOT BEING A DEVEL PACKAGE, THIS REQUIRES OPENMPI-DEVEL TO RUN Requires: openmpi-devel @@ -197,17 +191,14 @@ Conflicts: python3-vtk-compat_gl %endif %description -n python3-%{name} -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. -This package provides python bindings for VTK. +This package provides Python bindings for VTK. %package -n python3-%{name}-qt Summary: Qt Python VTK widget -Group: System/Libraries +Group: Development/Languages/Python Requires: %{name} = %{version} Requires: %{name}-qt = %{version} Requires: python3-%{name} = %{version} @@ -232,11 +223,8 @@ Conflicts: python3-vtk-compat_gl-qt %endif %description -n python3-%{name}-qt -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. This package provides python-qt bindings for VTK. @@ -252,11 +240,8 @@ Conflicts: vtk-compat_gl-qt %endif %description qt -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. This package provides Qt bindings for VTK. @@ -272,11 +257,8 @@ Conflicts: vtk-compat_gl-tcl %endif %description tcl -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. This package provides tcl bindings for VTK. @@ -293,15 +275,11 @@ Conflicts: vtk-compat_gl-examples %endif %description examples -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. -This package contains many well-commented examples showing how to use -VTK. Examples are available in the C++, Tcl, Python and Java -programming languages. +This package contains many examples showing how to use VTK. Examples +are available in the C++, Tcl, Python and Java programming languages. %package testing Summary: Testing programs for VTK @@ -316,11 +294,8 @@ Conflicts: vtk-compat_gl-testing %endif %description testing -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. This package provides a few testing programs for VTK. @@ -396,7 +371,7 @@ make %{?_smp_mflags} VERBOSE=1 make %{?_smp_mflags} DoxygenDoc # Remove executable bits from sources (some of which are generated) -find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or -name \*.gif | xargs chmod -x +find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or -name \*.gif -exec chmod -x "{}" "+" popd %install diff --git a/vtk.changes b/vtk.changes index 281db96..ce7c178 100644 --- a/vtk.changes +++ b/vtk.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Tue Jul 25 00:04:11 UTC 2017 - jengelh@inai.de + +- Trim descriptions and rectify RPM groups. + ------------------------------------------------------------------- Mon Jul 17 23:37:37 UTC 2017 - adrian@suse.de diff --git a/vtk.spec b/vtk.spec index f79a2c1..e822b49 100644 --- a/vtk.spec +++ b/vtk.spec @@ -36,7 +36,7 @@ Group: Productivity/Scientific/Other Url: http://vtk.org/ 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 -Source1: vtk-rpmlintrc +Source1: %{name}-rpmlintrc # PATCH-FIX-UPSTREAM vtk-fix-file-contains-date-time.patch badshah400@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 badshah400@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 @@ -109,15 +109,15 @@ Conflicts: vtk-compat_gl %endif %description -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. VTK includes many advanced algorithms +(e.g. surface reconstruction, implicit modelling, decimation) and +rendering techniques (e.g. hardware-accelerated volume rendering, LOD +control). %package devel Summary: VTK header files for building C++ code -Group: Development/Libraries/Other +Group: Development/Libraries/C and C++ Requires: %{name} = %{version} Requires: %{name}-java = %{version} Requires: %{name}-qt = %{version} @@ -154,11 +154,8 @@ Conflicts: vtk-compat_gl-devel %endif %description devel -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. This provides the VTK header files required to compile C++ programs that use VTK to do 3D visualisation. @@ -175,17 +172,14 @@ Conflicts: vtk-compat_gl-java %endif %description java -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. This package provides java bindings for VTK. %package -n python3-%{name} Summary: Python bindings for VTK -Group: System/Libraries +Group: Development/Languages/Python Requires: %{name} = %{version} # DESPITE NOT BEING A DEVEL PACKAGE, THIS REQUIRES OPENMPI-DEVEL TO RUN Requires: openmpi-devel @@ -197,17 +191,14 @@ Conflicts: python3-vtk-compat_gl %endif %description -n python3-%{name} -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. -This package provides python bindings for VTK. +This package provides Python bindings for VTK. %package -n python3-%{name}-qt Summary: Qt Python VTK widget -Group: System/Libraries +Group: Development/Languages/Python Requires: %{name} = %{version} Requires: %{name}-qt = %{version} Requires: python3-%{name} = %{version} @@ -232,11 +223,8 @@ Conflicts: python3-vtk-compat_gl-qt %endif %description -n python3-%{name}-qt -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. This package provides python-qt bindings for VTK. @@ -252,11 +240,8 @@ Conflicts: vtk-compat_gl-qt %endif %description qt -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. This package provides Qt bindings for VTK. @@ -272,11 +257,8 @@ Conflicts: vtk-compat_gl-tcl %endif %description tcl -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. This package provides tcl bindings for VTK. @@ -293,15 +275,11 @@ Conflicts: vtk-compat_gl-examples %endif %description examples -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. -This package contains many well-commented examples showing how to use -VTK. Examples are available in the C++, Tcl, Python and Java -programming languages. +This package contains many examples showing how to use VTK. Examples +are available in the C++, Tcl, Python and Java programming languages. %package testing Summary: Testing programs for VTK @@ -316,11 +294,8 @@ Conflicts: vtk-compat_gl-testing %endif %description testing -VTK is an open-source software system for image processing, 3D -graphics, volume rendering and visualization. VTK includes many -advanced algorithms (e.g., surface reconstruction, implicit modelling, -decimation) and rendering techniques (e.g., hardware-accelerated -volume rendering, LOD control). +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. This package provides a few testing programs for VTK. @@ -396,7 +371,7 @@ make %{?_smp_mflags} VERBOSE=1 make %{?_smp_mflags} DoxygenDoc # Remove executable bits from sources (some of which are generated) -find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or -name \*.gif | xargs chmod -x +find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or -name \*.gif -exec chmod -x "{}" "+" popd %install From f9b954c5fe0e23672501a76d774b1206a4d8bf60807b54c6d6bfe248629b3386 Mon Sep 17 00:00:00 2001 From: Dmitry Roshchin Date: Wed, 9 Aug 2017 07:38:23 +0000 Subject: [PATCH 06/11] Accepting request 515038 from home:badshah400:branches:science - Implement shared library packaging policy for vtk: + Rename %{name} to %{shlib}. + Move all shared library objects to %{shlib} package. + Remove no longer needed Requires from %{name}-devel package; e.g.: %{name}-java contains the java binaries and jar object now, and no longer the lib*Java.so file which has been moved into %{shlib}. + Adapt conflicts for vtk-compat_gl accordingly. + Install libraries to /usr/lib(64) instead of /usr/lib(64)/vtk. + Do away with python3-%{name}-qt subpackage and Obsolete/Provide it from %{shlib} as it only contained a shared lib object. - Use system mpi4py; add BuildRequires on python3-mpi4py. - liblz4 >= 1.7.3 now required (since version 8.0); adapt BuildRequires accordingly. - Implement shared library packaging policy for vtk: + Rename %{name} to %{shlib}. + Move all shared library objects to %{shlib} package. + Remove no longer needed Requires from %{name}-devel package; e.g.: %{name}-java contains the java binaries and jar object now, and no longer the lib*Java.so file which has been moved into %{shlib}. + Adapt conflicts for vtk-compat_gl accordingly. + Install libraries to /usr/lib(64) instead of /usr/lib(64)/vtk. + Do away with python3-%{name}-qt subpackage and Obsolete/Provide it from %{shlib} as it only contained a shared lib object. OBS-URL: https://build.opensuse.org/request/show/515038 OBS-URL: https://build.opensuse.org/package/show/science/vtk?expand=0&rev=86 --- vtk-compat_gl.changes | 20 ++++++ vtk-compat_gl.spec | 158 +++++++++++++++--------------------------- vtk.changes | 20 ++++++ vtk.spec | 158 +++++++++++++++--------------------------- 4 files changed, 148 insertions(+), 208 deletions(-) diff --git a/vtk-compat_gl.changes b/vtk-compat_gl.changes index ce7c178..090735f 100644 --- a/vtk-compat_gl.changes +++ b/vtk-compat_gl.changes @@ -1,3 +1,23 @@ +------------------------------------------------------------------- +Mon Aug 7 09:13:03 UTC 2017 - badshah400@gmail.com + +- Implement shared library packaging policy for vtk: + + Rename %{name} to %{shlib}. + + Move all shared library objects to %{shlib} package. + + Remove no longer needed Requires from %{name}-devel package; + e.g.: %{name}-java contains the java binaries and jar object + now, and no longer the lib*Java.so file which has been moved + into %{shlib}. + + Adapt conflicts for vtk-compat_gl accordingly. + + Install libraries to /usr/lib(64) instead of + /usr/lib(64)/vtk. + + Do away with python3-%{name}-qt subpackage and + Obsolete/Provide it from %{shlib} as it only contained a + shared lib object. +- Use system mpi4py; add BuildRequires on python3-mpi4py. +- liblz4 >= 1.7.3 now required (since version 8.0); adapt + BuildRequires accordingly. + ------------------------------------------------------------------- Tue Jul 25 00:04:11 UTC 2017 - jengelh@inai.de diff --git a/vtk-compat_gl.spec b/vtk-compat_gl.spec index a437101..af23966 100644 --- a/vtk-compat_gl.spec +++ b/vtk-compat_gl.spec @@ -18,6 +18,14 @@ %define compat_gl 1 %define pkgname vtk +%define vtklib lib%{pkgname}1 +%define vtkcompatlib libvtkcompat_gl1 + +%if %{compat_gl} +%define shlib %{vtkcompatlib} +%else +%define shlib %{vtklib} +%endif %if %{compat_gl} Name: vtk-compat_gl @@ -36,7 +44,12 @@ Group: Productivity/Scientific/Other Url: http://vtk.org/ 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 -Source1: %{name}-rpmlintrc +# 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 badshah400@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 badshah400@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 @@ -62,7 +75,7 @@ BuildRequires: libexpat-devel BuildRequires: libharu-devel BuildRequires: libiodbc-devel BuildRequires: libjpeg-devel -BuildRequires: liblz4-devel +BuildRequires: liblz4-devel >= 1.7.3 BuildRequires: libmysqlclient-devel BuildRequires: libnetcdf_c++-devel BuildRequires: libpng-devel @@ -71,6 +84,7 @@ BuildRequires: libtiff-devel BuildRequires: netcdf-devel BuildRequires: openmpi-devel BuildRequires: python3-devel +BuildRequires: python3-mpi4py-devel BuildRequires: tcl-devel BuildRequires: tk-devel BuildRequires: wget @@ -101,12 +115,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build %else %define qtdir %{_lib}/qt4 %endif -%if %{compat_gl} -Conflicts: vtk -Provides: vtk = %{version} -%else -Conflicts: vtk-compat_gl -%endif +Provides: python3-%{name}-qt = %{version} %description VTK is a software system for image processing, 3D graphics, volume @@ -115,13 +124,25 @@ rendering and visualization. VTK includes many advanced algorithms rendering techniques (e.g. hardware-accelerated volume rendering, LOD control). +%package -n %{shlib} +Summary: Shared libraries for %{pkgname} +Group: Productivity/Scientific/Other +%if %{compat_gl} +Conflicts: %{vtklib} +%else +Conflicts: %{vtkcompatlib} +%endif + +%description -n %{shlib} +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. + +This package provides the shared libraries for VTK. + %package devel Summary: VTK header files for building C++ code Group: Development/Libraries/C and C++ -Requires: %{name} = %{version} -Requires: %{name}-java = %{version} -Requires: %{name}-qt = %{version} -Requires: %{name}-tcl = %{version} +Requires: %{shlib} = %{version} Requires: Mesa-libGL-devel Requires: R-base-devel Requires: gl2ps-devel @@ -144,8 +165,6 @@ Requires: libtiff-devel Requires: libxml2-devel Requires: netcdf-devel Requires: openmpi-devel -Requires: python3-%{name} = %{version} -Requires: python3-%{name}-qt = %{version} %if %{compat_gl} Conflicts: vtk-devel Provides: vtk-devel @@ -163,7 +182,7 @@ use VTK to do 3D visualisation. %package java Summary: Java bindings for VTK Group: Development/Libraries/Java -Requires: %{name} = %{version} +Requires: %{shlib} = %{version} %if %{compat_gl} Conflicts: vtk-java Provides: vtk-java @@ -180,7 +199,7 @@ This package provides java bindings for VTK. %package -n python3-%{name} Summary: Python bindings for VTK Group: Development/Languages/Python -Requires: %{name} = %{version} +Requires: %{shlib} = %{version} # DESPITE NOT BEING A DEVEL PACKAGE, THIS REQUIRES OPENMPI-DEVEL TO RUN Requires: openmpi-devel %if %{compat_gl} @@ -194,44 +213,12 @@ Conflicts: python3-vtk-compat_gl VTK is a software system for image processing, 3D graphics, volume rendering and visualization. -This package provides Python bindings for VTK. - -%package -n python3-%{name}-qt -Summary: Qt Python VTK widget -Group: Development/Languages/Python -Requires: %{name} = %{version} -Requires: %{name}-qt = %{version} -Requires: python3-%{name} = %{version} -%if 0%{?suse_version} > 1320 -Requires: libQt5OpenGL-devel -Requires: libQt5OpenGLExtensions-devel-static -Requires: libQt5Sql-devel -Requires: libQt5WebKitWidgets-devel -Requires: libQt5Widgets-devel -Requires: python3-qt5 -%else -Requires: libqt4-devel -Requires: python3-qt4 -%endif -# CONFLICTS IS FOR A PKG (python-vtk) IN SCIENCE THAT IS NOT INTENDED TO BE INCLUDED IN openSUSE:FACTORY -Conflicts: python-vtk -%if %{compat_gl} -Conflicts: python3-vtk-qt -Provides: python3-vtk-qt -%else -Conflicts: python3-vtk-compat_gl-qt -%endif - -%description -n python3-%{name}-qt -VTK is a software system for image processing, 3D graphics, volume -rendering and visualization. - -This package provides python-qt bindings for VTK. +This package provides python bindings for VTK. %package qt Summary: Qt VTK widget Group: Development/Libraries/C and C++ -Requires: %{name} = %{version} +Requires: %{shlib} = %{version} %if %{compat_gl} Conflicts: vtk-qt Provides: vtk-qt @@ -248,7 +235,7 @@ This package provides Qt bindings for VTK. %package tcl Summary: Tcl bindings for VTK Group: System/Libraries -Requires: %{name} = %{version} +Requires: %{shlib} = %{version} %if %{compat_gl} Conflicts: vtk-tcl Provides: vtk-tcl @@ -265,7 +252,7 @@ This package provides tcl bindings for VTK. %package examples Summary: Examples for VTK Group: Productivity/Scientific/Other -Requires: %{name} = %{version} +Requires: %{shlib} = %{version} Recommends: %{name}data = %{version} %if %{compat_gl} Conflicts: vtk-examples @@ -284,8 +271,8 @@ are available in the C++, Tcl, Python and Java programming languages. %package testing Summary: Testing programs for VTK Group: Productivity/Scientific/Other -Requires: %{name} = %{version} Requires: %{name}data = %{version} +Requires: %{shlib} = %{version} %if %{compat_gl} Conflicts: vtk-testing Provides: vtk-testing @@ -325,8 +312,8 @@ cmake .. \ -DVTK_CUSTOM_LIBRARY_SUFFIX="" \ -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \ -DSIP_INCLUDE_DIR:Path=%{py3_incdir} \ - -DVTK_INSTALL_ARCHIVE_DIR:PATH=%{_lib}/%{pkgname} \ - -DVTK_INSTALL_LIBRARY_DIR:PATH=%{_lib}/%{pkgname}\ + -DVTK_INSTALL_ARCHIVE_DIR:PATH=%{_lib} \ + -DVTK_INSTALL_LIBRARY_DIR:PATH=%{_lib} \ -DVTK_INSTALL_PACKAGE_DIR:PATH=%{_lib}/cmake/%{pkgname} \ -DVTK_INSTALL_TCL_DIR:PATH=share/tcl/%{pkgname} \ %if 0%{?suse_version} > 1320 @@ -365,25 +352,22 @@ cmake .. \ -DVTK_PYTHON_VERSION=3 \ -DCMAKE_NO_BUILTIN_CHRPATH:BOOL=ON \ -DVTK_USE_SYSTEM_DIY2=OFF \ - -DVTK_USE_SYSTEM_GL2PS=OFF + -DVTK_USE_SYSTEM_GL2PS=OFF \ + -DVTK_USE_SYSTEM_MPI4PY=ON make %{?_smp_mflags} VERBOSE=1 make %{?_smp_mflags} DoxygenDoc # Remove executable bits from sources (some of which are generated) -find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or -name \*.gif -exec chmod -x "{}" "+" +find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or -name \*.gif | xargs chmod -x popd %install pushd build %makeinstall -# Install conf file to enable vtk to find its libraries -mkdir -p %{buildroot}/%{_sysconfdir}/ld.so.conf.d -echo %{_libdir}/%{pkgname} > %{buildroot}/%{_sysconfdir}/ld.so.conf.d/%{pkgname}.conf - # Gather list of non-binding libraries -ls %{buildroot}%{_libdir}/%{pkgname}/lib*.so.* | grep -Ev '(Java|QVTK|Qt|Python|TCL)' | sed -e's,^%{buildroot},,' > libs.list +ls %{buildroot}%{_libdir}/lib*.so.* | sed -e's,^%{buildroot},,' > libs.list # List of executable examples cat > examples.list << EOF @@ -439,35 +423,15 @@ chrpath -d %{buildroot}%{_bindir}/* %fdupes -s %{buildroot} -%post -p /sbin/ldconfig -%postun -p /sbin/ldconfig +%post -n %{shlib} -p /sbin/ldconfig +%postun -n %{shlib} -p /sbin/ldconfig -%post java -p /sbin/ldconfig -%postun java -p /sbin/ldconfig - -%post -n python3-%{name} -p /sbin/ldconfig -%postun -n python3-%{name} -p /sbin/ldconfig - -%post -n python3-%{name}-qt -p /sbin/ldconfig -%postun -n python3-%{name}-qt -p /sbin/ldconfig - -%post qt -p /sbin/ldconfig -%postun qt -p /sbin/ldconfig - -%post tcl -p /sbin/ldconfig -%postun tcl -p /sbin/ldconfig - -%files -f build/libs.list +%files -n %{shlib} -f build/libs.list %defattr(-,root,root,-) -%config %{_sysconfdir}/ld.so.conf.d/%{pkgname}.conf -%doc Copyright.txt -%dir %{_libdir}/%{pkgname}/ -%if 0%{?suse_version} <= 1320 && 0%{?suse_version} != 1315 -%{_libdir}/libvtktiff.so.* -%endif %files devel %defattr(-,root,root,-) +%doc Copyright.txt %{_bindir}/%{pkgname}EncodeString %{_bindir}/%{pkgname}HashSource %{_bindir}/%{pkgname}WrapHierarchy @@ -479,21 +443,20 @@ chrpath -d %{buildroot}%{_bindir}/* %{_bindir}/%{pkgname}mkg3states %endif %{_datadir}/doc/%{pkgname}-%{series}/ -%{_libdir}/%{pkgname}/*.so +%{_libdir}/*.so %if 0%{?suse_version} <= 1320 && 0%{?suse_version} != 1315 %{_libdir}/libvtktiff.so %endif %{_libdir}/cmake/%{pkgname}/ -%{_libdir}/%{pkgname}/libvtkWrappingTools.a +%{_libdir}/libvtkWrappingTools.a %{_includedir}/%{pkgname}-%{series}/ -%{_datadir}/tcl/vtk/vtktcl.c +%exclude %{_datadir}/tcl/vtk/vtktcl.c %files java %defattr(-,root,root,-) %{_bindir}/%{pkgname}ParseJava %{_bindir}/%{pkgname}WrapJava -%{_libdir}/%{pkgname}/%{pkgname}.jar -%{_libdir}/%{pkgname}/*Java.so.* +%{_libdir}/%{pkgname}.jar %files -n python3-%{name} %defattr(-,root,root,-) @@ -501,11 +464,7 @@ chrpath -d %{buildroot}%{_bindir}/* %{_bindir}/p%{pkgname}python %{_bindir}/%{pkgname}WrapPython %{_bindir}/%{pkgname}WrapPythonInit -%{_libdir}/%{pkgname}/*Python*.so.* %{python3_sitearch}/%{pkgname}/ -%dir %{_libdir}/%{pkgname}/site-packages -%{_libdir}/%{pkgname}/site-packages/mpi4py/ -%exclude %{_libdir}/%{pkgname}/*QtPython*.so.* %files tcl %defattr(-,root,root,-) @@ -513,20 +472,11 @@ chrpath -d %{buildroot}%{_bindir}/* %{_bindir}/%{pkgname}WrapTcl %{_bindir}/%{pkgname}WrapTclInit %{_datadir}/tcl/%{pkgname}/ -%{_libdir}/%{pkgname}/lib%{pkgname}*TCL.so.* -%exclude %{_libdir}/%{pkgname}/*QtTCL.so.* -%exclude %{_datadir}/tcl/vtk/vtktcl.c %files qt %defattr(-,root,root,-) -%{_libdir}/%{pkgname}/lib*Qt*.so.* %dir %{_prefix}/%{qtdir}/plugins/designer %{_prefix}/%{qtdir}/plugins/designer/libQVTKWidgetPlugin.so -%exclude %{_libdir}/%{pkgname}/*Python*.so.* - -%files -n python3-%{name}-qt -%defattr(-,root,root,-) -%{_libdir}/%{pkgname}/*QtPython*.so.* %files examples -f build/examples.list %defattr(-,root,root,-) diff --git a/vtk.changes b/vtk.changes index ce7c178..090735f 100644 --- a/vtk.changes +++ b/vtk.changes @@ -1,3 +1,23 @@ +------------------------------------------------------------------- +Mon Aug 7 09:13:03 UTC 2017 - badshah400@gmail.com + +- Implement shared library packaging policy for vtk: + + Rename %{name} to %{shlib}. + + Move all shared library objects to %{shlib} package. + + Remove no longer needed Requires from %{name}-devel package; + e.g.: %{name}-java contains the java binaries and jar object + now, and no longer the lib*Java.so file which has been moved + into %{shlib}. + + Adapt conflicts for vtk-compat_gl accordingly. + + Install libraries to /usr/lib(64) instead of + /usr/lib(64)/vtk. + + Do away with python3-%{name}-qt subpackage and + Obsolete/Provide it from %{shlib} as it only contained a + shared lib object. +- Use system mpi4py; add BuildRequires on python3-mpi4py. +- liblz4 >= 1.7.3 now required (since version 8.0); adapt + BuildRequires accordingly. + ------------------------------------------------------------------- Tue Jul 25 00:04:11 UTC 2017 - jengelh@inai.de diff --git a/vtk.spec b/vtk.spec index e822b49..2ade832 100644 --- a/vtk.spec +++ b/vtk.spec @@ -18,6 +18,14 @@ %define compat_gl 0 %define pkgname vtk +%define vtklib lib%{pkgname}1 +%define vtkcompatlib libvtkcompat_gl1 + +%if %{compat_gl} +%define shlib %{vtkcompatlib} +%else +%define shlib %{vtklib} +%endif %if %{compat_gl} Name: vtk-compat_gl @@ -36,7 +44,12 @@ Group: Productivity/Scientific/Other Url: http://vtk.org/ 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 -Source1: %{name}-rpmlintrc +# 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 badshah400@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 badshah400@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 @@ -62,7 +75,7 @@ BuildRequires: libexpat-devel BuildRequires: libharu-devel BuildRequires: libiodbc-devel BuildRequires: libjpeg-devel -BuildRequires: liblz4-devel +BuildRequires: liblz4-devel >= 1.7.3 BuildRequires: libmysqlclient-devel BuildRequires: libnetcdf_c++-devel BuildRequires: libpng-devel @@ -71,6 +84,7 @@ BuildRequires: libtiff-devel BuildRequires: netcdf-devel BuildRequires: openmpi-devel BuildRequires: python3-devel +BuildRequires: python3-mpi4py-devel BuildRequires: tcl-devel BuildRequires: tk-devel BuildRequires: wget @@ -101,12 +115,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build %else %define qtdir %{_lib}/qt4 %endif -%if %{compat_gl} -Conflicts: vtk -Provides: vtk = %{version} -%else -Conflicts: vtk-compat_gl -%endif +Provides: python3-%{name}-qt = %{version} %description VTK is a software system for image processing, 3D graphics, volume @@ -115,13 +124,25 @@ rendering and visualization. VTK includes many advanced algorithms rendering techniques (e.g. hardware-accelerated volume rendering, LOD control). +%package -n %{shlib} +Summary: Shared libraries for %{pkgname} +Group: Productivity/Scientific/Other +%if %{compat_gl} +Conflicts: %{vtklib} +%else +Conflicts: %{vtkcompatlib} +%endif + +%description -n %{shlib} +VTK is a software system for image processing, 3D graphics, volume +rendering and visualization. + +This package provides the shared libraries for VTK. + %package devel Summary: VTK header files for building C++ code Group: Development/Libraries/C and C++ -Requires: %{name} = %{version} -Requires: %{name}-java = %{version} -Requires: %{name}-qt = %{version} -Requires: %{name}-tcl = %{version} +Requires: %{shlib} = %{version} Requires: Mesa-libGL-devel Requires: R-base-devel Requires: gl2ps-devel @@ -144,8 +165,6 @@ Requires: libtiff-devel Requires: libxml2-devel Requires: netcdf-devel Requires: openmpi-devel -Requires: python3-%{name} = %{version} -Requires: python3-%{name}-qt = %{version} %if %{compat_gl} Conflicts: vtk-devel Provides: vtk-devel @@ -163,7 +182,7 @@ use VTK to do 3D visualisation. %package java Summary: Java bindings for VTK Group: Development/Libraries/Java -Requires: %{name} = %{version} +Requires: %{shlib} = %{version} %if %{compat_gl} Conflicts: vtk-java Provides: vtk-java @@ -180,7 +199,7 @@ This package provides java bindings for VTK. %package -n python3-%{name} Summary: Python bindings for VTK Group: Development/Languages/Python -Requires: %{name} = %{version} +Requires: %{shlib} = %{version} # DESPITE NOT BEING A DEVEL PACKAGE, THIS REQUIRES OPENMPI-DEVEL TO RUN Requires: openmpi-devel %if %{compat_gl} @@ -194,44 +213,12 @@ Conflicts: python3-vtk-compat_gl VTK is a software system for image processing, 3D graphics, volume rendering and visualization. -This package provides Python bindings for VTK. - -%package -n python3-%{name}-qt -Summary: Qt Python VTK widget -Group: Development/Languages/Python -Requires: %{name} = %{version} -Requires: %{name}-qt = %{version} -Requires: python3-%{name} = %{version} -%if 0%{?suse_version} > 1320 -Requires: libQt5OpenGL-devel -Requires: libQt5OpenGLExtensions-devel-static -Requires: libQt5Sql-devel -Requires: libQt5WebKitWidgets-devel -Requires: libQt5Widgets-devel -Requires: python3-qt5 -%else -Requires: libqt4-devel -Requires: python3-qt4 -%endif -# CONFLICTS IS FOR A PKG (python-vtk) IN SCIENCE THAT IS NOT INTENDED TO BE INCLUDED IN openSUSE:FACTORY -Conflicts: python-vtk -%if %{compat_gl} -Conflicts: python3-vtk-qt -Provides: python3-vtk-qt -%else -Conflicts: python3-vtk-compat_gl-qt -%endif - -%description -n python3-%{name}-qt -VTK is a software system for image processing, 3D graphics, volume -rendering and visualization. - -This package provides python-qt bindings for VTK. +This package provides python bindings for VTK. %package qt Summary: Qt VTK widget Group: Development/Libraries/C and C++ -Requires: %{name} = %{version} +Requires: %{shlib} = %{version} %if %{compat_gl} Conflicts: vtk-qt Provides: vtk-qt @@ -248,7 +235,7 @@ This package provides Qt bindings for VTK. %package tcl Summary: Tcl bindings for VTK Group: System/Libraries -Requires: %{name} = %{version} +Requires: %{shlib} = %{version} %if %{compat_gl} Conflicts: vtk-tcl Provides: vtk-tcl @@ -265,7 +252,7 @@ This package provides tcl bindings for VTK. %package examples Summary: Examples for VTK Group: Productivity/Scientific/Other -Requires: %{name} = %{version} +Requires: %{shlib} = %{version} Recommends: %{name}data = %{version} %if %{compat_gl} Conflicts: vtk-examples @@ -284,8 +271,8 @@ are available in the C++, Tcl, Python and Java programming languages. %package testing Summary: Testing programs for VTK Group: Productivity/Scientific/Other -Requires: %{name} = %{version} Requires: %{name}data = %{version} +Requires: %{shlib} = %{version} %if %{compat_gl} Conflicts: vtk-testing Provides: vtk-testing @@ -325,8 +312,8 @@ cmake .. \ -DVTK_CUSTOM_LIBRARY_SUFFIX="" \ -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \ -DSIP_INCLUDE_DIR:Path=%{py3_incdir} \ - -DVTK_INSTALL_ARCHIVE_DIR:PATH=%{_lib}/%{pkgname} \ - -DVTK_INSTALL_LIBRARY_DIR:PATH=%{_lib}/%{pkgname}\ + -DVTK_INSTALL_ARCHIVE_DIR:PATH=%{_lib} \ + -DVTK_INSTALL_LIBRARY_DIR:PATH=%{_lib} \ -DVTK_INSTALL_PACKAGE_DIR:PATH=%{_lib}/cmake/%{pkgname} \ -DVTK_INSTALL_TCL_DIR:PATH=share/tcl/%{pkgname} \ %if 0%{?suse_version} > 1320 @@ -365,25 +352,22 @@ cmake .. \ -DVTK_PYTHON_VERSION=3 \ -DCMAKE_NO_BUILTIN_CHRPATH:BOOL=ON \ -DVTK_USE_SYSTEM_DIY2=OFF \ - -DVTK_USE_SYSTEM_GL2PS=OFF + -DVTK_USE_SYSTEM_GL2PS=OFF \ + -DVTK_USE_SYSTEM_MPI4PY=ON make %{?_smp_mflags} VERBOSE=1 make %{?_smp_mflags} DoxygenDoc # Remove executable bits from sources (some of which are generated) -find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or -name \*.gif -exec chmod -x "{}" "+" +find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or -name \*.gif | xargs chmod -x popd %install pushd build %makeinstall -# Install conf file to enable vtk to find its libraries -mkdir -p %{buildroot}/%{_sysconfdir}/ld.so.conf.d -echo %{_libdir}/%{pkgname} > %{buildroot}/%{_sysconfdir}/ld.so.conf.d/%{pkgname}.conf - # Gather list of non-binding libraries -ls %{buildroot}%{_libdir}/%{pkgname}/lib*.so.* | grep -Ev '(Java|QVTK|Qt|Python|TCL)' | sed -e's,^%{buildroot},,' > libs.list +ls %{buildroot}%{_libdir}/lib*.so.* | sed -e's,^%{buildroot},,' > libs.list # List of executable examples cat > examples.list << EOF @@ -439,35 +423,15 @@ chrpath -d %{buildroot}%{_bindir}/* %fdupes -s %{buildroot} -%post -p /sbin/ldconfig -%postun -p /sbin/ldconfig +%post -n %{shlib} -p /sbin/ldconfig +%postun -n %{shlib} -p /sbin/ldconfig -%post java -p /sbin/ldconfig -%postun java -p /sbin/ldconfig - -%post -n python3-%{name} -p /sbin/ldconfig -%postun -n python3-%{name} -p /sbin/ldconfig - -%post -n python3-%{name}-qt -p /sbin/ldconfig -%postun -n python3-%{name}-qt -p /sbin/ldconfig - -%post qt -p /sbin/ldconfig -%postun qt -p /sbin/ldconfig - -%post tcl -p /sbin/ldconfig -%postun tcl -p /sbin/ldconfig - -%files -f build/libs.list +%files -n %{shlib} -f build/libs.list %defattr(-,root,root,-) -%config %{_sysconfdir}/ld.so.conf.d/%{pkgname}.conf -%doc Copyright.txt -%dir %{_libdir}/%{pkgname}/ -%if 0%{?suse_version} <= 1320 && 0%{?suse_version} != 1315 -%{_libdir}/libvtktiff.so.* -%endif %files devel %defattr(-,root,root,-) +%doc Copyright.txt %{_bindir}/%{pkgname}EncodeString %{_bindir}/%{pkgname}HashSource %{_bindir}/%{pkgname}WrapHierarchy @@ -479,21 +443,20 @@ chrpath -d %{buildroot}%{_bindir}/* %{_bindir}/%{pkgname}mkg3states %endif %{_datadir}/doc/%{pkgname}-%{series}/ -%{_libdir}/%{pkgname}/*.so +%{_libdir}/*.so %if 0%{?suse_version} <= 1320 && 0%{?suse_version} != 1315 %{_libdir}/libvtktiff.so %endif %{_libdir}/cmake/%{pkgname}/ -%{_libdir}/%{pkgname}/libvtkWrappingTools.a +%{_libdir}/libvtkWrappingTools.a %{_includedir}/%{pkgname}-%{series}/ -%{_datadir}/tcl/vtk/vtktcl.c +%exclude %{_datadir}/tcl/vtk/vtktcl.c %files java %defattr(-,root,root,-) %{_bindir}/%{pkgname}ParseJava %{_bindir}/%{pkgname}WrapJava -%{_libdir}/%{pkgname}/%{pkgname}.jar -%{_libdir}/%{pkgname}/*Java.so.* +%{_libdir}/%{pkgname}.jar %files -n python3-%{name} %defattr(-,root,root,-) @@ -501,11 +464,7 @@ chrpath -d %{buildroot}%{_bindir}/* %{_bindir}/p%{pkgname}python %{_bindir}/%{pkgname}WrapPython %{_bindir}/%{pkgname}WrapPythonInit -%{_libdir}/%{pkgname}/*Python*.so.* %{python3_sitearch}/%{pkgname}/ -%dir %{_libdir}/%{pkgname}/site-packages -%{_libdir}/%{pkgname}/site-packages/mpi4py/ -%exclude %{_libdir}/%{pkgname}/*QtPython*.so.* %files tcl %defattr(-,root,root,-) @@ -513,20 +472,11 @@ chrpath -d %{buildroot}%{_bindir}/* %{_bindir}/%{pkgname}WrapTcl %{_bindir}/%{pkgname}WrapTclInit %{_datadir}/tcl/%{pkgname}/ -%{_libdir}/%{pkgname}/lib%{pkgname}*TCL.so.* -%exclude %{_libdir}/%{pkgname}/*QtTCL.so.* -%exclude %{_datadir}/tcl/vtk/vtktcl.c %files qt %defattr(-,root,root,-) -%{_libdir}/%{pkgname}/lib*Qt*.so.* %dir %{_prefix}/%{qtdir}/plugins/designer %{_prefix}/%{qtdir}/plugins/designer/libQVTKWidgetPlugin.so -%exclude %{_libdir}/%{pkgname}/*Python*.so.* - -%files -n python3-%{name}-qt -%defattr(-,root,root,-) -%{_libdir}/%{pkgname}/*QtPython*.so.* %files examples -f build/examples.list %defattr(-,root,root,-) From 11ae0524736eb4134d159f8babe04cb2ffd217e96d57c2824dcf7a59fe111af8 Mon Sep 17 00:00:00 2001 From: Atri Bhattacharya Date: Wed, 9 Aug 2017 10:08:22 +0000 Subject: [PATCH 07/11] Accepting request 515324 from home:jengelh:branches:science - Fix RPM groups. Use POSIX-compliant find call. OBS-URL: https://build.opensuse.org/request/show/515324 OBS-URL: https://build.opensuse.org/package/show/science/vtk?expand=0&rev=87 --- vtk-compat_gl.changes | 5 +++++ vtk-compat_gl.spec | 10 +++++----- vtk.changes | 5 +++++ vtk.spec | 10 +++++----- 4 files changed, 20 insertions(+), 10 deletions(-) diff --git a/vtk-compat_gl.changes b/vtk-compat_gl.changes index 090735f..3f97b51 100644 --- a/vtk-compat_gl.changes +++ b/vtk-compat_gl.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Wed Aug 9 08:54:55 UTC 2017 - jengelh@inai.de + +- Fix RPM groups. Use POSIX-compliant find call. + ------------------------------------------------------------------- Mon Aug 7 09:13:03 UTC 2017 - badshah400@gmail.com diff --git a/vtk-compat_gl.spec b/vtk-compat_gl.spec index af23966..34295b0 100644 --- a/vtk-compat_gl.spec +++ b/vtk-compat_gl.spec @@ -125,8 +125,8 @@ rendering techniques (e.g. hardware-accelerated volume rendering, LOD control). %package -n %{shlib} -Summary: Shared libraries for %{pkgname} -Group: Productivity/Scientific/Other +Summary: The Visualization Toolkit - A high level 3D visualization library +Group: System/Libraries %if %{compat_gl} Conflicts: %{vtklib} %else @@ -234,7 +234,7 @@ This package provides Qt bindings for VTK. %package tcl Summary: Tcl bindings for VTK -Group: System/Libraries +Group: Development/Languages/Tcl Requires: %{shlib} = %{version} %if %{compat_gl} Conflicts: vtk-tcl @@ -293,7 +293,7 @@ This package provides a few testing programs for VTK. # Replace relative path ../../../VTKData with %%{_datadir}/%%{pkgname}data-%%{version} # otherwise it will break on symlinks. -grep -rl '\.\./\.\./\.\./\.\./VTKData' . | xargs perl -pi -e's,\.\./\.\./\.\./\.\./VTKData,%{_datadir}/%{pkgname},g' +grep -rl '\.\./\.\./\.\./\.\./VTKData' . | xargs -r perl -pi -e's,\.\./\.\./\.\./\.\./VTKData,%{_datadir}/%{pkgname},g' %build export CFLAGS="%{optflags}" @@ -359,7 +359,7 @@ make %{?_smp_mflags} VERBOSE=1 make %{?_smp_mflags} DoxygenDoc # Remove executable bits from sources (some of which are generated) -find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or -name \*.gif | xargs chmod -x +find . -name \*.c -o -name \*.cxx -o -name \*.h -o -name \*.hxx -o -name \*.gif -exec chmod -x "{}" "+" popd %install diff --git a/vtk.changes b/vtk.changes index 090735f..3f97b51 100644 --- a/vtk.changes +++ b/vtk.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Wed Aug 9 08:54:55 UTC 2017 - jengelh@inai.de + +- Fix RPM groups. Use POSIX-compliant find call. + ------------------------------------------------------------------- Mon Aug 7 09:13:03 UTC 2017 - badshah400@gmail.com diff --git a/vtk.spec b/vtk.spec index 2ade832..0ca01c8 100644 --- a/vtk.spec +++ b/vtk.spec @@ -125,8 +125,8 @@ rendering techniques (e.g. hardware-accelerated volume rendering, LOD control). %package -n %{shlib} -Summary: Shared libraries for %{pkgname} -Group: Productivity/Scientific/Other +Summary: The Visualization Toolkit - A high level 3D visualization library +Group: System/Libraries %if %{compat_gl} Conflicts: %{vtklib} %else @@ -234,7 +234,7 @@ This package provides Qt bindings for VTK. %package tcl Summary: Tcl bindings for VTK -Group: System/Libraries +Group: Development/Languages/Tcl Requires: %{shlib} = %{version} %if %{compat_gl} Conflicts: vtk-tcl @@ -293,7 +293,7 @@ This package provides a few testing programs for VTK. # Replace relative path ../../../VTKData with %%{_datadir}/%%{pkgname}data-%%{version} # otherwise it will break on symlinks. -grep -rl '\.\./\.\./\.\./\.\./VTKData' . | xargs perl -pi -e's,\.\./\.\./\.\./\.\./VTKData,%{_datadir}/%{pkgname},g' +grep -rl '\.\./\.\./\.\./\.\./VTKData' . | xargs -r perl -pi -e's,\.\./\.\./\.\./\.\./VTKData,%{_datadir}/%{pkgname},g' %build export CFLAGS="%{optflags}" @@ -359,7 +359,7 @@ make %{?_smp_mflags} VERBOSE=1 make %{?_smp_mflags} DoxygenDoc # Remove executable bits from sources (some of which are generated) -find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or -name \*.gif | xargs chmod -x +find . -name \*.c -o -name \*.cxx -o -name \*.h -o -name \*.hxx -o -name \*.gif -exec chmod -x "{}" "+" popd %install From a0b750046a974a76594163625d793afbfbb1f4c484b5c735237eae03a1398d94 Mon Sep 17 00:00:00 2001 From: Dmitry Roshchin Date: Wed, 9 Aug 2017 17:48:03 +0000 Subject: [PATCH 08/11] Accepting request 515736 from home:badshah400:branches:science - Move libvtkViewsGeovisJava.so to the %{name}-java subpackage, this is not really a devel file. - Move libvtkViewsGeovisJava.so to the %{name}-java subpackage, this is not really a devel file. OBS-URL: https://build.opensuse.org/request/show/515736 OBS-URL: https://build.opensuse.org/package/show/science/vtk?expand=0&rev=88 --- vtk-compat_gl.changes | 6 ++++++ vtk-compat_gl.spec | 10 ++++++++++ vtk.changes | 6 ++++++ vtk.spec | 10 ++++++++++ 4 files changed, 32 insertions(+) diff --git a/vtk-compat_gl.changes b/vtk-compat_gl.changes index 3f97b51..ce8d051 100644 --- a/vtk-compat_gl.changes +++ b/vtk-compat_gl.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Wed Aug 9 10:40:59 UTC 2017 - badshah400@gmail.com + +- Move libvtkViewsGeovisJava.so to the %{name}-java subpackage, + this is not really a devel file. + ------------------------------------------------------------------- Wed Aug 9 08:54:55 UTC 2017 - jengelh@inai.de diff --git a/vtk-compat_gl.spec b/vtk-compat_gl.spec index 34295b0..7651c51 100644 --- a/vtk-compat_gl.spec +++ b/vtk-compat_gl.spec @@ -451,6 +451,16 @@ chrpath -d %{buildroot}%{_bindir}/* %{_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 java %defattr(-,root,root,-) diff --git a/vtk.changes b/vtk.changes index 3f97b51..ce8d051 100644 --- a/vtk.changes +++ b/vtk.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Wed Aug 9 10:40:59 UTC 2017 - badshah400@gmail.com + +- Move libvtkViewsGeovisJava.so to the %{name}-java subpackage, + this is not really a devel file. + ------------------------------------------------------------------- Wed Aug 9 08:54:55 UTC 2017 - jengelh@inai.de diff --git a/vtk.spec b/vtk.spec index 0ca01c8..06b36a2 100644 --- a/vtk.spec +++ b/vtk.spec @@ -451,6 +451,16 @@ chrpath -d %{buildroot}%{_bindir}/* %{_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 java %defattr(-,root,root,-) From 39e019723335564d78e964922a04a242e5c6853b0f979b33d05b90724dc44cf6 Mon Sep 17 00:00:00 2001 From: Atri Bhattacharya Date: Mon, 21 Aug 2017 17:43:26 +0000 Subject: [PATCH 09/11] OBS-URL: https://build.opensuse.org/package/show/science/vtk?expand=0&rev=89 --- vtk.spec | 5 ----- 1 file changed, 5 deletions(-) diff --git a/vtk.spec b/vtk.spec index 06b36a2..91d23e8 100644 --- a/vtk.spec +++ b/vtk.spec @@ -462,11 +462,6 @@ chrpath -d %{buildroot}%{_bindir}/* %{_libdir}/%{pkgname}.jar %{_libdir}/libvtkViewsGeovisJava.so -%files java -%defattr(-,root,root,-) -%{_bindir}/%{pkgname}ParseJava -%{_bindir}/%{pkgname}WrapJava -%{_libdir}/%{pkgname}.jar %files -n python3-%{name} %defattr(-,root,root,-) From bd20e3397d5c1c6dd531033626abb97f3773553b93ee12ff9842d56af5084fd9 Mon Sep 17 00:00:00 2001 From: Atri Bhattacharya Date: Mon, 21 Aug 2017 17:45:27 +0000 Subject: [PATCH 10/11] Fix double %files for -java OBS-URL: https://build.opensuse.org/package/show/science/vtk?expand=0&rev=90 --- vtk-compat_gl.spec | 6 ------ vtk.spec | 1 - 2 files changed, 7 deletions(-) diff --git a/vtk-compat_gl.spec b/vtk-compat_gl.spec index 7651c51..ec04e66 100644 --- a/vtk-compat_gl.spec +++ b/vtk-compat_gl.spec @@ -462,12 +462,6 @@ chrpath -d %{buildroot}%{_bindir}/* %{_libdir}/%{pkgname}.jar %{_libdir}/libvtkViewsGeovisJava.so -%files java -%defattr(-,root,root,-) -%{_bindir}/%{pkgname}ParseJava -%{_bindir}/%{pkgname}WrapJava -%{_libdir}/%{pkgname}.jar - %files -n python3-%{name} %defattr(-,root,root,-) %{_bindir}/%{pkgname}python diff --git a/vtk.spec b/vtk.spec index 91d23e8..88d343f 100644 --- a/vtk.spec +++ b/vtk.spec @@ -462,7 +462,6 @@ chrpath -d %{buildroot}%{_bindir}/* %{_libdir}/%{pkgname}.jar %{_libdir}/libvtkViewsGeovisJava.so - %files -n python3-%{name} %defattr(-,root,root,-) %{_bindir}/%{pkgname}python From 26b244d770c3c5e242c36054ecd83fc3c6a5d9301857894f4ae562a0fe6cd421 Mon Sep 17 00:00:00 2001 From: Dmitry Roshchin Date: Wed, 23 Aug 2017 16:29:49 +0000 Subject: [PATCH 11/11] Accepting request 518411 from home:badshah400:branches:science Finally with all shared lib issues resolved (one hopes) OBS-URL: https://build.opensuse.org/request/show/518411 OBS-URL: https://build.opensuse.org/package/show/science/vtk?expand=0&rev=91 --- vtk-compat_gl-rpmlintrc | 5 +++++ vtk-compat_gl.changes | 9 +++++++++ vtk-rpmlintrc | 5 +++++ vtk.changes | 9 +++++++++ 4 files changed, 28 insertions(+) diff --git a/vtk-compat_gl-rpmlintrc b/vtk-compat_gl-rpmlintrc index 17af08d..c61c3ec 100644 --- a/vtk-compat_gl-rpmlintrc +++ b/vtk-compat_gl-rpmlintrc @@ -4,3 +4,8 @@ addFilter("python3-vtk* devel-file-in-non-devel-package") # Upstream does not supply manuals for any binary, suppress warnings addFilter(".* no-manual-page-for-binary") + +# This is not a versioned shared lib, and not used by anything other than +# vtk's java bindings, simply package it with the vtk-java subpackage +addFilter("vtk-java.* shlib-policy-name-error") +addFilter("vtk-compat_gl-java.* shlib-policy-name-error") diff --git a/vtk-compat_gl.changes b/vtk-compat_gl.changes index ce8d051..6218625 100644 --- a/vtk-compat_gl.changes +++ b/vtk-compat_gl.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Mon Aug 21 18:41:37 UTC 2017 - badshah400@gmail.com + +- Suppress romlint error about shlib-policy-name-error for + %{name}-java -- libvtkViewsGeovisJava.so packaged therein + is not a versioned shared lib, and only used by vtk's java + bindings, so there is no point in enforcing the shared lib + packaging policy for this subpackage. + ------------------------------------------------------------------- Wed Aug 9 10:40:59 UTC 2017 - badshah400@gmail.com diff --git a/vtk-rpmlintrc b/vtk-rpmlintrc index 17af08d..c61c3ec 100644 --- a/vtk-rpmlintrc +++ b/vtk-rpmlintrc @@ -4,3 +4,8 @@ addFilter("python3-vtk* devel-file-in-non-devel-package") # Upstream does not supply manuals for any binary, suppress warnings addFilter(".* no-manual-page-for-binary") + +# This is not a versioned shared lib, and not used by anything other than +# vtk's java bindings, simply package it with the vtk-java subpackage +addFilter("vtk-java.* shlib-policy-name-error") +addFilter("vtk-compat_gl-java.* shlib-policy-name-error") diff --git a/vtk.changes b/vtk.changes index ce8d051..6218625 100644 --- a/vtk.changes +++ b/vtk.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Mon Aug 21 18:41:37 UTC 2017 - badshah400@gmail.com + +- Suppress romlint error about shlib-policy-name-error for + %{name}-java -- libvtkViewsGeovisJava.so packaged therein + is not a versioned shared lib, and only used by vtk's java + bindings, so there is no point in enforcing the shared lib + packaging policy for this subpackage. + ------------------------------------------------------------------- Wed Aug 9 10:40:59 UTC 2017 - badshah400@gmail.com