Accepting request 616527 from home:TheBlackCat:branches:science
- Update to version 8.1.1: * Fixed thin border around vtkImageResliceMapper rendering * Fixed vtkImageResliceMapper showing a black polygon when slice is out of bounds. * Fixed conflict between Process.h and process.h * Fixed building VTK 8.1 against 10.13 SDK resulting in linker errors when trying to use resulting libraries on older SDK * Fixed vtkCellPicker::IntersectActorWithLine maybe using invalid cell id when picking composite data - Add fix_qt5_example_cmake.patch Fixes use of removed cmake macro in some examples See: https://gitlab.kitware.com/vtk/vtk/issues/17336 - Use modern cmake spec file macros - Run spec cleaner - Other spec file cleanups - Support parallel HDF5. - Drop support for qt4. Any version of openSUSE with a recent enough version of cmake to build the package supports Qt5. - Drop checks for old versions of openSUSE that have too old of a cmake to build. OBS-URL: https://build.opensuse.org/request/show/616527 OBS-URL: https://build.opensuse.org/package/show/science/vtk?expand=0&rev=119
This commit is contained in:
242
vtk.spec
242
vtk.spec
@@ -16,23 +16,23 @@
|
||||
#
|
||||
|
||||
|
||||
%define compat_gl 0
|
||||
%define pkgname vtk
|
||||
%define vtklib lib%{pkgname}1
|
||||
%define compat_gl 0
|
||||
%define pkgname vtk
|
||||
%define vtklib lib%{pkgname}1
|
||||
%define vtkcompatlib libvtkcompat_gl1
|
||||
%define shlib %{vtklib}
|
||||
%define shlib %{vtklib}
|
||||
|
||||
Name: vtk
|
||||
Version: 8.1.0
|
||||
Version: 8.1.1
|
||||
Release: 0
|
||||
%define series 8.1
|
||||
%define series 8.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/
|
||||
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
|
||||
# We need to use the compat conditionals here to avoid Factory's source validator from tripping up
|
||||
@@ -41,16 +41,10 @@ Source1: vtk-rpmlintrc
|
||||
Patch1: vtk-fix-file-contains-date-time.patch
|
||||
# PATCH-FIX-OPENSUSE 0001-Allow-compilation-on-GLES-platforms.patch VTK issue #17113 stefan.bruens@rwth-aachen.de -- Fix building with Qt GLES builds
|
||||
Patch3: 0001-Allow-compilation-on-GLES-platforms.patch
|
||||
# PATCH-FIX-UPSTREAM fix_qt5_example_cmake.patch -- Fix for recent Qt5 version https://gitlab.kitware.com/vtk/vtk/issues/17336
|
||||
Patch4: fix_qt5_example_cmake.patch
|
||||
BuildRequires: Mesa-libGL-devel
|
||||
BuildRequires: R-base-devel
|
||||
%if 0%{?suse_version} >= 1500
|
||||
BuildRequires: libboost_graph-devel
|
||||
BuildRequires: libboost_graph_parallel-devel
|
||||
BuildRequires: libboost_mpi-devel
|
||||
BuildRequires: libboost_serialization-devel
|
||||
%else
|
||||
BuildRequires: boost-devel
|
||||
%endif
|
||||
BuildRequires: chrpath
|
||||
BuildRequires: cmake >= 3.4
|
||||
BuildRequires: doxygen
|
||||
@@ -61,9 +55,19 @@ BuildRequires: gl2ps-devel
|
||||
BuildRequires: gnuplot
|
||||
BuildRequires: graphviz
|
||||
BuildRequires: hdf5-devel
|
||||
BuildRequires: hdf5-openmpi-devel
|
||||
BuildRequires: java-devel
|
||||
BuildRequires: jsoncpp-devel
|
||||
BuildRequires: libX11-devel
|
||||
BuildRequires: libXt-devel
|
||||
%if 0%{?suse_version} >= 1500
|
||||
BuildRequires: libboost_graph-devel
|
||||
BuildRequires: libboost_graph_parallel-devel
|
||||
BuildRequires: libboost_mpi-devel
|
||||
BuildRequires: libboost_serialization-devel
|
||||
%else
|
||||
BuildRequires: boost-devel
|
||||
%endif
|
||||
BuildRequires: libexpat-devel
|
||||
BuildRequires: libiodbc-devel
|
||||
BuildRequires: libjpeg-devel
|
||||
@@ -77,38 +81,23 @@ BuildRequires: netcdf-devel
|
||||
BuildRequires: openmpi-devel
|
||||
BuildRequires: python3-devel
|
||||
BuildRequires: python3-mpi4py-devel
|
||||
BuildRequires: python3-qt5-devel
|
||||
BuildRequires: tcl-devel
|
||||
BuildRequires: tk-devel
|
||||
BuildRequires: wget
|
||||
BuildRequires: zlib-devel
|
||||
%if 0%{?suse_version} > 1320
|
||||
BuildRequires: python3-qt5-devel
|
||||
BuildRequires: pkgconfig(Qt5Core)
|
||||
BuildRequires: pkgconfig(Qt5OpenGL)
|
||||
BuildRequires: pkgconfig(Qt5OpenGLExtensions)
|
||||
BuildRequires: pkgconfig(Qt5Sql)
|
||||
BuildRequires: pkgconfig(Qt5WebKitWidgets)
|
||||
BuildRequires: pkgconfig(Qt5Widgets)
|
||||
%else
|
||||
BuildRequires: libQtWebKit-devel
|
||||
BuildRequires: libqt4-devel
|
||||
BuildRequires: python3-qt4-devel
|
||||
%endif
|
||||
Provides: python3-%{name}-qt = %{version}
|
||||
%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
|
||||
Provides: python3-%{name}-qt = %{version}
|
||||
|
||||
%description
|
||||
VTK is a software system for image processing, 3D graphics, volume
|
||||
@@ -137,13 +126,11 @@ Requires: %{name}-tcl = %{version}
|
||||
Requires: %{shlib} = %{version}
|
||||
Requires: Mesa-libGL-devel
|
||||
Requires: R-base-devel
|
||||
Requires: freetype2-devel
|
||||
Requires: gl2ps-devel
|
||||
Requires: hdf5-devel
|
||||
# jsoncpp available for openSUSE > 13.2 & Leap
|
||||
%if 0%{?suse_version} > 1320 || 0%{suse_version} == 1315
|
||||
Requires: hdf5-openmpi-devel
|
||||
Requires: jsoncpp-devel
|
||||
%endif
|
||||
Requires: freetype2-devel
|
||||
Requires: libexpat-devel
|
||||
Requires: libjpeg-devel
|
||||
Requires: liblz4-devel
|
||||
@@ -255,6 +242,7 @@ This package provides a few testing programs for VTK.
|
||||
%setup -q -n VTK-%{version}
|
||||
%patch1 -p1
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
|
||||
# Replace relative path ../../../VTKData with %%{_datadir}/%%{pkgname}data-%%{version}
|
||||
# otherwise it will break on symlinks.
|
||||
@@ -268,126 +256,108 @@ if [ -f %{_libdir}/mpi/gcc/openmpi/bin/mpivars.sh ]; then
|
||||
source %{_libdir}/mpi/gcc/openmpi/bin/mpivars.sh
|
||||
fi
|
||||
|
||||
mkdir build
|
||||
pushd build
|
||||
# FindJava.cmake looks for javah executable. However,
|
||||
# the build never invokes the tool. Define a bogus
|
||||
# Java_JAVAH_EXECUTABLE in order to be able to build
|
||||
# with JDK10 that does not have this tool, deprecated
|
||||
# since JDK8.
|
||||
cmake .. \
|
||||
-DJava_JAVAH_EXECUTABLE:PATH=%{_bindir}/true\
|
||||
-DCMAKE_CXX_COMPILER:STRING='mpicxx' \
|
||||
-DCMAKE_C_COMPILER:STRING='mpicc' \
|
||||
%cmake \
|
||||
-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} \
|
||||
-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
|
||||
-DVTK_QT_VERSION=5 \
|
||||
%else
|
||||
-DVTK_QT_VERSION=4 \
|
||||
%endif
|
||||
-DVTK_INSTALL_QT_DIR:STRING=/%{qtdir}/plugins/designer \
|
||||
-DVTK_USE_OGGTHEORA_ENCODER:BOOL=ON \
|
||||
-DVTK_USE_SYSTEM_LIBHARU:BOOL=OFF \
|
||||
-DVTK_EXTERNAL_LIBHARU_IS_SHARED:BOOL=OFF \
|
||||
%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 \
|
||||
-DCMAKE_CXX_COMPILER:STRING='mpicxx' \
|
||||
-DCMAKE_C_COMPILER:STRING='mpicc' \
|
||||
-DCMAKE_NO_BUILTIN_CHRPATH:BOOL=ON \
|
||||
-DJava_JAVAH_EXECUTABLE:PATH=%{_bindir}/true \
|
||||
-DModule_vtkTestingCore:BOOL=ON \
|
||||
-DModule_vtkTestingRendering:BOOL=ON \
|
||||
-DOpenGL_GL_PREFERENCE:STRING='GLVND' \
|
||||
-DVTK_CUSTOM_LIBRARY_SUFFIX="" \
|
||||
-DVTK_EXTERNAL_LIBHARU_IS_SHARED:BOOL=OFF \
|
||||
-DVTK_Group_Imaging:BOOL=ON \
|
||||
-DVTK_Group_MPI:BOOL=ON \
|
||||
-DVTK_Group_Qt:BOOL=ON \
|
||||
-DVTK_Group_Rendering:BOOL=ON \
|
||||
-DVTK_Group_StandAlone:BOOL=ON \
|
||||
-DVTK_Group_Tk:BOOL=ON \
|
||||
-DVTK_Group_Views:BOOL=ON \
|
||||
-DVTK_WRAP_TCL:BOOL=ON \
|
||||
-DVTK_USE_SYSTEM_HDF5:BOOL=ON \
|
||||
-DVTK_USE_SYSTEM_NETCDF:BOOL=ON \
|
||||
-DVTK_INSTALL_ARCHIVE_DIR:PATH=%{_lib} \
|
||||
-DVTK_INSTALL_LIBRARY_DIR:PATH=%{_lib} \
|
||||
-DVTK_INSTALL_PACKAGE_DIR:PATH=%{_lib}/cmake/%{pkgname} \
|
||||
-DVTK_INSTALL_PYTHON_MODULE_DIR:PATH=%{_lib}/python%{py3_ver}/site-packages \
|
||||
-DVTK_INSTALL_QT_DIR:STRING=/%{_lib}/qt5/plugins/designer \
|
||||
-DVTK_INSTALL_TCL_DIR:PATH=share/tcl/%{pkgname} \
|
||||
-DVTK_PYTHON_VERSION=3 \
|
||||
-DCMAKE_NO_BUILTIN_CHRPATH:BOOL=ON \
|
||||
-DVTK_QT_VERSION=5 \
|
||||
-DVTK_USE_OGGTHEORA_ENCODER:BOOL=ON \
|
||||
-DVTK_USE_SYSTEM_LIBRARIES:BOOL=ON \
|
||||
-DVTK_USE_SYSTEM_DIY2=OFF \
|
||||
-DVTK_USE_SYSTEM_GL2PS=OFF \
|
||||
-DVTK_USE_SYSTEM_MPI4PY=ON
|
||||
-DVTK_USE_SYSTEM_HDF5:BOOL=ON \
|
||||
-DVTK_USE_SYSTEM_LIBHARU:BOOL=OFF \
|
||||
-DVTK_USE_SYSTEM_LIBPROJ4:BOOL=OFF \
|
||||
-DVTK_USE_SYSTEM_MPI4PY=ON \
|
||||
-DVTK_USE_SYSTEM_NETCDF:BOOL=ON \
|
||||
-DVTK_WRAP_JAVA:BOOL=ON \
|
||||
-DVTK_WRAP_PYTHON:BOOL=ON \
|
||||
-DVTK_WRAP_PYTHON_SIP:BOOL=ON \
|
||||
-DVTK_WRAP_TCL:BOOL=ON
|
||||
|
||||
make %{?_smp_mflags}
|
||||
%make_jobs
|
||||
make %{?_smp_mflags} DoxygenDoc
|
||||
|
||||
# Remove executable bits from sources (some of which are generated)
|
||||
find . -name \*.c -o -name \*.cxx -o -name \*.h -o -name \*.hxx -o -name \*.gif -exec chmod -x "{}" "+"
|
||||
popd
|
||||
|
||||
%install
|
||||
pushd build
|
||||
%makeinstall
|
||||
|
||||
# Gather list of non-binding libraries
|
||||
ls %{buildroot}%{_libdir}/lib*.so.* | sed -e's,^%{buildroot},,' > libs.list
|
||||
%cmake_install
|
||||
|
||||
# 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
|
||||
Arrays
|
||||
BalloonWidget
|
||||
BandedContours
|
||||
Cone
|
||||
Cone2
|
||||
Cone3
|
||||
Cone4
|
||||
Cone5
|
||||
Cone6
|
||||
Cube
|
||||
Cylinder
|
||||
Delaunay3D
|
||||
Delaunay3DAlpha
|
||||
DiffuseSpheres
|
||||
DumpXMLFile
|
||||
FilledContours
|
||||
FixedPointVolumeRayCastMapperCT
|
||||
GPURenderDemo
|
||||
Generate2DAMRDataSetWithPulse
|
||||
Generate3DAMRDataSetWithPulse
|
||||
GenerateCubesFromLabels
|
||||
GenerateModelsFromLabels
|
||||
HierarchicalBoxPipeline
|
||||
ImageSlicing
|
||||
LabeledMesh
|
||||
Medical1
|
||||
Medical2
|
||||
Medical3
|
||||
Medical4
|
||||
MultiBlock
|
||||
ParticleReader
|
||||
RGrid
|
||||
SGrid
|
||||
Slider
|
||||
Slider2D
|
||||
SpecularSpheres
|
||||
TubesWithVaryingRadiusAndColors
|
||||
finance
|
||||
EOF
|
||||
|
||||
# Install examples
|
||||
for file in `cat examples.list`; do
|
||||
install -p bin/$file %{buildroot}%{_bindir}
|
||||
install -p build/bin/$file %{buildroot}%{_bindir}
|
||||
done
|
||||
perl -pi -e's,^,%{_bindir}/,' examples.list
|
||||
|
||||
@@ -398,29 +368,27 @@ chrpath -d %{buildroot}%{_bindir}/*
|
||||
|
||||
%post -n %{shlib} -p /sbin/ldconfig
|
||||
%postun -n %{shlib} -p /sbin/ldconfig
|
||||
%post devel -p /sbin/ldconfig
|
||||
%postun devel -p /sbin/ldconfig
|
||||
%post java -p /sbin/ldconfig
|
||||
%postun java -p /sbin/ldconfig
|
||||
|
||||
%files -n %{shlib} -f build/libs.list
|
||||
%defattr(-,root,root,-)
|
||||
%files -n %{shlib}
|
||||
%license Copyright.txt
|
||||
%{_libdir}/lib*.so.*
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root,-)
|
||||
%doc Copyright.txt
|
||||
%license Copyright.txt
|
||||
%{_bindir}/%{pkgname}EncodeString
|
||||
%{_bindir}/%{pkgname}HashSource
|
||||
%{_bindir}/%{pkgname}WrapHierarchy
|
||||
%{_bindir}/%{pkgname}ParseJava
|
||||
%{_bindir}/%{pkgname}WrapHierarchy
|
||||
%{_bindir}/%{pkgname}WrapJava
|
||||
%{_bindir}/%{pkgname}WrapPython
|
||||
%{_bindir}/%{pkgname}WrapPythonInit
|
||||
%{_bindir}/%{pkgname}WrapTcl
|
||||
%{_bindir}/%{pkgname}WrapTclInit
|
||||
%if 0%{?suse_version} <= 1320 && 0%{?suse_version} != 1315
|
||||
%{_bindir}/%{pkgname}mkg3states
|
||||
%endif
|
||||
%{_libdir}/*.so
|
||||
%if 0%{?suse_version} <= 1320 && 0%{?suse_version} != 1315
|
||||
%{_libdir}/libvtktiff.so
|
||||
%endif
|
||||
%{_libdir}/cmake/%{pkgname}/
|
||||
%{_libdir}/libvtkWrappingTools.a
|
||||
%{_includedir}/%{pkgname}-%{series}/
|
||||
@@ -429,32 +397,32 @@ chrpath -d %{buildroot}%{_bindir}/*
|
||||
%exclude %{_datadir}/tcl/vtk/vtktcl.c
|
||||
|
||||
%files devel-doc
|
||||
%defattr(-,root,root,-)
|
||||
%license Copyright.txt
|
||||
%{_datadir}/doc/%{pkgname}-%{series}/
|
||||
|
||||
%files java
|
||||
%defattr(-,root,root,-)
|
||||
%license Copyright.txt
|
||||
%{_libdir}/%{pkgname}.jar
|
||||
%{_libdir}/libvtk*Java.so
|
||||
|
||||
%files -n python3-%{name}
|
||||
%defattr(-,root,root,-)
|
||||
%license Copyright.txt
|
||||
%{_bindir}/%{pkgname}python
|
||||
%{_bindir}/p%{pkgname}python
|
||||
%{python3_sitearch}/%{pkgname}/
|
||||
|
||||
%files tcl
|
||||
%defattr(-,root,root,-)
|
||||
%license Copyright.txt
|
||||
%{_bindir}/%{pkgname}
|
||||
%{_bindir}/p%{pkgname}
|
||||
%{_datadir}/tcl/%{pkgname}/
|
||||
|
||||
%files qt
|
||||
%defattr(-,root,root,-)
|
||||
%dir %{_prefix}/%{qtdir}/plugins/designer
|
||||
%{_prefix}/%{qtdir}/plugins/designer/libQVTKWidgetPlugin.so
|
||||
%license Copyright.txt
|
||||
%dir %{_prefix}/%{_lib}/qt5/plugins/designer
|
||||
%{_prefix}/%{_lib}/qt5/plugins/designer/libQVTKWidgetPlugin.so
|
||||
|
||||
%files examples -f build/examples.list
|
||||
%defattr(-,root,root,-)
|
||||
%files examples -f examples.list
|
||||
%license Copyright.txt
|
||||
|
||||
%changelog
|
||||
|
Reference in New Issue
Block a user