SHA256
1
0
forked from pool/paraview

Accepting request 779899 from science

- Update to version 5.8.0:
  * See https://blog.kitware.com/paraview-5-8-0-release-notes/.
- Rebase paraview-desktop-entry-fix.patch for updated location of
  desktop file in source.
- Drop fix-QtGUI-missing-GLX_mesa-linking.patch: no longer
  required as linking GLX_mesa to build QtGUI is now correctly
  handled by build.
- Drop 0001-Allow-compilation-on-GLES-platforms.patch: patch no
  longer applies (since vesin 5.7.0) and commenting out patch
  leads to factory_auto declining the submission.
- Use ninja instead of make as recommended by upstream and to
  speed up build; define __builder to ninja so that cmake build
  macros use this instead of the default make.
- Pass PARAVIEW_BUILD_WITH_EXTERNAL to cmake to use system third
  party libraries by default; pass VTK_MODULE_USE_EXTERNAL_<name>
  to use specific bundled libraries conditionally (gl2ps, haru,
  pugixml).
- Use %cmake_build instead of %make_jobs during building.
- Replace deprecated options passed to cmake by updated ones:
  * PARAVIEW_BUILD_QT_GUI -> DPARAVIEW_USE_QT
  * PARAVIEW_ENABLE_PYTHON -> PARAVIEW_USE_PYTHON.
- Update paraview-rpmlintrc to suppress warning about a non-exec
  file that is installed to %{_bindir} and is really necessary
  (see https://gitlab.kitware.com/paraview/paraview/issues/19706);
  the previous entry no longer applies, so drop it.
- Add absolutely necessary dependencies for paraview-devel as
  Requires.
- Install python modules to %{python3_sitearch}/paraview rather
  than the default [%{python3_sitearch}] by setting
  PARAVIEW_PYTHON_SITE_PACKAGES_SUFFIX when configuring cmake;
  this avoids file conflicts between python3-paraview and
  python3-vtk.
- Don't install paraview-config: it doesn't work without the
  static libs being installed.
- Update to version 5.7.0:
  See https://blog.kitware.com/paraview-5-7-0-release-notes/
- Split out new subpackages: libparaview5_7 for all the shared
  libs, paraview-plugins for bundled plugins, and python3-paraview
  for python3 bindings.
- Move shared libraries to %{_libdir} and install them as part of
  libparaview5_7.
- Update commands passed to cmake in keeping with upstream's
  overhaul.
- Drop paraview-find-qhelpgenerator-qt5.patch: no longer needed.
- Drop  paraview-fix-file-contains-date-time.patch: GCC supports
  SOURCE_DATE_EPOCH and, as such, this fix is no longer needed.
- Switch to python3: Paraview is production ready with python3
  starting with version 5.7.0, and python2 support is slated to be
  dropped from the next major upgrade.
- Rebase patches for updated version:
  * fix-libharu-missing-m.patch.
  * bundled_exodusii_add_missing_libpthread.patch.
- New patches to fix linking problems introduced with version
  5.7.0:
  * fix-loguru-missing-links.patch: Add linking to libraries libm,
    libdl, and libpthread when building loguru.
  * fix-QtGUI-missing-GLX_mesa-linking.patch: Link to library
    libGLX_mesa when building Qt GUI support.
  * paraview-link-against-python.patch to fix linking against
    the python library.
- Patch 0001-Allow-compilation-on-GLES-platforms.patch needs
  rebase; commented out for now.
- Switch an env based hashbang with one directly calling the
  required binary (python3 in this case).
- Switch as many BuildRequires as possible to pkgconfig based
  ones.
- Update rpmlintrc file to remove no longer needed filters and
  update the leftover filter (hidden file or dir) for directory
  change.

OBS-URL: https://build.opensuse.org/request/show/779899
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/paraview?expand=0&rev=28
This commit is contained in:
Dominique Leuenberger 2020-02-27 15:57:31 +00:00 committed by Git OBS Bridge
commit 9fd518bbcc
18 changed files with 298 additions and 272 deletions

View File

@ -7,18 +7,15 @@ Subject: [PATCH] Add libogg to IOMovie target link libraries
IO/Movie/CMakeLists.txt | 4 ++++ IO/Movie/CMakeLists.txt | 4 ++++
1 file changed, 4 insertions(+) 1 file changed, 4 insertions(+)
diff --git a/IO/Movie/CMakeLists.txt b/IO/Movie/CMakeLists.txt Index: ParaView-v5.7.0/VTK/IO/Movie/CMakeLists.txt
index 457f1a99..98ca4708 100644 ===================================================================
--- a/VTK/IO/Movie/CMakeLists.txt --- ParaView-v5.7.0.orig/VTK/IO/Movie/CMakeLists.txt
+++ b/VTK/IO/Movie/CMakeLists.txt +++ ParaView-v5.7.0/VTK/IO/Movie/CMakeLists.txt
@@ -33,3 +33,7 @@ vtk_module_library(vtkIOMovie ${Module_SRCS}) @@ -20,3 +20,7 @@ if (WIN32 AND VTK_USE_VIDEO_FOR_WINDOWS)
if(WIN32 AND VTK_USE_VIDEO_FOR_WINDOWS) PRIVATE
vtk_module_link_libraries(vtkIOMovie LINK_PRIVATE vfw32) vfw32)
endif() endif ()
+ +
+if(vtkIOMovie_vtkoggtheora) +if(vtkIOMovie_vtkoggtheora)
+ target_link_libraries(vtkIOMovie PUBLIC ogg) + target_link_libraries(vtkIOMovie PUBLIC ogg)
+endif() +endif()
--
2.20.1

