9c0981b5c0
* Update Insitu logic to use script filename (instead of full path) when searching PYTHONPATH directories (details). * Fixed CLI error loading multiple-file series (details). * Fixed CLI error that was opening two copies of single file specified in command line (details). * Fixed pvbatch syntax warning messages (“invalid escape sequence”) (details). * Fixed spreadsheet view to update correctly when timestep is reset to 0 (details). * Fixed problems loading state file when remote volume rendering is used (details). * More info at: <https://www.kitware.com/paraview-5-13-2-release-notes/>. - Use internal pegtl lib due to version incompatibility. - Disable ZFP due to building problems with internal/external. - Added sed command to fix linker flags in build.ninja. - Removed unnecessary shebang at rtImageTest.py. - Dropped patches: * 0001-Fix-missing-fmt-ranges.h-include-in-ioss-ThirdParty-.patch - Add patches: * 0001-Add-missing-libm-link-library-for-bundled-ExodusII.patch OBS-URL: https://build.opensuse.org/package/show/science/paraview?expand=0&rev=133
342 lines
11 KiB
RPMSpec
342 lines
11 KiB
RPMSpec
#
|
|
# spec file for package paraview
|
|
#
|
|
# Copyright (c) 2025 SUSE LLC
|
|
#
|
|
# 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 https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
%define major_ver 5
|
|
%define minor_ver 13
|
|
%define short_ver %{major_ver}.%{minor_ver}
|
|
%define shlib libparaview%{major_ver}_%{minor_ver}
|
|
|
|
%if 0%{?suse_version} <= 1500
|
|
%bcond_with fast_float
|
|
%bcond_with jsoncpp
|
|
%if 0%{?sle_version} <= 150400
|
|
%bcond_with pugixml
|
|
%bcond_with verdict
|
|
%else
|
|
%bcond_without pugixml
|
|
%bcond_without verdict
|
|
%endif
|
|
|
|
%if 0%{?sle_version} <= 150600
|
|
%bcond_with jsoncpp
|
|
%bcond_with fmt
|
|
%bcond_with haru
|
|
%else
|
|
%bcond_without fmt
|
|
%bcond_without haru
|
|
%endif
|
|
|
|
%else
|
|
%bcond_without fast_float
|
|
%bcond_without fmt
|
|
%bcond_without haru
|
|
%bcond_without jsoncpp
|
|
%bcond_without pugixml
|
|
%bcond_without verdict
|
|
%endif
|
|
|
|
%bcond_without nlohmann
|
|
%bcond_without proj
|
|
%bcond_without gl2ps
|
|
|
|
Name: paraview
|
|
Version: %{short_ver}.2
|
|
Release: 0
|
|
Summary: Data analysis and visualization application
|
|
License: BSD-3-Clause
|
|
Group: Productivity/Scientific/Physics
|
|
URL: https://www.paraview.org
|
|
Source0: https://www.paraview.org/files/v%{short_ver}/ParaView-v%{version}.tar.xz
|
|
Source1: %{name}-rpmlintrc
|
|
# CAUTION: GettingStarted may or may not be updated with each minor version
|
|
Source2: https://www.paraview.org/files/v%{short_ver}/ParaViewGettingStarted-%{major_ver}.%{minor_ver}.2.pdf
|
|
# PATCH-FIX-UPSTREAM paraview-desktop-entry-fix.patch badshah400@gmail.com -- Fix desktop menu entry by inserting proper required categories
|
|
Patch0: paraview-desktop-entry-fix.patch
|
|
# PATCH-FIX-OPENSUSE fix-libharu-missing-m.patch -- missing libraries for linking (gh#libharu/libharu#213)
|
|
Patch1: fix-libharu-missing-m.patch
|
|
# We need to change the default soname for vtk modules.
|
|
Patch2: fix-soversion-soname.patch
|
|
# PATCH-FIX-UPSTREAM
|
|
Patch3: 0001-Add-missing-libm-link-library-for-bundled-ExodusII.patch
|
|
BuildRequires: Mesa-devel
|
|
BuildRequires: cgns-devel
|
|
BuildRequires: cmake >= 3.13
|
|
BuildRequires: desktop-file-utils
|
|
BuildRequires: double-conversion-devel
|
|
BuildRequires: doxygen
|
|
BuildRequires: fdupes
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: gcc-fortran
|
|
BuildRequires: gnuplot
|
|
BuildRequires: graphviz
|
|
BuildRequires: hdf5-devel
|
|
BuildRequires: libboost_graph-devel
|
|
BuildRequires: libboost_headers-devel
|
|
BuildRequires: ninja
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: protobuf21-devel
|
|
BuildRequires: python3-Sphinx
|
|
BuildRequires: python3-Twisted
|
|
BuildRequires: python3-devel
|
|
BuildRequires: python3-matplotlib
|
|
BuildRequires: python3-qt5-devel
|
|
BuildRequires: readline-devel
|
|
BuildRequires: utfcpp-devel
|
|
BuildRequires: wget
|
|
BuildRequires: pkgconfig(CLI11)
|
|
BuildRequires: pkgconfig(Qt5Core)
|
|
BuildRequires: pkgconfig(Qt5Gui)
|
|
BuildRequires: pkgconfig(Qt5Help)
|
|
BuildRequires: pkgconfig(Qt5Network)
|
|
BuildRequires: pkgconfig(Qt5PrintSupport)
|
|
BuildRequires: pkgconfig(Qt5WebEngine)
|
|
BuildRequires: pkgconfig(Qt5Widgets)
|
|
BuildRequires: pkgconfig(Qt5X11Extras)
|
|
BuildRequires: pkgconfig(Qt5Xml)
|
|
BuildRequires: pkgconfig(eigen3) >= 2.91.0
|
|
BuildRequires: pkgconfig(expat)
|
|
BuildRequires: pkgconfig(freetype2)
|
|
BuildRequires: pkgconfig(glew)
|
|
BuildRequires: pkgconfig(libjpeg)
|
|
BuildRequires: pkgconfig(liblz4) >= 1.7.3
|
|
BuildRequires: pkgconfig(liblzma)
|
|
BuildRequires: pkgconfig(libpng)
|
|
BuildRequires: pkgconfig(libpqxx)
|
|
BuildRequires: pkgconfig(libtiff-4)
|
|
BuildRequires: pkgconfig(netcdf)
|
|
BuildRequires: pkgconfig(ogg)
|
|
BuildRequires: pkgconfig(openssl)
|
|
BuildRequires: pkgconfig(proj) >= 5.0.0
|
|
BuildRequires: pkgconfig(sqlite3)
|
|
BuildRequires: pkgconfig(theora)
|
|
BuildRequires: pkgconfig(xt)
|
|
BuildRequires: pkgconfig(zlib)
|
|
%if %{with fmt}
|
|
BuildRequires: fmt-10-devel
|
|
%endif
|
|
%if %{with gl2ps}
|
|
BuildRequires: gl2ps-devel >= 1.4.1
|
|
%endif
|
|
%if %{with haru}
|
|
BuildRequires: libharu-devel > 2.4.0
|
|
%endif
|
|
%if %{with fast_float}
|
|
BuildRequires: cmake(FastFloat)
|
|
%endif
|
|
%if %{with jsoncpp}
|
|
BuildRequires: pkgconfig(jsoncpp) >= 1.9.4
|
|
%endif
|
|
%if %{with nlohmann}
|
|
BuildRequires: pkgconfig(nlohmann_json)
|
|
%endif
|
|
%if %{with pugixml}
|
|
BuildRequires: pkgconfig(pugixml) >= 1.11
|
|
%endif
|
|
%if %{with verdict}
|
|
BuildRequires: verdict-devel
|
|
%endif
|
|
Requires: gnuplot
|
|
Requires: graphviz
|
|
Recommends: %{name}-plugins
|
|
# Disable on aarch64 since GLES isn't supported for bundled vtk but is needed for paraview
|
|
ExcludeArch: aarch64
|
|
|
|
%description
|
|
ParaView is a data analysis and visualization application for
|
|
visualizing large data sets.
|
|
|
|
ParaView runs on distributed and shared memory systems alike. It uses VTK
|
|
(the Visualization Toolkit) as the data processing and rendering engine.
|
|
Data exploration can be done interactively in 3D or programmatically using
|
|
batch processing.
|
|
|
|
NOTE: The version in this package has NOT been compiled with MPI support.
|
|
|
|
%package -n %{shlib}
|
|
Summary: Shared libraries for Paraview
|
|
Group: Productivity/Scientific/Physics
|
|
|
|
%description -n %{shlib}
|
|
This package provides the shared libraries for paraview.
|
|
|
|
%package devel
|
|
Summary: Headers for building ParaView plugins or embedding Catalyst
|
|
Group: Development/Libraries/Other
|
|
Requires: %{shlib} = %{version}
|
|
Requires: cmake >= 3.13
|
|
Requires: glibc-devel
|
|
Requires: libboost_thread-devel
|
|
|
|
%description devel
|
|
This package contains headers and libraries required to build plugins
|
|
for ParaView or to embed ParaView Catalyst in a simulation program.
|
|
|
|
%package -n python3-paraview
|
|
Summary: Python bindings for Paraview
|
|
Group: Productivity/Scientific/Physics
|
|
Requires: python3
|
|
Requires: python3-Twisted
|
|
Requires: python3-matplotlib
|
|
Requires: python3-numpy
|
|
Requires: python3-qt5
|
|
|
|
%package devel-static
|
|
Summary: Static libraries for Paraview, needed to building plugins
|
|
Group: Productivity/Scientific/Physics
|
|
Requires: %{name}-devel = %{version}
|
|
|
|
%description devel-static
|
|
This package contains the static libraries for Paraview, needed, for
|
|
example, to build plugins for paraview.
|
|
|
|
%description -n python3-paraview
|
|
This package provides the python(3) bindings and modules for paraview.
|
|
|
|
%package plugins
|
|
Summary: Plugins for paraview
|
|
Group: Productivity/Scientific/Physics
|
|
Requires: %{name} = %{version}
|
|
|
|
%description plugins
|
|
This package provides the paraview plugins bundled with the upstream release.
|
|
|
|
%prep
|
|
%autosetup -p1 -n ParaView-v%{version}
|
|
|
|
# FIX env BASED HASHBANG
|
|
sed -Ei "1{s|#!%{_bindir}/env python3|#!%{_bindir}/python3|}" Clients/CommandLineExecutables/paraview-config.in
|
|
|
|
# Fix erroneous dependency on sqlite3 binary
|
|
sed -i -e '/set(vtk_sqlite_build_binary 1)/ s/.*/#\0/' CMakeLists.txt
|
|
|
|
# Allow other versions for fast_float
|
|
sed -i -e '/VERSION .*/ d' VTK/ThirdParty/fast_float/CMakeLists.txt
|
|
|
|
%build
|
|
%global _lto_cflags %{?_lto_cflags} -ffat-lto-objects
|
|
%global __builder ninja
|
|
|
|
%cmake -DCMAKE_INSTALL_LIBDIR=%{_lib} \
|
|
-DCMAKE_INSTALL_DOCDIR=%{_docdir}/%{name} \
|
|
-DPARAVIEW_BUILD_SHARED_LIBS:BOOL=ON \
|
|
%if 0%{?suse_version} <= 1500 && 0%{?is_opensuse}
|
|
-DCMAKE_SKIP_RPATH:BOOL=OFF \
|
|
%endif
|
|
-DBUILD_EXAMPLES:BOOL=OFF \
|
|
-DBUILD_TESTING:BOOL=OFF \
|
|
-DCMAKE_CXX_EXTENSIONS:BOOL=OFF \
|
|
-DCMAKE_SKIP_INSTALL_RPATH:BOOL=ON \
|
|
-DPARAVIEW_BUILD_WITH_EXTERNAL:BOOL=ON \
|
|
-DPARAVIEW_ENABLE_WEB:BOOL=ON \
|
|
-DPARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=ON \
|
|
-DPARAVIEW_PYTHON_SITE_PACKAGES_SUFFIX=%{_lib}/python%{py3_ver}/site-packages/paraview \
|
|
-DPARAVIEW_USE_PYTHON:BOOL=ON \
|
|
-DPARAVIEW_USE_QT:BOOL=ON \
|
|
-DPARAVIEW_USE_VTKM:BOOL=OFF \
|
|
-DQtTesting_INSTALL_NO_DEVELOPMENT:BOOL=ON \
|
|
-DVTK_BUILD_QT_DESIGNER_PLUGIN:BOOL=OFF \
|
|
-DVTK_ENABLE_CATALYST:BOOL=ON \
|
|
-DVTK_OPENGL_HAS_OSMESA:BOOL=OFF \
|
|
-DVTK_PYTHON_OPTIONAL_LINK:BOOL=OFF \
|
|
-DVTK_WRAP_PYTHON:BOOL=ON \
|
|
-DVTK_MODULE_ENABLE_VTK_libharu:BOOL=YES \
|
|
-DVTK_MODULE_ENABLE_VTK_pegtl:BOOL=YES \
|
|
-DVTK_MODULE_ENABLE_VTK_zfp:BOOL=NO \
|
|
-DVTK_MODULE_USE_EXTERNAL_VTK_exprtk:BOOL=OFF \
|
|
-DVTK_MODULE_USE_EXTERNAL_VTK_fast_float:BOOL=%{?with_fast_float:ON}%{!?with_fast_float:OFF} \
|
|
-DVTK_MODULE_USE_EXTERNAL_VTK_fmt:BOOL=%{?with_fmt:ON}%{!?with_fmt:OFF} \
|
|
-DVTK_MODULE_USE_EXTERNAL_VTK_gl2ps=%{?with_gl2ps:ON}%{!?with_gl2ps:OFF} \
|
|
-DVTK_MODULE_USE_EXTERNAL_VTK_ioss:BOOL=OFF \
|
|
-DVTK_MODULE_USE_EXTERNAL_VTK_jsoncpp=%{?with_jsoncpp:ON}%{!?with_jsoncpp:OFF} \
|
|
-DVTK_MODULE_USE_EXTERNAL_VTK_libharu=%{?with_haru:ON}%{!?with_haru:OFF} \
|
|
-DVTK_MODULE_USE_EXTERNAL_VTK_libproj=%{?with_proj:ON}%{!?with_proj:OFF} \
|
|
-DVTK_MODULE_USE_EXTERNAL_VTK_nlohmannjson=%{?with_nlohmann:ON}%{!?with_nlohmann:OFF} \
|
|
-DVTK_MODULE_USE_EXTERNAL_VTK_pegtl=NO \
|
|
-DVTK_MODULE_USE_EXTERNAL_VTK_pugixml=%{?with_pugixml:ON}%{!?with_pugixml:OFF} \
|
|
-DVTK_MODULE_USE_EXTERNAL_VTK_token:BOOL=OFF \
|
|
-DVTK_MODULE_USE_EXTERNAL_VTK_verdict=%{?with_verdict:ON}%{!?with_verdict:OFF} \
|
|
-Wno-dev \
|
|
%{nil}
|
|
|
|
# ParaView >= 5.13.2 wrongly adds each option of CMAKE_SHARED_LINKER_FLAGS as a single
|
|
# option with multiple -Wl in betwen, this makes the build fail. Correct it manually
|
|
sed -i 's/,-Wl/ -Wl/g' ./build.ninja
|
|
sed -i 's/,-ffat-lto-objects/ -ffat-lto-objects/g' ./build.ninja
|
|
|
|
%cmake_build
|
|
|
|
%install
|
|
find . \( -name \*.txt -o -name \*.xml -o -name '*.[ch]' -o -name '*.[ch][px][px]' \) -exec chmod -x "{}" +
|
|
|
|
%cmake_install
|
|
|
|
# Unnecessary hash-bang
|
|
sed -i "1{\@%{_bindir}/env@d}" %{buildroot}%{python3_sitearch}/paraview/vtkmodules/generate_pyi.py
|
|
sed -i "1{\@%{_bindir}/env@d}" %{buildroot}%{python3_sitearch}/paraview/vtkmodules/test/rtImageTest.py
|
|
|
|
# INSTALL DOCUMENTATION USED BY THE HELP MENU IN MAIN APP
|
|
install -Dm0644 %{SOURCE2} %{buildroot}%{_datadir}/%{name}-%{short_ver}/doc/GettingStarted.pdf
|
|
|
|
%fdupes %{buildroot}/
|
|
|
|
%post -n %{shlib} -p /sbin/ldconfig
|
|
%postun -n %{shlib} -p /sbin/ldconfig
|
|
|
|
%files
|
|
%license %{_datadir}/licenses/ParaView/
|
|
%{_bindir}/*
|
|
# Part of paraview-devel-static
|
|
%exclude %{_bindir}/paraview-config
|
|
#
|
|
%exclude %{_bindir}/smTest*
|
|
%exclude %{_bindir}/vtk*
|
|
%{_datadir}/%{name}-%{short_ver}/
|
|
%dir %{_datadir}/metainfo
|
|
%{_datadir}/metainfo/*.appdata.xml
|
|
%{_datadir}/applications/*.desktop
|
|
%{_datadir}/icons/hicolor/*/apps/%{name}.png
|
|
%{_docdir}/paraview/
|
|
%dir %{_libdir}/vtk/
|
|
%dir %{_libdir}/vtk/hierarchy
|
|
%{_libdir}/vtk/hierarchy/ParaView/
|
|
%if %{without proj}
|
|
%{_datadir}/vtk-pv%{major_ver}.%{minor_ver}/
|
|
%endif
|
|
|
|
%files -n %{shlib}
|
|
%{_libdir}/*.so.*
|
|
|
|
%files plugins
|
|
%{_libdir}/%{name}-%{short_ver}/
|
|
|
|
%files devel
|
|
%{_libdir}/*.so
|
|
%{_libdir}/cmake/paraview-%{short_ver}/
|
|
%{_bindir}/smTest*
|
|
%{_bindir}/vtk*
|
|
%{_includedir}/%{name}*
|
|
|
|
%files devel-static
|
|
%{_bindir}/paraview-config
|
|
%{_libdir}/*.a
|
|
|
|
%files -n python3-paraview
|
|
%{python3_sitearch}/%{name}/
|
|
|
|
%changelog
|