View File

@ -1,55 +0,0 @@
From 2d5a68b91f9d638aa408285d1608bc5d70060602 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <stefan.bruens@rwth-aachen.de>
Date: Fri, 1 Sep 2017 02:11:37 +0200
Subject: [PATCH] Allow compilation on GLES platforms
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
On GLES 2.0 platforms (more specifically, for Qt5 "opengl es2" builds),
QOpenGLFunctions_3_2_Core does not exist. Since Qt 5.7,
QOpenGlFramebufferObject has a static wrapper method for framebuffer
blitting, which in worst case is a noop.
Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de>
---
GUISupport/Qt/QVTKOpenGLNativeWidget.cxx | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/GUISupport/Qt/QVTKOpenGLNativeWidget.cxx b/GUISupport/Qt/QVTKOpenGLNativeWidget.cxx
index a1676e8..16e255f 100644
--- a/VTK/GUISupport/Qt/QVTKOpenGLNativeWidget.cxx
+++ b/VTK/GUISupport/Qt/QVTKOpenGLNativeWidget.cxx
@@ -534,10 +534,15 @@ void QVTKOpenGLNativeWidget::paintGL()
// blit from this->FBO to QOpenGLWidget's FBO.
vtkQVTKOpenGLNativeWidgetDebugMacro("paintGL::blit-to-defaultFBO");
+#if QT_VERSION < 0x050700
QOpenGLFunctions_3_2_Core* f =
QOpenGLContext::currentContext()->versionFunctions<QOpenGLFunctions_3_2_Core>();
+#else
+ QOpenGLFunctions* f = QOpenGLContext::currentContext()->functions();
+#endif
if (f)
{
+#if QT_VERSION < 0x050700
vtkOpenGLState *ostate = this->RenderWindow->GetState();
f->glBindFramebuffer(GL_DRAW_FRAMEBUFFER, this->defaultFramebufferObject());
@@ -556,6 +561,13 @@ void QVTKOpenGLNativeWidget::paintGL()
f->glBlitFramebuffer(0, 0, this->RenderWindow->GetSize()[0], this->RenderWindow->GetSize()[1],
0, 0, this->RenderWindow->GetSize()[0], this->RenderWindow->GetSize()[1], GL_COLOR_BUFFER_BIT,
GL_NEAREST);
+#else
+ f->glDisable(GL_SCISSOR_TEST); // Scissor affects glBindFramebuffer.
+ QRect rect(0, 0, this->RenderWindow->GetSize()[0], this->RenderWindow->GetSize()[1]);
+ QOpenGLFramebufferObject::blitFramebuffer(0 /* binds to default framebuffer */, rect,
+ this->FBO, rect, GL_COLOR_BUFFER_BIT, GL_NEAREST, GL_COLOR_ATTACHMENT0,
+ GL_COLOR_ATTACHMENT0, QOpenGLFramebufferObject::DontRestoreFramebufferBinding);
+#endif
// now clear alpha otherwise we end up blending the rendering with
// background windows in certain cases. It happens on OsX
--
2.14.1

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1f3710b77c58a46891808dbe23dc59a1259d9c6b7bb123aaaeaa6ddf2be882ea
size 38739692

3
ParaView-v5.8.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:219e4107abf40317ce054408e9c3b22fb935d464238c1c00c0161f1c8697a3f9
size 49789116

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f8d48cc69fcc65a34b7938c2e4f207fdf3af4b68be666a96e1e512c0fa235da4
size 1571569

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a6d3d003c072f078f4a88e5646dc376619257a55de61e27055a51d7ddea6b093
size 1326335

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9af322a3d04101f1c9cd2f8150e838360ca349a6a4060d3747fb6997ce543aa7
size 49306429

3
ParaViewGuide-5.8.0.pdf Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:097239c700e7a78fc12bb2c9efdc856c2ade4c94d7c41538531ad3f173a65da7
size 49311320

View File

@ -1,14 +1,13 @@
--- a/VTK/ThirdParty/exodusII/vtkexodusII/CMakeLists.txt_orig 2019-02-14 23:22:45.209934041 +0100 Index: ParaView-v5.7.0/VTK/ThirdParty/exodusII/vtkexodusII/CMakeLists.txt
+++ b/VTK/ThirdParty/exodusII/vtkexodusII/CMakeLists.txt 2019-02-14 23:23:32.793799582 +0100 ===================================================================
@@ -297,8 +297,10 @@ --- ParaView-v5.7.0.orig/VTK/ThirdParty/exodusII/vtkexodusII/CMakeLists.txt
"${CMAKE_CURRENT_BINARY_DIR}/include/exodusII_cfg.h" +++ ParaView-v5.7.0/VTK/ThirdParty/exodusII/vtkexodusII/CMakeLists.txt
"${CMAKE_CURRENT_BINARY_DIR}/include/exodus_config.h") @@ -301,6 +301,8 @@ vtk_module_add_module(VTK::exodusII
SOURCES ${sources}
-vtk_add_library(vtkexodusII ${sources} ${headers}) HEADERS ${headers}
+vtk_add_library(vtkexodusII ${sources} ${headers}) HEADERS_SUBDIR "vtkexodusII/include")
+set_property(TARGET vtkexodusII PROPERTY POSITION_INDEPENDENT_CODE ON) +vtk_module_link(VTK::exodusII PUBLIC pthread)
target_link_libraries(vtkexodusII PUBLIC ${vtknetcdf_LIBRARIES}) +vtk_module_link(VTK::exodusII PUBLIC hdf5)
+target_link_libraries(vtkexodusII PUBLIC pthread) target_compile_definitions(exodusII
if (NOT VTK_INSTALL_NO_DEVELOPMENT) PRIVATE
install(FILES exoIIc_EXPORTS)
${headers}

View File

@ -1,24 +1,13 @@
--- a/VTK/ThirdParty/libharu/vtklibharu/CMakeLists.txt Index: ParaView-v5.7.0/VTK/ThirdParty/libharu/vtklibharu/CMakeLists.txt
+++ b/VTK/ThirdParty/libharu/vtklibharu/CMakeLists.txt ===================================================================
@@ -125,6 +125,9 @@ --- ParaView-v5.7.0.orig/VTK/ThirdParty/libharu/vtklibharu/CMakeLists.txt
+++ ParaView-v5.7.0/VTK/ThirdParty/libharu/vtklibharu/CMakeLists.txt
@@ -125,6 +125,8 @@ if(PNG_FOUND)
endif(PNG_FOUND) endif(PNG_FOUND)
endif () endif ()
+find_library(M_LIB m) +link_libraries(m dl pthread)
+set(ADDITIONAL_LIBRARIES ${ADDITIONAL_LIBRARIES} ${M_LIB})
+ +
# ======================================================================= # =======================================================================
# configure header files, add compiler flags # configure header files, add compiler flags
# ======================================================================= # =======================================================================
--- a/VTK/ThirdParty/libharu/vtklibharu/src/CMakeLists.txt
+++ b/VTK/ThirdParty/libharu/vtklibharu/src/CMakeLists.txt
@@ -102,7 +102,7 @@
endif(LIBHPDF_SHARED)
else ()
vtk_add_library(vtklibharu ${LIBHPDF_SRCS})
- target_link_libraries(vtklibharu PRIVATE ${vtkzlib_LIBRARIES} ${vtkpng_LIBRARIES})
+ target_link_libraries(vtklibharu PRIVATE ${vtkzlib_LIBRARIES} ${vtkpng_LIBRARIES} ${ADDITIONAL_LIBRARIES})
if (WIN32)
set_target_properties(vtklibharu
PROPERTIES

View File

@ -0,0 +1,15 @@
Index: ParaView-v5.7.0/VTK/ThirdParty/loguru/vtkloguru/CMakeLists.txt
===================================================================
--- ParaView-v5.7.0.orig/VTK/ThirdParty/loguru/vtkloguru/CMakeLists.txt
+++ ParaView-v5.7.0/VTK/ThirdParty/loguru/vtkloguru/CMakeLists.txt
@@ -10,6 +12,10 @@ vtk_module_add_module(VTK::loguru
HEADERS ${headers}
HEADERS_SUBDIR "vtkloguru")
+vtk_module_link(VTK::loguru PUBLIC m)
+vtk_module_link(VTK::loguru PUBLIC dl)
+vtk_module_link(VTK::loguru PUBLIC pthread)
+
include(GenerateExportHeader)
generate_export_header(loguru
EXPORT_MACRO_NAME LOGURU_EXPORT

View File

@ -1,9 +1,9 @@
Index: ParaView-v5.4.0/Applications/ParaView/paraview.desktop.in Index: ParaView-v5.8.0/Clients/ParaView/org.paraview.ParaView.desktop.in
=================================================================== ===================================================================
--- ParaView-v5.4.0.orig/Applications/ParaView/paraview.desktop.in --- ParaView-v5.8.0.orig/Clients/ParaView/org.paraview.ParaView.desktop.in
+++ ParaView-v5.4.0/Applications/ParaView/paraview.desktop.in +++ ParaView-v5.8.0/Clients/ParaView/org.paraview.ParaView.desktop.in
@@ -6,3 +6,5 @@ Comment=Parallel visualization applicati @@ -6,3 +6,5 @@ Comment=Parallel visualization applicati
Exec=paraview Exec=paraview %f
TryExec=paraview TryExec=paraview
Icon=paraview Icon=paraview
+Categories=Graphics;2DGraphics;3DGraphics; +Categories=Graphics;2DGraphics;3DGraphics;

View File

@ -1,13 +0,0 @@
Index: ParaView-v5.6.0/CMake/ParaViewMacros.cmake
===================================================================
--- ParaView-v5.6.0.orig/CMake/ParaViewMacros.cmake
+++ ParaView-v5.6.0/CMake/ParaViewMacros.cmake
@@ -259,7 +259,7 @@
endif()
find_program(QT_XMLPATTERNS_EXECUTABLE
- xmlpatterns
+ NAMES xmlpatterns xmlpatterns-qt5
HINTS "${qt_binary_dir_hints}"
DOC "xmlpatterns used to generate html from Proxy documentation.")
mark_as_advanced(QT_XMLPATTERNS_EXECUTABLE)

View File

@ -1,40 +0,0 @@
Index: ParaView-v5.5.0/VTK/ThirdParty/netcdf/vtknetcdf/libdispatch/derror.c
===================================================================
--- ParaView-v5.5.0.orig/VTK/ThirdParty/netcdf/vtknetcdf/libdispatch/derror.c
+++ ParaView-v5.5.0/VTK/ThirdParty/netcdf/vtknetcdf/libdispatch/derror.c
@@ -13,7 +13,7 @@
#endif
/* Tell the user the version of netCDF. */
-static const char nc_libvers[] = PACKAGE_VERSION " of "__DATE__" "__TIME__" $";
+static const char nc_libvers[] = PACKAGE_VERSION;
/**
\defgroup lib_version Library Version
Index: ParaView-v5.5.0/Plugins/AnalyzeNIfTIReaderWriter/vtknifti1_io.cxx
===================================================================
--- ParaView-v5.5.0.orig/Plugins/AnalyzeNIfTIReaderWriter/vtknifti1_io.cxx
+++ ParaView-v5.5.0/Plugins/AnalyzeNIfTIReaderWriter/vtknifti1_io.cxx
@@ -438,7 +438,7 @@ void vtknifti1_io::nifti_disp_lib_hist(
*//*--------------------------------------------------------------------*/
void vtknifti1_io::nifti_disp_lib_version( void )
{
- printf("%s, compiled %s\n", gni_version, __DATE__);
+ printf("%s\n", gni_version);
}
Index: ParaView-v5.5.0/Plugins/CDIReader/cdilib.c
===================================================================
--- ParaView-v5.5.0.orig/Plugins/CDIReader/cdilib.c
+++ ParaView-v5.5.0/Plugins/CDIReader/cdilib.c
@@ -5274,7 +5274,7 @@ static void file_table_print(void);
#define LIBVERSION 1.8.2
#define XSTRING(x) #x
#define STRING(x) XSTRING(x)
-static const char file_libvers[] = STRING(LIBVERSION) " of " __DATE__ " " __TIME__;
+static const char file_libvers[] = STRING(LIBVERSION);
typedef struct _filePtrToIdx {
int idx;
bfile_t *ptr;

View File

@ -0,0 +1,45 @@
Index: ParaView-v5.7.0/VTK/Web/Core/CMakeLists.txt
===================================================================
--- ParaView-v5.7.0.orig/VTK/Web/Core/CMakeLists.txt
+++ ParaView-v5.7.0/VTK/Web/Core/CMakeLists.txt
@@ -1,3 +1,10 @@
+if ("${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}" VERSION_GREATER "3.7")
+ link_libraries(python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR})
+else ("${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}" VERSION_GREATER "3.7")
+ link_libraries(python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}m)
+endif ("${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}" VERSION_GREATER "3.7")
+
+
set(classes
vtkDataEncoder
vtkObjectIdMap
Index: ParaView-v5.7.0/VTK/Wrapping/PythonCore/CMakeLists.txt
===================================================================
--- ParaView-v5.7.0.orig/VTK/Wrapping/PythonCore/CMakeLists.txt
+++ ParaView-v5.7.0/VTK/Wrapping/PythonCore/CMakeLists.txt
@@ -1,3 +1,10 @@
+if ("${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}" VERSION_GREATER "3.7")
+ link_libraries(python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR})
+else ("${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}" VERSION_GREATER "3.7")
+ link_libraries(python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}m)
+endif ("${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}" VERSION_GREATER "3.7")
+
+
set(classes
vtkPythonArgs
vtkPythonCommand
Index: ParaView-v5.7.0/VTK/Utilities/PythonInterpreter/CMakeLists.txt
===================================================================
--- ParaView-v5.7.0.orig/VTK/Utilities/PythonInterpreter/CMakeLists.txt
+++ ParaView-v5.7.0/VTK/Utilities/PythonInterpreter/CMakeLists.txt
@@ -1,3 +1,9 @@
+if ("${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}" VERSION_GREATER "3.7")
+ link_libraries(python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR})
+else ("${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}" VERSION_GREATER "3.7")
+ link_libraries(python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}m)
+endif ("${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}" VERSION_GREATER "3.7")
+
set(classes
vtkPythonInteractiveInterpreter
vtkPythonInterpreter)

View File

@ -1,10 +1,6 @@
# paraview has *.so symbolic links to other files # A non-executable file in bindir is used by paraview to locate plugins (hard-coded)
# and these are mistaken by rpmlint to be devel files # See https://gitlab.kitware.com/paraview/paraview/issues/19706
addFilter("devel-file-in-non-devel-package") addFilter("non-executable-in-bin .*/usr/bin/paraview\.conf")
addFilter("script-without-shebang .*/usr/bin/paraview\.conf")
# Upstream doesn't supply manpages, so no go here
addFilter("no-manual-page-for-binary")
# The hidden .plugin file is really needed
addFilter("hidden-file-or-dir .*/usr/lib64/paraview/.plugins")
addFilter("hidden-file-or-dir .*/usr/lib64/paraview*/.plugins")

View File

@ -1,3 +1,80 @@
-------------------------------------------------------------------
Tue Feb 18 18:49:49 UTC 2020 - Atri Bhattacharya <badshah400@gmail.com>
- Update to version 5.8.0:
* See https://blog.kitware.com/paraview-5-8-0-release-notes/.
- Rebase paraview-desktop-entry-fix.patch for updated location of
desktop file in source.
- Drop fix-QtGUI-missing-GLX_mesa-linking.patch: no longer
required as linking GLX_mesa to build QtGUI is now correctly
handled by build.
- Drop 0001-Allow-compilation-on-GLES-platforms.patch: patch no
longer applies (since vesin 5.7.0) and commenting out patch
leads to factory_auto declining the submission.
- Use ninja instead of make as recommended by upstream and to
speed up build; define __builder to ninja so that cmake build
macros use this instead of the default make.
- Pass PARAVIEW_BUILD_WITH_EXTERNAL to cmake to use system third
party libraries by default; pass VTK_MODULE_USE_EXTERNAL_<name>
to use specific bundled libraries conditionally (gl2ps, haru,
pugixml).
- Use %cmake_build instead of %make_jobs during building.
- Replace deprecated options passed to cmake by updated ones:
* PARAVIEW_BUILD_QT_GUI -> DPARAVIEW_USE_QT
* PARAVIEW_ENABLE_PYTHON -> PARAVIEW_USE_PYTHON.
- Update paraview-rpmlintrc to suppress warning about a non-exec
file that is installed to %{_bindir} and is really necessary
(see https://gitlab.kitware.com/paraview/paraview/issues/19706);
the previous entry no longer applies, so drop it.
- Add absolutely necessary dependencies for paraview-devel as
Requires.
- Install python modules to %{python3_sitearch}/paraview rather
than the default [%{python3_sitearch}] by setting
PARAVIEW_PYTHON_SITE_PACKAGES_SUFFIX when configuring cmake;
this avoids file conflicts between python3-paraview and
python3-vtk.
- Don't install paraview-config: it doesn't work without the
static libs being installed.
-------------------------------------------------------------------
Sat Jan 31 22:30:41 UTC 2020 - Atri Bhattacharya <badshah400@gmail.com>
- Update to version 5.7.0:
See https://blog.kitware.com/paraview-5-7-0-release-notes/
- Split out new subpackages: libparaview5_7 for all the shared
libs, paraview-plugins for bundled plugins, and python3-paraview
for python3 bindings.
- Move shared libraries to %{_libdir} and install them as part of
libparaview5_7.
- Update commands passed to cmake in keeping with upstream's
overhaul.
- Drop paraview-find-qhelpgenerator-qt5.patch: no longer needed.
- Drop paraview-fix-file-contains-date-time.patch: GCC supports
SOURCE_DATE_EPOCH and, as such, this fix is no longer needed.
- Switch to python3: Paraview is production ready with python3
starting with version 5.7.0, and python2 support is slated to be
dropped from the next major upgrade.
- Rebase patches for updated version:
* fix-libharu-missing-m.patch.
* bundled_exodusii_add_missing_libpthread.patch.
- New patches to fix linking problems introduced with version
5.7.0:
* fix-loguru-missing-links.patch: Add linking to libraries libm,
libdl, and libpthread when building loguru.
* fix-QtGUI-missing-GLX_mesa-linking.patch: Link to library
libGLX_mesa when building Qt GUI support.
* paraview-link-against-python.patch to fix linking against
the python library.
- Patch 0001-Allow-compilation-on-GLES-platforms.patch needs
rebase; commented out for now.
- Switch an env based hashbang with one directly calling the
required binary (python3 in this case).
- Switch as many BuildRequires as possible to pkgconfig based
ones.
- Update rpmlintrc file to remove no longer needed filters and
update the leftover filter (hidden file or dir) for directory
change.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri Jan 31 22:05:09 UTC 2020 - Atri Bhattacharya <badshah400@gmail.com> Fri Jan 31 22:05:09 UTC 2020 - Atri Bhattacharya <badshah400@gmail.com>

View File

@ -16,7 +16,8 @@
# #
%define major_ver 5.6 %define major_ver 5.8
%define shlib libparaview5_8
%if 0%{?suse_version} <= 1500 %if 0%{?suse_version} <= 1500
%bcond_with pugixml %bcond_with pugixml
@ -28,8 +29,10 @@
# Need patched version with HPDF_SHADING # Need patched version with HPDF_SHADING
%bcond_with haru %bcond_with haru
%define __builder ninja
Name: paraview Name: paraview
Version: 5.6.2 Version: 5.8.0
Release: 0 Release: 0
Summary: Data analysis and visualization application Summary: Data analysis and visualization application
License: BSD-3-Clause License: BSD-3-Clause
@ -42,49 +45,49 @@ Source2: https://www.paraview.org/files/v%{major_ver}/ParaViewGettingStar
Source3: https://www.paraview.org/files/v%{major_ver}/ParaViewGuide-%{version}.pdf Source3: https://www.paraview.org/files/v%{major_ver}/ParaViewGuide-%{version}.pdf
# PATCH-FIX-UPSTREAM paraview-desktop-entry-fix.patch badshah400@gmail.com -- Fix desktop menu entry by inserting proper required categories # PATCH-FIX-UPSTREAM paraview-desktop-entry-fix.patch badshah400@gmail.com -- Fix desktop menu entry by inserting proper required categories
Patch1: paraview-desktop-entry-fix.patch Patch1: paraview-desktop-entry-fix.patch
# PATCH-FIX-UPSTREAM paraview-fix-file-contains-date-time.patch badshah400@gmail.com -- Remove reference to __DATE__ and __TIME__ from source
Patch2: paraview-fix-file-contains-date-time.patch
# PATCH-FIX-UPSTREAM paraview-do-not-install-missing-vtk-doxygen-dir.patch foss@grueninger.de -- Remove install of nonexistent doxygen/html dir # PATCH-FIX-UPSTREAM paraview-do-not-install-missing-vtk-doxygen-dir.patch foss@grueninger.de -- Remove install of nonexistent doxygen/html dir
Patch3: paraview-do-not-install-missing-vtk-doxygen-dir.patch Patch3: paraview-do-not-install-missing-vtk-doxygen-dir.patch
# PATCH-FIX-UPSTREAM paraview-find-qhelpgenerator-qt5.patch badshah400@gmail.com -- Help find qhelpgenerator-qt5 instead of qhelpgenerator when Qt5 is used
Patch4: paraview-find-qhelpgenerator-qt5.patch
# PATCH-FIX-OPENSUSE fix-libharu-missing-m.patch -- missing libraries for linking # PATCH-FIX-OPENSUSE fix-libharu-missing-m.patch -- missing libraries for linking
Patch8: fix-libharu-missing-m.patch Patch8: fix-libharu-missing-m.patch
# PATCH-FIX-UPSTREAM paraview-link-against-python.patch badshah400@gmail.com -- Fix linking to python library
Patch9: paraview-link-against-python.patch
# PATCH-FIX-OPENSUSE bundled_exodusii_add_missing_libpthread.patch stefan.bruens@rwth-aachen.de -- Add missing libm for linking # PATCH-FIX-OPENSUSE bundled_exodusii_add_missing_libpthread.patch stefan.bruens@rwth-aachen.de -- Add missing libm for linking
Patch10: bundled_exodusii_add_missing_libpthread.patch Patch10: bundled_exodusii_add_missing_libpthread.patch
# PATCH-FIX-OPENSUSE -- Missing libogg symbols # PATCH-FIX-OPENSUSE -- Missing libogg symbols
Patch11: 0001-Add-libogg-to-IOMovie-target-link-libraries.patch Patch11: 0001-Add-libogg-to-IOMovie-target-link-libraries.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 # PATCH-FIX-UPSTREAM fix-loguru-missing-links.patch badshah400@gmail.com -- Fix missing libs (libm, libpthread, libdl) when linking to build loguru
Patch12: 0001-Allow-compilation-on-GLES-platforms.patch Patch13: fix-loguru-missing-links.patch
BuildRequires: Mesa-devel BuildRequires: Mesa-devel
BuildRequires: cgns-devel BuildRequires: cgns-devel
BuildRequires: cmake >= 3.3 BuildRequires: cmake >= 3.3
BuildRequires: desktop-file-utils
BuildRequires: double-conversion-devel BuildRequires: double-conversion-devel
BuildRequires: doxygen BuildRequires: doxygen
BuildRequires: exodusii-devel
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: gcc-fortran
BuildRequires: gnuplot BuildRequires: gnuplot
BuildRequires: graphviz BuildRequires: graphviz
BuildRequires: hdf5-devel BuildRequires: hdf5-devel
BuildRequires: libboost_graph-devel BuildRequires: libboost_graph-devel
BuildRequires: libboost_headers-devel BuildRequires: libboost_headers-devel
BuildRequires: libexpat-devel %if %{with gl2ps}
BuildRequires: gl2ps-devel
%endif
%if %{with haru} %if %{with haru}
BuildRequires: libharu-devel > 2.3.0 BuildRequires: libharu-devel > 2.3.0
%endif %endif
BuildRequires: libjpeg-devel
BuildRequires: libnetcdf_c++-devel BuildRequires: libnetcdf_c++-devel
BuildRequires: libpqxx-devel BuildRequires: ninja
BuildRequires: libtiff-devel BuildRequires: python3-Sphinx
BuildRequires: openssl-devel BuildRequires: python3-Twisted
BuildRequires: python-Sphinx BuildRequires: python3-devel
BuildRequires: python-Twisted BuildRequires: python3-matplotlib
BuildRequires: python-devel BuildRequires: python3-qt5-devel
BuildRequires: python-matplotlib
BuildRequires: python-qt5-devel
BuildRequires: python-rpm-macros
BuildRequires: readline-devel BuildRequires: readline-devel
BuildRequires: utfcpp-devel
BuildRequires: wget BuildRequires: wget
BuildRequires: zlib-devel
BuildRequires: pkgconfig(Qt5Core) BuildRequires: pkgconfig(Qt5Core)
BuildRequires: pkgconfig(Qt5Gui) BuildRequires: pkgconfig(Qt5Gui)
BuildRequires: pkgconfig(Qt5Help) BuildRequires: pkgconfig(Qt5Help)
@ -95,23 +98,31 @@ BuildRequires: pkgconfig(Qt5Widgets)
BuildRequires: pkgconfig(Qt5X11Extras) BuildRequires: pkgconfig(Qt5X11Extras)
BuildRequires: pkgconfig(Qt5Xml) BuildRequires: pkgconfig(Qt5Xml)
BuildRequires: pkgconfig(eigen3) >= 2.91.0 BuildRequires: pkgconfig(eigen3) >= 2.91.0
BuildRequires: pkgconfig(expat)
BuildRequires: pkgconfig(freetype2) BuildRequires: pkgconfig(freetype2)
BuildRequires: pkgconfig(glew) BuildRequires: pkgconfig(glew)
BuildRequires: pkgconfig(jsoncpp) >= 0.7.0 BuildRequires: pkgconfig(jsoncpp) >= 0.7.0
BuildRequires: pkgconfig(libjpeg)
BuildRequires: pkgconfig(liblz4) >= 1.7.3 BuildRequires: pkgconfig(liblz4) >= 1.7.3
BuildRequires: pkgconfig(libpng) BuildRequires: pkgconfig(libpng)
BuildRequires: pkgconfig(libpqxx)
BuildRequires: pkgconfig(libtiff-4)
BuildRequires: pkgconfig(netcdf) BuildRequires: pkgconfig(netcdf)
BuildRequires: pkgconfig(ogg) BuildRequires: pkgconfig(ogg)
BuildRequires: pkgconfig(openssl)
BuildRequires: pkgconfig(protobuf) >= 2.6.0 BuildRequires: pkgconfig(protobuf) >= 2.6.0
%if %{with pugixml} %if %{with pugixml}
BuildRequires: pkgconfig(pugixml) BuildRequires: pkgconfig(pugixml)
%endif %endif
BuildRequires: pkgconfig(theora) BuildRequires: pkgconfig(theora)
BuildRequires: pkgconfig(xt) BuildRequires: pkgconfig(xt)
BuildRequires: pkgconfig(zlib)
Recommends: %{name}-plugins
Requires: gnuplot Requires: gnuplot
Requires: graphviz Requires: graphviz
Requires: python-Twisted Requires(post): /sbin/ldconfig
Requires: python-qt5 Requires(postun): /sbin/ldconfig
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description %description
ParaView is a data analysis and visualization application for ParaView is a data analysis and visualization application for
@ -124,123 +135,128 @@ batch processing.
NOTE: The version in this package has NOT been compiled with MPI support. 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 %package devel
Summary: Headers for building ParaView plugins or embedding Catalyst Summary: Headers for building ParaView plugins or embedding Catalyst
Group: Development/Libraries/Other Group: Development/Libraries/Other
Requires: %{name} = %{version} Requires: %{shlib} = %{version}
Requires: cmake >= 3.3
Requires: glibc-devel
Requires: libboost_thread-devel
%description devel %description devel
This package contains headers and libraries required to build plugins This package contains headers and libraries required to build plugins
for ParaView or to embed ParaView Catalyst in a simulation program. 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
%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 %prep
%setup -q -n ParaView-v%{version} %autosetup -p1 -n ParaView-v%{version}
%patch1 -p1
%patch2 -p1 # FIX env BASED HASHBANG
%patch3 -p1 sed -Ei "1{s|#!/usr/bin/env python3|#!/usr/bin/python3|}" Clients/CommandLineExecutables/paraview-config
%patch4 -p1
%patch8 -p1
#%%patch9 -p1
%patch10 -p1
%patch11 -p1
%patch12 -p1
%build %build
%global _lto_cflags %{_lto_cflags} -ffat-lto-objects %global _lto_cflags %{_lto_cflags} -ffat-lto-objects
export CC='gcc' %cmake -DCMAKE_INSTALL_LIBDIR=%{_lib} \
export CXX='g++' -DCMAKE_INSTALL_DOCDIR=%{_docdir}/%{name} \
-DPARAVIEW_BUILD_SHARED_LIBS:BOOL=ON \
-DCMAKE_SKIP_RPATH:BOOL=OFF \
-DPARAVIEW_USE_VTKM:BOOL=OFF \
-DPARAVIEW_USE_QT:BOOL=ON \
-DPARAVIEW_USE_PYTHON:BOOL=ON \
-DPARAVIEW_PYTHON_SITE_PACKAGES_SUFFIX=%{_lib}/python%{py3_ver}/site-packages/paraview \
-DPARAVIEW_ENABLE_WEB:BOOL=ON \
-DVTK_WRAP_PYTHON:BOOL=ON \
-DVTK_OPENGL_HAS_OSMESA:BOOL=OFF \
-DBUILD_EXAMPLES:BOOL=OFF \
-DBUILD_TESTING:BOOL=OFF \
-DQtTesting_INSTALL_NO_DEVELOPMENT:BOOL=ON \
-DVTK_BUILD_QT_DESIGNER_PLUGIN:BOOL=OFF \
-DPARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=ON \
-DPARAVIEW_BUILD_WITH_EXTERNAL:BOOL=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_gl2ps=%{?with_gl2ps:ON}%{!?with_gl2ps:OFF} \
-DVTK_MODULE_USE_EXTERNAL_VTK_libharu=%{?with_haru:ON}%{!?with_haru:OFF} \
-DVTK_MODULE_USE_EXTERNAL_VTK_pugixml=%{?with_pugixml:ON}%{!?with_pugixml:OFF}
%cmake -DPV_INSTALL_LIB_DIR:PATH=%{_lib}/%{name} \ %cmake_build
-DVTK_INSTALL_ARCHIVE_DIR:PATH=%{_lib}/%{name} \
-DVTK_INSTALL_LIBRARY_DIR:PATH=%{_lib}/%{name} \
-DVTK_INSTALL_PACKAGE_DIR:PATH=%{_lib}/cmake/%{name}-%{major_ver} \
-DVTK_INSTALL_DATA_DIR=share/%{name} \
-DVTK_INSTALL_DOC_DIR=share/doc/packages/%{name} \
-DCMAKE_CXX_COMPILER:FILEPATH=$CXX \
-DCMAKE_C_COMPILER:FILEPATH=$CC \
-DCMAKE_SKIP_RPATH:BOOL=OFF \
-DPARAVIEW_USE_VTKM:BOOL=OFF \
-DPARAVIEW_BUILD_QT_GUI:BOOL=ON \
-DPARAVIEW_BUILD_PLUGIN_SLACTools:BOOL=ON \
-DPARAVIEW_ENABLE_PYTHON:BOOL=ON \
-DPARAVIEW_ENABLE_WEB:BOOL=ON \
-DVTK_WRAP_PYTHON:BOOL=ON \
-DVTK_WRAP_PYTHON_SIP:BOOL=ON \
-DVTK_OPENGL_HAS_OSMESA:BOOL=OFF \
-DVTK_USE_SYSTEM_LIBRARIES:BOOL=ON \
-DVTK_USE_SYSTEM_EXPAT:BOOL=ON \
-DVTK_USE_SYSTEM_FREETYPE:BOOL=ON \
-DVTK_USE_SYSTEM_GL2PS:BOOL=%{?with_gl2ps:ON}%{!?with_gl2ps:OFF} \
-DVTK_USE_SYSTEM_LIBHARU:BOOL=%{?with_haru:ON}%{!?with_haru:OFF} \
-DVTK_USE_SYSTEM_JPEG:BOOL=ON \
-DVTK_USE_SYSTEM_PNG:BOOL=ON \
-DVTK_USE_SYSTEM_TIFF:BOOL=ON \
-DVTK_USE_SYSTEM_LZMA:BOOL=ON \
-DVTK_USE_SYSTEM_PEGTL:BOOL=OFF \
-DVTK_USE_SYSTEM_PUGIXML:BOOL=%{?with_pugixml:ON}%{!?with_pugixml:OFF} \
-DVTK_USE_SYSTEM_QTTESTING:BOOL=OFF \
-DVTK_USE_SYSTEM_TWISTED:BOOL=ON \
-DVTK_USE_SYSTEM_XDMF2:BOOL=OFF \
-DVTK_USE_SYSTEM_ZLIB:BOOL=ON \
-DBUILD_DOCUMENTATION:BOOL=ON \
-DBUILD_EXAMPLES:BOOL=OFF \
-DBUILD_TESTING:BOOL=OFF \
-DQtTesting_INSTALL_NO_DEVELOPMENT:BOOL=ON \
-DPARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=ON
# FIXME: CAUSES ERRORS WITH THE IN-APP PYTHON SHELL WHICH STILL LOOKS FOR PY MODULES IN THE DEFAULT DIR %%{_libdir}/%%{name}/site-packages
# -DVTK_INSTALL_PYTHON_MODULE_DIR:PATH="%%{python_sitearch}/%%{name}" \
# FIXME: CAUSES PYTHON BYTECODE TIMESTAMP WARNINGS
# -G"Unix Makefiles" \
# https://gitlab.kitware.com/paraview/paraview/issues/17049 from
# -DCMAKE_SKIP_RPATH:BOOL=ON
%make_jobs
%install %install
find . \( -name \*.txt -o -name \*.xml -o -name '*.[ch]' -o -name '*.[ch][px][px]' \) -exec chmod -x "{}" + find . \( -name \*.txt -o -name \*.xml -o -name '*.[ch]' -o -name '*.[ch][px][px]' \) -exec chmod -x "{}" +
%cmake_install %cmake_install
# UNNECESSARY STATIC LIB # UNNECESSARY STATIC LIBS
rm -fr %{buildroot}%{_libexecdir}/libFmmMesh.a rm -fr %{buildroot}%{_libdir}/*.a
rm %{buildroot}%{_libdir}/%{name}-%{major_ver}/plugins/GeodesicMeasurement/libFmmMesh.a
# INSTALL DOCUMENTATION USED BY THE HELP MENU IN MAIN APP # INSTALL DOCUMENTATION USED BY THE HELP MENU IN MAIN APP
install -Dm0644 %{S:2} %{buildroot}%{_datadir}/%{name}-%{major_ver}/doc/GettingStarted.pdf install -Dm0644 %{S:2} %{buildroot}%{_datadir}/%{name}-%{major_ver}/doc/GettingStarted.pdf
install -Dm0644 %{S:3} %{buildroot}%{_datadir}/%{name}-%{major_ver}/doc/Guide.pdf install -Dm0644 %{S:3} %{buildroot}%{_datadir}/%{name}-%{major_ver}/doc/Guide.pdf
# REMOVE paraview-config: DOESN'T WORK WITHOUT STATIC LIBS ANYWAY
rm %{buildroot}%{_bindir}/paraview-config
%fdupes %{buildroot}/ %fdupes %{buildroot}/
%post -p /sbin/ldconfig %post -n %{shlib} -p /sbin/ldconfig
%postun -p /sbin/ldconfig %postun -n %{shlib} -p /sbin/ldconfig
%files %files
%defattr(-,root,root) %license %{_datadir}/licenses/ParaView/
%license License_v1.2.txt %{_bindir}/*
%exclude %{_bindir}/smTest* %exclude %{_bindir}/smTest*
%exclude %{_bindir}/vtk* %exclude %{_bindir}/vtk*
%exclude %{_includedir}/
%exclude %{_libdir}/cmake/
%{_libdir}/%{name}/
%{_bindir}/*
%{_docdir}/%{name}/
%{_datadir}/%{name}-%{major_ver}/ %{_datadir}/%{name}-%{major_ver}/
%dir %{_datadir}/appdata %dir %{_datadir}/metainfo
%{_datadir}/appdata/%{name}.appdata.xml %{_datadir}/metainfo/*.appdata.xml
%{_datadir}/applications/%{name}.desktop %{_datadir}/applications/*.desktop
%{_datadir}/icons/hicolor/*/apps/%{name}.png %{_datadir}/icons/hicolor/*/apps/%{name}.png
%{_docdir}/paraview/
%dir %{_libdir}/vtk/
%dir %{_libdir}/vtk/hierarchy
%{_libdir}/vtk/hierarchy/ParaView/
%files -n %{shlib}
%{_libdir}/*.so.*
%files plugins
%{_libdir}/%{name}-%{major_ver}/
%files devel %files devel
%defattr(-,root,root) %{_libdir}/*.so
%{_libdir}/cmake/paraview-%{major_ver}/
%{_bindir}/smTest* %{_bindir}/smTest*
%{_bindir}/vtk* %{_bindir}/vtk*
%{_includedir}/%{name}* %{_includedir}/%{name}*
%{_libdir}/cmake/%{name}-%{major_ver}/
%files -n python3-paraview
%{python3_sitearch}/%{name}/
%changelog %changelog