diff --git a/.gitignore b/.gitignore index 1e9afc3..bc82043 100644 --- a/.gitignore +++ b/.gitignore @@ -17,31 +17,3 @@ vtk-5.6.0.tar.gz /VTKData-8.1.1.tar.gz /VTK-8.2.0.tar.gz /VTKData-8.2.0.tar.gz -/VTK-9.0.0.tar.gz -/VTKData-9.0.0.tar.gz -/VTK-9.0.1.tar.gz -/VTKData-9.0.1.tar.gz -/VTK-9.0.2.tar.gz -/VTKData-9.0.2.tar.gz -/VTK-9.0.3.tar.gz -/VTKData-9.0.3.tar.gz -/VTK-9.1.0.tar.gz -/VTKData-9.1.0.tar.gz -/VTK-9.2.5.tar.gz -/VTKData-9.2.5.tar.gz -/VTK-9.2.6.tar.gz -/VTKData-9.2.6.tar.gz -/VTK-9.3.0.tar.gz -/VTKData-9.3.0.tar.gz -/VTK-9.3.1.tar.gz -/VTKData-9.3.1.tar.gz -/VTK-9.4.1.tar.gz -/VTKData-9.4.1.tar.gz -/VTK-9.4.2.tar.gz -/VTKData-9.4.2.tar.gz -/VTK-9.5.0.tar.gz -/VTKData-9.5.0.tar.gz -/VTK-9.5.1.tar.gz -/VTKData-9.5.1.tar.gz -/VTK-9.5.2.tar.gz -/VTKData-9.5.2.tar.gz diff --git a/5883.patch b/5883.patch new file mode 100644 index 0000000..f749d3c --- /dev/null +++ b/5883.patch @@ -0,0 +1,176 @@ +From 257b9d7b18d5f3db3fe099dc18f230e23f7dfbab Mon Sep 17 00:00:00 2001 +From: David Gobbi +Date: Tue, 20 Aug 2019 17:02:24 -0600 +Subject: [PATCH] Compatibility for Python 3.8 + +The PyTypeObject struct was modified in Python 3.8, this change is +required to avoid compile errors. +--- + .../PythonInterpreter/vtkPythonStdStreamCaptureHelper.h | 6 ++++++ + Wrapping/PythonCore/PyVTKMethodDescriptor.cxx | 2 +- + Wrapping/PythonCore/PyVTKNamespace.cxx | 2 +- + Wrapping/PythonCore/PyVTKReference.cxx | 8 ++++---- + Wrapping/PythonCore/PyVTKTemplate.cxx | 2 +- + Wrapping/PythonCore/vtkPythonCompatibility.h | 8 +++++++- + Wrapping/Tools/vtkWrapPythonClass.c | 2 +- + Wrapping/Tools/vtkWrapPythonEnum.c | 2 +- + Wrapping/Tools/vtkWrapPythonType.c | 2 +- + 9 files changed, 23 insertions(+), 11 deletions(-) + +diff --git a/Utilities/PythonInterpreter/vtkPythonStdStreamCaptureHelper.h b/Utilities/PythonInterpreter/vtkPythonStdStreamCaptureHelper.h +index b1c12c83de..14ccfbe928 100644 +--- a/Utilities/PythonInterpreter/vtkPythonStdStreamCaptureHelper.h ++++ b/Utilities/PythonInterpreter/vtkPythonStdStreamCaptureHelper.h +@@ -140,6 +140,12 @@ static PyTypeObject vtkPythonStdStreamCaptureHelperType = { + #if PY_VERSION_HEX >= 0x03040000 + 0, // tp_finalize + #endif ++#if PY_VERSION_HEX >= 0x03080000 ++ 0, // tp_vectorcall ++#if PY_VERSION_HEX < 0x03090000 ++ 0, // tp_print ++#endif ++#endif + }; + + static PyObject* vtkWrite(PyObject* self, PyObject* args) +diff --git a/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx b/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx +index 2b0d443537..3840038498 100644 +--- a/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx ++++ b/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx +@@ -186,7 +186,7 @@ PyTypeObject PyVTKMethodDescriptor_Type = { + sizeof(PyMethodDescrObject), // tp_basicsize + 0, // tp_itemsize + PyVTKMethodDescriptor_Delete, // tp_dealloc +- nullptr, // tp_print ++ 0, // tp_vectorcall_offset + nullptr, // tp_getattr + nullptr, // tp_setattr + nullptr, // tp_compare +diff --git a/Wrapping/PythonCore/PyVTKNamespace.cxx b/Wrapping/PythonCore/PyVTKNamespace.cxx +index 71ee2a3516..5cf5bfbe6b 100644 +--- a/Wrapping/PythonCore/PyVTKNamespace.cxx ++++ b/Wrapping/PythonCore/PyVTKNamespace.cxx +@@ -49,7 +49,7 @@ PyTypeObject PyVTKNamespace_Type = { + 0, // tp_basicsize + 0, // tp_itemsize + PyVTKNamespace_Delete, // tp_dealloc +- nullptr, // tp_print ++ 0, // tp_vectorcall_offset + nullptr, // tp_getattr + nullptr, // tp_setattr + nullptr, // tp_compare +diff --git a/Wrapping/PythonCore/PyVTKReference.cxx b/Wrapping/PythonCore/PyVTKReference.cxx +index 943ac71080..b7104091c0 100644 +--- a/Wrapping/PythonCore/PyVTKReference.cxx ++++ b/Wrapping/PythonCore/PyVTKReference.cxx +@@ -1010,7 +1010,7 @@ PyTypeObject PyVTKReference_Type = { + sizeof(PyVTKReference), // tp_basicsize + 0, // tp_itemsize + PyVTKReference_Delete, // tp_dealloc +- nullptr, // tp_print ++ 0, // tp_vectorcall_offset + nullptr, // tp_getattr + nullptr, // tp_setattr + nullptr, // tp_compare +@@ -1067,7 +1067,7 @@ PyTypeObject PyVTKNumberReference_Type = { + sizeof(PyVTKReference), // tp_basicsize + 0, // tp_itemsize + PyVTKReference_Delete, // tp_dealloc +- nullptr, // tp_print ++ 0, // tp_vectorcall_offset + nullptr, // tp_getattr + nullptr, // tp_setattr + nullptr, // tp_compare +@@ -1124,7 +1124,7 @@ PyTypeObject PyVTKStringReference_Type = { + sizeof(PyVTKReference), // tp_basicsize + 0, // tp_itemsize + PyVTKReference_Delete, // tp_dealloc +- nullptr, // tp_print ++ 0, // tp_vectorcall_offset + nullptr, // tp_getattr + nullptr, // tp_setattr + nullptr, // tp_compare +@@ -1181,7 +1181,7 @@ PyTypeObject PyVTKTupleReference_Type = { + sizeof(PyVTKReference), // tp_basicsize + 0, // tp_itemsize + PyVTKReference_Delete, // tp_dealloc +- nullptr, // tp_print ++ 0, // tp_vectorcall_offset + nullptr, // tp_getattr + nullptr, // tp_setattr + nullptr, // tp_compare +diff --git a/Wrapping/PythonCore/PyVTKTemplate.cxx b/Wrapping/PythonCore/PyVTKTemplate.cxx +index be200985b3..340fe7953b 100644 +--- a/Wrapping/PythonCore/PyVTKTemplate.cxx ++++ b/Wrapping/PythonCore/PyVTKTemplate.cxx +@@ -268,7 +268,7 @@ PyTypeObject PyVTKTemplate_Type = { + 0, // tp_basicsize + 0, // tp_itemsize + nullptr, // tp_dealloc +- nullptr, // tp_print ++ 0, // tp_vectorcall_offset + nullptr, // tp_getattr + nullptr, // tp_setattr + nullptr, // tp_compare +diff --git a/Wrapping/PythonCore/vtkPythonCompatibility.h b/Wrapping/PythonCore/vtkPythonCompatibility.h +index 4a767844a6..be208faeef 100644 +--- a/Wrapping/PythonCore/vtkPythonCompatibility.h ++++ b/Wrapping/PythonCore/vtkPythonCompatibility.h +@@ -64,7 +64,13 @@ + #endif + + // PyTypeObject compatibility +-#if PY_VERSION_HEX >= 0x03040000 ++#if PY_VERSION_HEX >= 0x03090000 ++#define VTK_WRAP_PYTHON_SUPPRESS_UNINITIALIZED \ ++ 0, 0, 0, 0, ++#elif PY_VERSION_HEX >= 0x03080000 ++#define VTK_WRAP_PYTHON_SUPPRESS_UNINITIALIZED \ ++ 0, 0, 0, 0, 0, ++#elif PY_VERSION_HEX >= 0x03040000 + #define VTK_WRAP_PYTHON_SUPPRESS_UNINITIALIZED \ + 0, 0, 0, + #else +diff --git a/Wrapping/Tools/vtkWrapPythonClass.c b/Wrapping/Tools/vtkWrapPythonClass.c +index b1e45f8e80..4d558ea081 100644 +--- a/Wrapping/Tools/vtkWrapPythonClass.c ++++ b/Wrapping/Tools/vtkWrapPythonClass.c +@@ -521,7 +521,7 @@ void vtkWrapPython_GenerateObjectType( + " sizeof(PyVTKObject), // tp_basicsize\n" + " 0, // tp_itemsize\n" + " PyVTKObject_Delete, // tp_dealloc\n" +- " nullptr, // tp_print\n" ++ " 0, // tp_vectorcall_offset\n" + " nullptr, // tp_getattr\n" + " nullptr, // tp_setattr\n" + " nullptr, // tp_compare\n" +diff --git a/Wrapping/Tools/vtkWrapPythonEnum.c b/Wrapping/Tools/vtkWrapPythonEnum.c +index b933702242..1249362854 100644 +--- a/Wrapping/Tools/vtkWrapPythonEnum.c ++++ b/Wrapping/Tools/vtkWrapPythonEnum.c +@@ -145,7 +145,7 @@ void vtkWrapPython_GenerateEnumType( + " sizeof(PyIntObject), // tp_basicsize\n" + " 0, // tp_itemsize\n" + " nullptr, // tp_dealloc\n" +- " nullptr, // tp_print\n" ++ " 0, // tp_vectorcall_offset\n" + " nullptr, // tp_getattr\n" + " nullptr, // tp_setattr\n" + " nullptr, // tp_compare\n" +diff --git a/Wrapping/Tools/vtkWrapPythonType.c b/Wrapping/Tools/vtkWrapPythonType.c +index 744cb1b9d3..0a1375e541 100644 +--- a/Wrapping/Tools/vtkWrapPythonType.c ++++ b/Wrapping/Tools/vtkWrapPythonType.c +@@ -709,7 +709,7 @@ void vtkWrapPython_GenerateSpecialType( + " sizeof(PyVTKSpecialObject), // tp_basicsize\n" + " 0, // tp_itemsize\n" + " Py%s_Delete, // tp_dealloc\n" +- " nullptr, // tp_print\n" ++ " 0, // tp_vectorcall_offset\n" + " nullptr, // tp_getattr\n" + " nullptr, // tp_setattr\n" + " nullptr, // tp_compare\n" +-- +2.21.0 + diff --git a/changelog b/changelog deleted file mode 100644 index cd948dd..0000000 --- a/changelog +++ /dev/null @@ -1,757 +0,0 @@ -* Thu Feb 13 2025 Orion Poplawski - 9.2.6-26 -- Rebuild with hdf5 1.14.6 - -* Tue Jan 28 2025 Sandro Mani - 9.2.6-25 -- Rebuild for cgnslib built with scoped enums - -* Mon Jan 27 2025 Sandro Mani - 9.2.6-24 -- Rebuild (cgnslib) - -* Fri Jan 24 2025 Sandro Mani - 9.2.6-23 -- Rebuild (cgnslib) - -* Sun Jan 19 2025 Fedora Release Engineering - 9.2.6-22 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Fri Nov 08 2024 Sandro Mani - 9.2.6-21 -- Rebuild (gdal) - -* Thu Oct 31 2024 Christoph Junghans - 9.2.6-20 -- Add missing dep to mpi-devel packages - -* Fri Oct 25 2024 Orion Poplawski - 9.2.6-19 -- Rebuild for hdf5 1.14.5 - -* Tue Oct 08 2024 Orion Poplawski - 9.2.6-18 -- Add upstream patch to fix segmentation fault on import with Python 3.13 - (rhbz#2310520) - -* Sat Jul 20 2024 Fedora Release Engineering - 9.2.6-17 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Sat Jun 08 2024 Python Maint - 9.2.6-16 -- Rebuilt for Python 3.13 - -* Mon May 13 2024 Sandro Mani - 9.2.6-15 -- Rebuild (gdal) - -* Wed Apr 10 2024 Orion Poplawski - 9.2.6-14 -- Set Java source/target version to 8 (FTBFS bz#2272954) - -* Sat Feb 24 2024 David Abdurachmanov - 9.2.6-13 -- Reduce memory and ncpu usage during riscv64 builds - -* Wed Jan 24 2024 Orion Poplawski - 9.2.6-12 -- Drop mpi4py-mpich BR on i686 (bz#2259594) - -* Wed Jan 17 2024 Jonathan Wakely - 9.2.6-12 -- Rebuilt for Boost 1.83 - -* Wed Nov 15 2023 Sandro Mani - 9.2.6-11 -- Rebuild (gdal) - -* Thu Nov 02 2023 Philip Matura - 9.2.6-10 -- Move API docs to separate doc sub-package (bz#2247327) - -* Wed Oct 11 2023 Orion Poplawski - 9.2.6-9 -- Rebuild for openslide 4.0.0 - -* Sun Sep 17 2023 Orion Poplawski - 9.2.6-8 -- Use loops for mpi builds/intalls - -* Sun Sep 10 2023 Orion Poplawski - 9.2.6-7 -- Fix -devel deps on netcdf-*-devel - -* Sat Jul 22 2023 Fedora Release Engineering - 9.2.6-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Thu Jul 06 2023 Sandro Mani - 9.2.6-5 -- Rebuild (cgnslib) - -* Fri Jun 16 2023 Python Maint - 9.2.6-4 -- Rebuilt for Python 3.12 - -* Thu May 11 2023 Sandro Mani - 9.2.6-3 -- Rebuild (gdal) - -* Mon Feb 20 2023 Jonathan Wakely - 9.2.6-2 -- Rebuilt for Boost 1.81 - -* Sun Feb 19 2023 Orion Poplawski - 9.2.6-1 -- Update to 9.2.6 - -* Sat Jan 21 2023 Fedora Release Engineering - 9.2.5-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Mon Jan 09 2023 Orion Poplawski - 9.2.5-1 -- Update to 9.2.5 -- Use SPDX License tag - -* Sat Nov 12 2022 Sandro Mani - 9.1.0-18 -- Rebuild (gdal) - -* Thu Jul 28 2022 Orion Poplawski - 9.1.0-17 -- Remove all of vtkdata/Wrapping to keep vtk-data noarch - -* Thu Jul 28 2022 Mamoru TASAKA - 9.1.0-16 -- Make -data subpackage arch-dependent for now due to - java removal (bz#2104109) - -* Sat Jul 23 2022 Fedora Release Engineering - 9.1.0-15 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Sun Jul 10 2022 Orion Poplawski - 9.1.0-14 -- Drop java for i686 (bz#2104109) - -* Tue Jun 28 2022 Orion Poplawski - 9.1.0-13 -- Add patch to support netcdf 4.9.0 - -* Fri Jun 24 2022 Orion Poplawski - 9.1.0-12 -- Set VTK_PYTHON_OPTIONAL_LINK=OFF (bz#1979611) -- Link libvtkkissfft.so.1 against libm (bz#2100573) - -* Mon Jun 13 2022 Python Maint - 9.1.0-11 -- Rebuilt for Python 3.11 - -* Fri May 20 2022 Sandro Mani - 9.1.0-10 -- Rebuild for gdal-3.5.0 and/or openjpeg-2.5.0 - -* Wed May 04 2022 Thomas Rodgers - 9.1.0-9 -- Rebuilt for Boost 1.78 - -* Tue Mar 22 2022 Sandro Mani - 9.1.0-8 -- Rebuild for cgnslib-4.3.0 - -* Thu Mar 03 2022 Sandro Mani - 9.1.0-7 -- Rebuild for proj-9.0.0 - -* Thu Feb 10 2022 Orion Poplawski - 9.1.0-6 -- Rebuild for glew 2.2 - -* Sat Feb 05 2022 Jiri Vanek - 9.1.0-5 -- Rebuilt for java-17-openjdk as system jdk - -* Sat Jan 29 2022 Orion Poplawski - 9.1.0-4 -- Use export CC/CXX to set MPI compiler - -* Sat Jan 22 2022 Fedora Release Engineering - 9.1.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Thu Jan 20 2022 Orion Poplawski - 9.1.0-3 -- Use %%global to define __cc/__cxx - -* Fri Jan 07 2022 Orion Poplawski - 9.1.0-2 -- Make java-devel only be brought in by vtk-java-devel - -* Sun Nov 21 2021 Orion Poplawski - 9.1.0-1 -- Update to 9.1.0 - -* Thu Nov 11 2021 Sandro Mani - 9.0.3-4 -- Rebuild (gdal) - -* Wed Nov 03 2021 Björn Esser - 9.0.3-3 -- Rebuild (jsoncpp) - -* Sun Sep 26 2021 Orion Poplawski - 9.0.3-2 -- Cleanup rpath handling (bz#1902729) - -* Wed Sep 15 2021 Orion Poplawski - 9.0.3-1 -- Update to 9.0.3 -- Add upstream patch to fix Mayavi crash (bz#1966135) - -* Tue Aug 10 2021 Orion Poplawski - 9.0.2-6 -- Rebuild for hdf5 1.10.7/netcdf 4.8.0 - -* Tue Aug 10 2021 Orion Poplawski - 9.0.2-5 -- More rpath cleanup - -* Sat Aug 07 2021 Jonathan Wakely - 9.0.2-4 -- Rebuilt for Boost 1.76 - -* Fri Jul 23 2021 Fedora Release Engineering - 9.0.2-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Tue Jul 13 2021 Björn Esser - 9.0.2-2 -- Properly set BLA_VENDOR to FlexiBLAS for cmake >= 3.19 - -* Thu Jul 01 2021 Orion Poplawski - 9.0.2-1 -- Update to 9.0.2 - -* Fri Jun 04 2021 Python Maint - 9.0.1-9 -- Rebuilt for Python 3.10 - -* Fri May 21 2021 Sandro Mani - 9.0.1-8 -- Rebuild (gdal) - -* Thu May 20 2021 Richard Shaw - 9.0.1-7 -- Rebuild for gdal 3.3.0. - -* Fri May 07 2021 Sandro Mani - 9.0.1-6 -- Rebuild (gdal) - -* Fri Apr 02 2021 Orion Poplawski - 9.0.1-5 -- Make vtk-devel package require vtk-java - -* Sat Mar 13 2021 Orion Poplawski - 9.0.1-4 -- Add upstream patch for proj 5 support - -* Sun Mar 07 2021 Sandro Mani - 9.0.1-4 -- Rebuild (proj) - -* Mon Feb 15 2021 Orion Poplawski - 9.0.1-3 -- Bump python3-vtk-qt obsoletes - -* Mon Feb 08 2021 Pavel Raiskup - 9.0.1-2 -- rebuild for libpq ABI fix rhbz#1908268 - -* Sat Jan 30 2021 Orion Poplawski - 9.0.1-1 -- Update to 9.0.1 -- Disable OSMesa - conflicts with X support -- Build against Fedora gl2ps, libharu, utf8cpp -- Drop python3-vtk-qt packages -- No longer ship compiled examples -- Install jar file into /usr/share/java -- Fix JNI install location -- Drop Qt4 build option - -* Wed Jan 27 2021 Fedora Release Engineering - 8.2.0-26 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Thu Nov 5 20:45:48 CET 2020 Sandro Mani - 8.2.0-25 -- Rebuild (proj) - -* Thu Sep 17 2020 Orion Poplawski - 8.2.0-24 -- Add patch to fix build with Qt 5.15 - -* Thu Aug 27 2020 Iñaki Úcar - 8.2.0-23 -- https://fedoraproject.org/wiki/Changes/FlexiBLAS_as_BLAS/LAPACK_manager - -* Sun Aug 9 2020 Orion Poplawski - 8.2.0-22 -- Fix ExternalData in vtk-data (bz#1783622) - -* Tue Aug 4 2020 Orion Poplawski - 8.2.0-21 -- Use new cmake macros - -* Wed Jul 29 2020 Fedora Release Engineering - 8.2.0-20 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Fri Jul 24 2020 Jeff Law - 8.2.0-19 -- Use __cmake_in_source_build - -* Sat Jul 11 2020 Jiri Vanek - 8.2.0-18 -- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 - -* Thu Jun 25 2020 Orion Poplawski - 8.2.0-17 -- Rebuild for hdf5 1.10.6 - -* Sat Jun 20 2020 Orion Poplawski - 8.2.0-16 -- Drop _python_bytecompile_extra, python2 conditionals - -* Sat May 30 2020 Björn Esser - 8.2.0-15 -- Rebuild (jsoncpp) - -* Wed May 27 2020 Orion Poplawski - 8.2.0-14 -- Add patch to fix building with GCC 10 (bz#1800240) - -* Tue May 26 2020 Miro Hrončok - 8.2.0-14 -- Rebuilt for Python 3.9 - -* Fri Jan 31 2020 Fedora Release Engineering - 8.2.0-13 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Thu Nov 14 2019 Björn Esser - 8.2.0-12 -- Rebuild (jsoncpp) - -* Sat Nov 9 2019 Orion Poplawski - 8.2.0-11 -- Drop BR on sip-devel (python2) - -* Sun Sep 22 2019 Orion Poplawski - 8.2.0-10 -- Rebuild for double-conversion 3.1.5 - -* Mon Sep 09 2019 Orion Poplawski - 8.2.0-9 -- Rebuild for proj 6.2.0 -- Add patch and flags for proj 6 support - -* Tue Aug 20 2019 Orion Poplawski - 8.2.0-8 -- Add upstream patch to support Python 3.8 - -* Mon Aug 19 2019 Miro Hrončok - 8.2.0-7 -- Rebuilt for Python 3.8 - -* Wed Jul 31 2019 Orion Poplawski - 8.2.0-6 -- BR motif-devel instead of /usr/include/Xm (bugz#1731728) - -* Sat Jul 27 2019 Fedora Release Engineering - 8.2.0-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Wed Jul 03 2019 Björn Esser - 8.2.0-4 -- Rebuild (jsoncpp) - -* Thu Apr 18 2019 Orion Poplawski - 8.2.0-3 -- Provide starndard python 3.Y dist name (bugz#1700307) - -* Tue Apr 16 2019 Orion Poplawski - 8.2.0-2 -- Provide standard python 3 dist name (bugz#1700307) - -* Sat Mar 16 2019 Orion Poplawski - 8.2.0-1 -- Update to 8.2.0 -- TCL wrapping has been dropped upstream -- Build with system glew - -* Fri Feb 15 2019 Orion Poplawski - 8.1.1-3 -- Rebuild for openmpi 3.1.3 - -* Sun Feb 03 2019 Fedora Release Engineering - 8.1.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Fri Oct 26 2018 Orion Poplawski - 8.1.1-1 -- Update to 8.1.1 (bug #1460059) -- Use Qt 5 (bug #1319504) -- Use Python 3 for Fedora 30+ (bug #1549034) - -* Thu Sep 06 2018 Pavel Raiskup - 7.1.1-13 -- rebuild against libpq (rhbz#1618698, rhbz#1623764) - -* Sat Jul 14 2018 Fedora Release Engineering - 7.1.1-12 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Wed Mar 07 2018 Adam Williamson - 7.1.1-11 -- Rebuild to fix GCC 8 mis-compilation - See https://da.gd/YJVwk ("GCC 8 ABI change on x86_64") - -* Fri Feb 09 2018 Fedora Release Engineering - 7.1.1-10 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Tue Dec 26 2017 Björn Esser - 7.1.1-9 -- Rebuilt for jsoncpp.so.20 - -* Mon Dec 18 2017 Orion Poplawski - 7.1.1-8 -- Enable mysql and postgresql support -- Use mariadb BR for F28+ (Bug #1494054) - -* Fri Sep 01 2017 Björn Esser - 7.1.1-7 -- Rebuilt for jsoncpp-1.8.3 - -* Sat Aug 12 2017 Zbigniew Jędrzejewski-Szmek - 7.1.1-6 -- Python 2 binary packages renamed to python2-vtk and python2-vtk-qt - See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3 - -* Thu Aug 03 2017 Fedora Release Engineering - 7.1.1-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Thu Jul 27 2017 Fedora Release Engineering - 7.1.1-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Mon May 15 2017 Fedora Release Engineering - 7.1.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild - -* Tue May 9 2017 Orion Poplawski - 7.1.1-2 -- Enable tests on s390x - -* Mon May 8 2017 Orion Poplawski - 7.1.1-1 -- Update to 7.1.1 - -* Sat Feb 11 2017 Fedora Release Engineering - 7.1.0-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Tue Jan 3 2017 Dan Horák - 7.1.0-5 -- s390x needs increased Java heap size - -* Thu Dec 29 2016 Orion Poplawski - 7.1.0-4 -- Drop setting java heap size - -* Thu Dec 8 2016 Dan Horák - 7.1.0-3 -- Enable openmpi on s390(x) -- Add missing conditions for mpich/openmpi subpackages - -* Thu Dec 8 2016 Orion Poplawski - 7.1.0-2 -- Fix MPI library install location - -* Mon Dec 5 2016 Orion Poplawski - 7.1.0-1 -- Update to 7.1.0 -- Enable OSMesa -- Build MPI versions -- Use bundled glew - -* Wed Nov 2 2016 Orion Poplawski - 6.3.0-12 -- Rebuild for R openblas changes - -* Mon Oct 03 2016 Björn Esser - 6.3.0-11 -- Rebuilt for libjsoncpp.so.11 - -* Thu Jul 28 2016 Than Ngo - 6.3.0-10 -- %%check: make non-fatal as temporary workaround for build on s390x - -* Tue Jul 19 2016 Fedora Release Engineering - 6.3.0-9 -- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages - -* Wed Jun 29 2016 Orion Poplawski - 6.3.0-8 -- Rebuild for hdf5 1.8.17 - -* Fri Mar 25 2016 Björn Esser - 6.3.0-7 -- Rebuilt for libjsoncpp.so.1 - -* Mon Feb 8 2016 Orion Poplawski - 6.3.0-6 -- Add patch for gcc 6 support - -* Fri Feb 05 2016 Fedora Release Engineering - 6.3.0-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Fri Jan 22 2016 Orion Poplawski - 6.3.0-4 -- Rebuild for netcdf 4.4.0 - -* Sat Jan 16 2016 Jonathan Wakely - 6.3.0-3 -- Rebuilt for Boost 1.60 - -* Wed Oct 21 2015 Orion Poplawski - 6.3.0-2 -- Note bundled libraries - -* Tue Sep 15 2015 Orion Poplawski - 6.3.0-1 -- Update to 6.3.0 - -* Thu Aug 27 2015 Jonathan Wakely - 6.2.0-10 -- Rebuilt for Boost 1.59 - -* Fri Aug 21 2015 Orion Poplawski - 6.2.0-9 -- Note bundled kwsys, remove unused kwsys files - -* Wed Jul 29 2015 Fedora Release Engineering - 6.2.0-8 -- Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159 - -* Wed Jul 22 2015 David Tardon - 6.2.0-7 -- rebuild for Boost 1.58 - -* Tue Jul 7 2015 Orion Poplawski - 6.2.0-6 -- Drop glext patch, no longer needed - -* Fri Jun 19 2015 Fedora Release Engineering - 6.2.0-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Sat May 23 2015 Orion Poplawski - 6.2.0-4 -- Add requires netcdf-cxx-devel to vtk-devel (bug #1224512) - -* Sun May 17 2015 Orion Poplawski - 6.2.0-3 -- Rebuild for hdf5 1.8.15 - -* Sat May 02 2015 Kalev Lember - 6.2.0-2 -- Rebuilt for GCC 5 C++11 ABI change - -* Wed Mar 18 2015 Orion Poplawski - 6.2.0-1 -- Update to 6.2.0 -- Remove type, system, install, and netcdf patches applied upstream -- Integrate and replace vtkdata -- Build and run tests again -- Generate testing.list based on executable name - -* Thu Mar 05 2015 Orion Poplawski - 6.1.0-26 -- Add needed vtk-*-devel requires to vtk-devel (bug #1199310) - -* Wed Mar 04 2015 Orion Poplawski - 6.1.0-25 -- Rebuild for jsoncpp - -* Wed Feb 04 2015 Petr Machata - 6.1.0-24 -- Bump for rebuild. - -* Tue Feb 3 2015 Orion Poplawski - 6.1.0-23 -- Add patch to fix tcl library loading - -* Mon Jan 26 2015 Petr Machata - 6.1.0-22 -- Rebuild for boost 1.57.0 - -* Mon Jan 19 2015 François Cami - 6.1.0-21 -- Switch to non-explicit arch requires for now (bugs #1183210 #1183530) - -* Sat Jan 17 2015 François Cami - 6.1.0-20 -- Add jsoncpp-devel and python2-devel to vtk-devel Requires (bug #1183210) - -* Thu Jan 08 2015 Orion Poplawski - 6.1.0-19 -- Rebuild for hdf5 1.8.14 -- Add patch to fix compilation error - -* Thu Nov 20 2014 Dan Horák - 6.1.0-18 -- Don't override Java memory settings on s390 (related to bug #1115920) - -* Wed Nov 19 2014 Orion Poplawski - 6.1.0-17 -- Add patch to fix compilation with mesa 10.4 (bug #1138466) - -* Fri Oct 31 2014 Orion Poplawski - 6.1.0-16 -- No longer need cmake28 on RHEL6 - -* Thu Sep 4 2014 Orion Poplawski - 6.1.0-15 -- Increase java heap space for builds (bug #1115920) - -* Mon Aug 18 2014 Fedora Release Engineering - 6.1.0-14 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Tue Jun 10 2014 Orion Poplawski - 6.1.0-13 -- Rebuild for hdf 1.8.13 - -* Sun Jun 08 2014 Fedora Release Engineering - 6.1.0-12 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Thu Jun 5 2014 Orion Poplawski - 6.1.0-11 -- Add requires on blas-devel and lapack-devel to vtk-devel (bug #1105004) - -* Tue May 27 2014 Orion Poplawski - 6.1.0-10 -- Rebuild for Tcl 8.6 - -* Fri May 23 2014 Petr Machata - 6.1.0-9 -- Rebuild for boost 1.55.0 - -* Wed May 21 2014 Jaroslav Škarvada - 6.1.0-8 -- Rebuilt for https://fedoraproject.org/wiki/Changes/f21tcl86 - -* Tue May 6 2014 Tom Callaway - 6.1.0-7 -- rebuild against R 3.1.0 (without bundled blas/lapack) - -* Wed Mar 26 2014 Orion Poplawski - 6.1.0-5 -- Add Requires: qtwebkit-devel and hdf5-devel to vtk-devel (bug #1080781) - -* Tue Jan 28 2014 Orion Poplawski - 6.1.0-4 -- Really fix requires freetype-devel - -* Mon Jan 27 2014 Orion Poplawski - 6.1.0-3 -- Fix requires freetype-devel - -* Sun Jan 26 2014 Orion Poplawski - 6.1.0-2 -- Add Requires: libfreetype-devel; libxml2-devel to vtk-devel (bug #1057924) - -* Thu Jan 23 2014 Orion Poplawski - 6.1.0-1 -- Update to 6.1.0 -- Rebase patches, drop vtkpython patch -- Disable BUILD_TESTING for now until we can provide test data - -* Fri Dec 27 2013 Orion Poplawski - 6.0.0-10 -- Add patch to use system netcdf - -* Sun Dec 22 2013 Kevin Fenzi 6.0.0-9 -- Add BuildRequires on blas-devel and lapack-devel - -* Sun Dec 22 2013 François Cami - 6.0.0-8 -* Rebuild for rawhide. - -* Sun Aug 04 2013 Fedora Release Engineering - 6.0.0-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Tue Jul 30 2013 Petr Machata - 6.0.0-6 -- Rebuild for boost 1.54.0 - -* Mon Jul 29 2013 Orion Poplawski - 6.0.0-5 -- Enable VTK_WRAP_PYTHON_SIP - -* Fri Jul 26 2013 Orion Poplawski - 6.0.0-4 -- Add patch to install vtkpython - -* Wed Jul 17 2013 Petr Pisar - 6.0.0-3 -- Perl 5.18 rebuild - -* Mon Jul 15 2013 Orion Poplawski - 6.0.0-2 -- Install vtkMakeInstantiator files for gdcm build - -* Fri Jul 12 2013 Orion Poplawski - 6.0.0-1 -- Add BR on R-devel - -* Thu Jun 27 2013 Orion Poplawski - 6.0.0-1 -- Update to 6.0.0 - -* Thu May 16 2013 Orion Poplawski - 5.10.1-5 -- Rebuild for hdf5 1.8.11 - -* Fri Feb 15 2013 Fedora Release Engineering - 5.10.1-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild - -* Mon Jan 21 2013 Adam Tkac - 5.10.1-3 -- rebuild due to "jpeg8-ABI" feature drop - -* Mon Dec 03 2012 Orion Poplawski - 5.10.1-2 -- Rebuild for hdf5 1.8.10 -- Change doc handling - -* Thu Nov 1 2012 Orion Poplawski - 5.10.1-1 -- Update to 5.10.1 - -* Sun Jul 22 2012 Fedora Release Engineering - 5.10.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Thu May 24 2012 Orion Poplawski - 5.10.0-2 -- Add patch to add soname to libvtkNetCDF_cxx - -* Tue May 15 2012 Orion Poplawski - 5.10.0-1 -- Update to 5.10.0 - -* Tue May 15 2012 Jonathan G. Underwood - 5.8.0-6 -- Add cmake28 usage when building for EL6 -- Disable -java build on PPC64 as it fails to build - -* Tue Feb 28 2012 Fedora Release Engineering - 5.8.0-5 -- Rebuilt for c++ ABI breakage - -* Sun Jan 8 2012 Orion Poplawski - 5.8.0-4 -- Rebuild with gcc 4.7 - -* Fri Nov 18 2011 Orion Poplawski - 5.8.0-3 -- Rebuild for hdf5 1.8.8, add explicit requires - -* Tue Nov 1 2011 Orion Poplawski - 5.8.0-2 -- Keep libraries in %%{_libdir}/vtk, use ld.so.conf.d - -* Fri Oct 7 2011 Orion Poplawski - 5.8.0-1 -- Update to 5.8.0 -- Drop version from directory names -- Use VTK_PYTHON_SETUP_ARGS instead of patch to set python install dir -- Drop several patches fixed upstream -- Remove rpaths from all hand installed binaries (Bug 744437) -- Don't link against OSMesa (Bug 744434) - -* Thu Jun 23 2011 Orion Poplawski - 5.6.1-10 -- Add BR qtwebkit-devel, fixes FTBS bug 715770 - -* Thu May 19 2011 Orion Poplawski - 5.6.1-9 -- Update soversion patch to add soversion to libvtkNetCDF.so - -* Mon Mar 28 2011 Orion Poplawski - 5.6.1-8 -- Rebuild for new mysql - -* Thu Mar 17 2011 Orion Poplawski - 5.6.1-7 -- Add needed requires to vtk-devel - -* Wed Mar 16 2011 Orion Poplawski - 5.6.1-6 -- Turn on boost, mysql, postgres, ogg theora, and text analysis support, - bug 688275. - -* Wed Mar 16 2011 Marek Kasik - 5.6.1-5 -- Add backslashes to VTK_INSTALL_LIB_DIR and -- VTK_INSTALL_INCLUDE_DIR (#687895) - -* Tue Mar 15 2011 Orion Poplawski - 5.6.1-4 -- Set VTK_INSTALL_LIB_DIR, fix bug 687895 - -* Fri Feb 18 2011 Orion Poplawski - 5.6.1-3 -- Add patch to support gcc 4.6 -- Add patch to make using system libraries easier -- Update pythondestdir patch to use --prefix and --root -- Use system gl2ps and libxml2 -- Use standard cmake build macro, out of tree builds -- Add patch from upstream to add sonames to libCosmo and libVPIC (bug #622840) - -* Mon Feb 07 2011 Fedora Release Engineering - 5.6.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - -* Tue Dec 7 2010 Orion Poplawski - 5.6.1-1 -- Update to 5.6.1 -- Enable qt4 support, drop qt3 support - -* Wed Oct 20 2010 Adam Jackson 5.6.0-37 -- Rebuild for new libOSMesa soname - -* Sat Jul 31 2010 David Malcolm - 5.6.0-36 -- add python 2.7 compat patch - -* Thu Jul 22 2010 David Malcolm - 5.6.0-35 -- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild - -* Mon Jul 5 2010 Axel Thimm - 5.6.0-34 -- Update to 5.6.0. - -* Sat Jun 6 2009 Axel Thimm - 5.4.2-30 -- Update to 5.4.2. - -* Thu Mar 12 2009 Orion Poplawski - 5.2.1-29 -- Update to 5.2.1 - -* Fri Mar 06 2009 Jesse Keating - 5.2.0-28 -- Remove chmod on examples .so files, none are built. This needs - more attention. - -* Sun Oct 5 2008 Axel Thimm - 5.2.0-26 -- Update to 5.2.0. - -* Wed Oct 1 2008 Orion Poplawski - 5.0.2-25 -- Fix patch fuzz - -* Mon Aug 25 2008 Axel Thimm - 5.0.4-24 -- Change java build dependencies from java-devel to gcj. - -* Sun Aug 24 2008 Axel Thimm - 5.0.4-23 -- %%check || : does not work anymore. -- enable java by default. - -* Wed May 21 2008 Tom "spot" Callaway - 5.0.4-22 -- fix license tag - -* Sat Apr 12 2008 Axel Thimm - 5.0.4-21 -- Fixes for gcc 4.3 by Orion Poplawski. - -* Sat Apr 5 2008 Axel Thimm - 5.0.4-20 -- Change BR to qt-devel to qt3-devel. - -* Sat Feb 23 2008 Axel Thimm - 5.0.4-19 -- Update to 5.0.4. - -* Mon May 28 2007 Axel Thimm - 5.0.3-18 -- Move headers to %%{_includedir}/vtk. -- Remove executable bit from sources. - -* Mon Apr 16 2007 Axel Thimm - 5.0.3-17 -- Make java build conditional. -- Add ldconfig %%post/%%postun for java/qt subpackages. - -* Sun Apr 15 2007 Axel Thimm - 5.0.3-16 -- Remove %%ghosting pyc/pyo. - -* Wed Apr 04 2007 Paulo Roma - 5.0.3-15 -- Update to 5.0.4. -- Added support for qt4 plugin. - -* Wed Feb 7 2007 Orion Poplawski - 5.0.2-14 -- Enable Java, Qt, GL2PS, OSMESA - -* Mon Sep 11 2006 Axel Thimm - 5.0.2-13 -- Update to 5.0.2. - -* Sun Aug 6 2006 Axel Thimm - 5.0.1-12 -- cmake needs to be >= 2.0.4. - -* Fri Aug 4 2006 Axel Thimm - 5.0.1-11 -- Fix some python issues including pyo management. - -* Sun Jul 23 2006 Axel Thimm - 5.0.1-10 -- Embed feedback from bug 199405 comment 5. -- Fix some Group entries. -- Remove redundant dependencies. -- Use system libs. -- Comment specfile more. -- Change buildroot handling with CMAKE_INSTALL_PREFIX. -- Enable qt designer plugin. - -* Wed Jul 19 2006 Axel Thimm - 5.0.1-7 -- Fix some permissions for rpmlint and debuginfo. - -* Sun Jul 16 2006 Axel Thimm - 5.0.1-7 -- Remove rpath and some further rpmlint warnings. - -* Thu Jul 13 2006 Axel Thimm - 5.0.1-6 -- Update to 5.0.1. - -* Wed May 31 2006 Axel Thimm -- Update to 5.0. - -* Mon Apr 05 2004 Intrinsic Spin 2.mr -- built on a machine with a stock libGL.so - -* Sun Apr 04 2004 Intrinsic Spin -- little cleanups -- Built for FC1 - -* Sun Jan 11 2004 Intrinsic Spin -- Built against a reasonably good (according to dashboard) CVS version so-as - to get GL2PS support. -- Rearranged. Cleaned up. Added some comments. - -* Sat Jan 10 2004 Intrinsic Spin -- Blatently stole this spec file for my own nefarious purposes. -- Removed Java (for now). Merged the Python and Tcl stuff into - the main rpm. - -* Fri Dec 05 2003 Fabrice Bellet -- (See Fabrice's RPMs for any more comments --Spin) diff --git a/sources b/sources index be5d56c..2538b0d 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (VTK-9.5.2.tar.gz) = fc8157a89fa603a7f7fce356e2f638ae69e0ea629a507458bdbb173daf511c61e39a1f0d7201b196a5b3a7ffa7e3e821398b62521faadf85edb1119a1e8b8e8e -SHA512 (VTKData-9.5.2.tar.gz) = 1be895bed613ed0f0ace0ba5e138afacc3d61b57e437299b3aecf6beff702ad1a2d02036fd147853bbbcb6a1f9d20a51831c0263fdc5b8e62ece9a6f8f7d410e +SHA512 (VTK-8.2.0.tar.gz) = 521bd4dabedbc24b0e80a314a34ecd7554b04af28a7973245e3a9cf99a09b995d1b8ac42305c8e53369f226a0a6da3cdb29105ba2c90b46492736ef717760286 +SHA512 (VTKData-8.2.0.tar.gz) = 517d0f6dfdb0c61f59df933f06d3a28c8a48ea684aaff311456213fe493e2a20128886144325fc4edfa376b2d375a2dae6c60ad6e3d5d2f4a7b0ac1d8545c87b diff --git a/vtk-chobo-cstdint.patch b/vtk-chobo-cstdint.patch deleted file mode 100644 index 162259e..0000000 --- a/vtk-chobo-cstdint.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -up VTK-9.3.1/ThirdParty/diy2/vtkdiy2/include/vtkdiy2/chobo/small_vector.hpp.cstdint VTK-9.3.1/ThirdParty/diy2/vtkdiy2/include/vtkdiy2/chobo/small_vector.hpp ---- VTK-9.3.1/ThirdParty/diy2/vtkdiy2/include/vtkdiy2/chobo/small_vector.hpp.cstdint 2024-06-28 10:00:10.000000000 -0600 -+++ VTK-9.3.1/ThirdParty/diy2/vtkdiy2/include/vtkdiy2/chobo/small_vector.hpp 2025-02-17 17:08:44.231541639 -0700 -@@ -138,6 +138,7 @@ - - #include - #include -+#include - #include - - #define CHOBO_SMALL_VECTOR_ERROR_HANDLING_NONE 0 -diff -up VTK-9.3.1/ThirdParty/vtkm/vtkvtkm/vtk-m/vtkm/thirdparty/diy/vtkmdiy/include/vtkmdiy/thirdparty/chobo/small_vector.hpp.cstdint VTK-9.3.1/ThirdParty/vtkm/vtkvtkm/vtk-m/vtkm/thirdparty/diy/vtkmdiy/include/vtkmdiy/thirdparty/chobo/small_vector.hpp ---- VTK-9.3.1/ThirdParty/vtkm/vtkvtkm/vtk-m/vtkm/thirdparty/diy/vtkmdiy/include/vtkmdiy/thirdparty/chobo/small_vector.hpp.cstdint 2024-06-28 10:00:10.000000000 -0600 -+++ VTK-9.3.1/ThirdParty/vtkm/vtkvtkm/vtk-m/vtkm/thirdparty/diy/vtkmdiy/include/vtkmdiy/thirdparty/chobo/small_vector.hpp 2025-02-17 17:08:27.992495226 -0700 -@@ -138,6 +138,7 @@ - - #include - #include -+#include - #include - - #define CHOBO_SMALL_VECTOR_ERROR_HANDLING_NONE 0 diff --git a/vtk-gcc10.patch b/vtk-gcc10.patch new file mode 100644 index 0000000..27b15cd --- /dev/null +++ b/vtk-gcc10.patch @@ -0,0 +1,32 @@ +diff -up VTK-8.2.0/ThirdParty/exodusII/vtkexodusII/src/ex_create_par.c.gcc10 VTK-8.2.0/ThirdParty/exodusII/vtkexodusII/src/ex_create_par.c +--- VTK-8.2.0/ThirdParty/exodusII/vtkexodusII/src/ex_create_par.c.gcc10 2019-01-30 10:15:13.000000000 -0700 ++++ VTK-8.2.0/ThirdParty/exodusII/vtkexodusII/src/ex_create_par.c 2020-05-08 21:38:46.401363001 -0600 +@@ -614,5 +614,5 @@ int ex_create_par_int(const char *path, + * Prevent warning in some versions of ranlib(1) because the object + * file has no symbols. + */ +-const char exodus_unused_symbol_dummy_1; ++const char exodus_unused_symbol_dummy_ex_create_par; + #endif +diff -up VTK-8.2.0/ThirdParty/exodusII/vtkexodusII/src/ex_open_par.c.gcc10 VTK-8.2.0/ThirdParty/exodusII/vtkexodusII/src/ex_open_par.c +--- VTK-8.2.0/ThirdParty/exodusII/vtkexodusII/src/ex_open_par.c.gcc10 2019-01-30 10:15:13.000000000 -0700 ++++ VTK-8.2.0/ThirdParty/exodusII/vtkexodusII/src/ex_open_par.c 2020-05-08 21:38:46.402363007 -0600 +@@ -474,5 +474,5 @@ int ex_open_par_int(const char *path, in + * Prevent warning in some versions of ranlib(1) because the object + * file has no symbols. + */ +-const char exodus_unused_symbol_dummy_1; ++const char exodus_unused_symbol_dummy_ex_open_par; + #endif +diff -up VTK-8.2.0/CMake/VTKGenerateExportHeader.cmake.gcc10 VTK-8.2.0/CMake/VTKGenerateExportHeader.cmake +--- VTK-8.2.0/CMake/VTKGenerateExportHeader.cmake.gcc10 2019-01-30 10:15:13.000000000 -0700 ++++ VTK-8.2.0/CMake/VTKGenerateExportHeader.cmake 2020-05-26 21:07:24.625840251 -0600 +@@ -174,7 +174,7 @@ macro(_vtk_test_compiler_hidden_visibili + execute_process(COMMAND ${CMAKE_C_COMPILER} --version + OUTPUT_VARIABLE _gcc_version_info + ERROR_VARIABLE _gcc_version_info) +- string(REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]*" ++ string(REGEX MATCH "[1-9][0-9]*\\.[0-9]+\\.[0-9]+" + _gcc_version "${_gcc_version_info}") + # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the + # patch level, handle this here: diff --git a/vtk-libharu.patch b/vtk-libharu.patch deleted file mode 100644 index 7100aa3..0000000 --- a/vtk-libharu.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/ThirdParty/libharu/CMakeLists.txt b/ThirdParty/libharu/CMakeLists.txt -index b18b7a1..3793f4b 100644 ---- a/ThirdParty/libharu/CMakeLists.txt -+++ b/ThirdParty/libharu/CMakeLists.txt -@@ -5,7 +5,7 @@ vtk_module_third_party( - STANDARD_INCLUDE_DIRS - EXTERNAL - PACKAGE LibHaru -- VERSION 2.4.0 -+ VERSION 2.3.0 - TARGETS LibHaru::LibHaru - STANDARD_INCLUDE_DIRS) - diff --git a/vtk-ppc64-no-always-inline.patch b/vtk-ppc64-no-always-inline.patch deleted file mode 100644 index 9705931..0000000 --- a/vtk-ppc64-no-always-inline.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/Common/Core/vtkDataArrayMeta.h b/Common/Core/vtkDataArrayMeta.h -index 602305d3ed..8c37a96891 100644 ---- a/Common/Core/vtkDataArrayMeta.h -+++ b/Common/Core/vtkDataArrayMeta.h -@@ -32,7 +32,7 @@ - #endif - - #if (defined(VTK_ALWAYS_OPTIMIZE_ARRAY_ITERATORS) || !defined(VTK_DEBUG_RANGE_ITERATORS)) && \ -- !defined(VTK_COMPILER_MSVC) -+ !defined(VTK_COMPILER_MSVC) && !defined(__PPC64__) - #define VTK_ITER_INLINE VTK_ALWAYS_INLINE - #define VTK_ITER_ASSUME VTK_ASSUME_NO_ASSERT - #define VTK_ITER_OPTIMIZE_START VTK_ALWAYS_OPTIMIZE_START diff --git a/vtk-proj6_compat.patch b/vtk-proj6_compat.patch new file mode 100644 index 0000000..95e4a6d --- /dev/null +++ b/vtk-proj6_compat.patch @@ -0,0 +1,264 @@ +--- a/CMake/FindLibPROJ.cmake ++++ b/CMake/FindLibPROJ.cmake +@@ -30,7 +30,7 @@ if ( NOT LibPROJ_INCLUDE_DIR OR NOT LibP + ) + + find_path( LibPROJ_INCLUDE_DIR +- NAMES proj_api.h ++ NAMES proj_api.h proj.h + HINTS + ${_LibPROJ_DIR} + ${_LibPROJ_DIR}/include +--- a/Geovis/Core/vtkGeoProjection.cxx ++++ b/Geovis/Core/vtkGeoProjection.cxx +@@ -72,6 +72,9 @@ public: + } + + std::map< std::string, std::string > OptionalParameters; ++#if PROJ_VERSION_MAJOR >= 5 ++ PJ_PROJ_INFO ProjInfo; ++#endif + }; + + //----------------------------------------------------------------------------- +@@ -80,7 +83,7 @@ int vtkGeoProjection::GetNumberOfProject + if ( vtkGeoProjectionNumProj < 0 ) + { + vtkGeoProjectionNumProj = 0; +- for ( const PJ_LIST* pj = pj_get_list_ref(); pj && pj->id; ++ pj ) ++ for ( const PJ_LIST* pj = proj_list_operations(); pj && pj->id; ++ pj ) + ++ vtkGeoProjectionNumProj; + } + return vtkGeoProjectionNumProj; +@@ -91,7 +94,7 @@ const char* vtkGeoProjection::GetProject + if ( projection < 0 || projection >= vtkGeoProjection::GetNumberOfProjections() ) + return nullptr; + +- return pj_get_list_ref()[projection].id; ++ return proj_list_operations()[projection].id; + } + //----------------------------------------------------------------------------- + const char* vtkGeoProjection::GetProjectionDescription( int projection ) +@@ -99,7 +102,7 @@ const char* vtkGeoProjection::GetProject + if ( projection < 0 || projection >= vtkGeoProjection::GetNumberOfProjections() ) + return nullptr; + +- return pj_get_list_ref()[projection].descr[0]; ++ return proj_list_operations()[projection].descr[0]; + } + //----------------------------------------------------------------------------- + vtkGeoProjection::vtkGeoProjection() +@@ -144,7 +147,7 @@ void vtkGeoProjection::PrintSelf( ostrea + int vtkGeoProjection::GetIndex() + { + int i = 0; +- for ( const PJ_LIST* proj = pj_get_list_ref(); proj && proj->id; ++ proj, ++ i ) ++ for ( const PJ_LIST* proj = proj_list_operations(); proj && proj->id; ++ proj, ++ i ) + { + if ( ! strcmp( proj->id, this->Name ) ) + { +@@ -161,7 +164,11 @@ const char* vtkGeoProjection::GetDescrip + { + return nullptr; + } ++#if PROJ_VERSION_MAJOR >= 5 ++ return this->Internals->ProjInfo.description; ++#else + return this->Projection->descr; ++#endif + } + //----------------------------------------------------------------------------- + projPJ vtkGeoProjection::GetProjection() +@@ -232,6 +239,9 @@ int vtkGeoProjection::UpdateProjection() + this->ProjectionMTime = this->GetMTime(); + if ( this->Projection ) + { ++#if PROJ_VERSION_MAJOR >= 5 ++ this->Internals->ProjInfo = proj_pj_info(this->Projection); ++#endif + return 0; + } + return 1; +--- a/Geovis/Core/vtkGeoTransform.cxx ++++ b/Geovis/Core/vtkGeoTransform.cxx +@@ -167,9 +167,17 @@ void vtkGeoTransform::InternalTransformP + double* coord = x; + for ( vtkIdType i = 0; i < numPts; ++ i ) + { ++#if PROJ_VERSION_MAJOR >= 5 ++ xy.x = coord[0]; xy.y = coord[1]; ++#else + xy.u = coord[0]; xy.v = coord[1]; ++#endif + lp = pj_inv( xy, src ); ++#if PROJ_VERSION_MAJOR >= 5 ++ coord[0] = lp.lam; coord[1] = lp.phi; ++#else + coord[0] = lp.u; coord[1] = lp.v; ++#endif + coord += stride; + } + } +@@ -191,9 +199,17 @@ void vtkGeoTransform::InternalTransformP + double* coord = x; + for ( vtkIdType i = 0; i < numPts; ++ i ) + { ++#if PROJ_VERSION_MAJOR >= 5 ++ lp.lam = coord[0]; lp.phi = coord[1]; ++#else + lp.u = coord[0]; lp.v = coord[1]; ++#endif + xy = pj_fwd( lp, dst ); ++#if PROJ_VERSION_MAJOR >= 5 ++ coord[0] = xy.x; coord[1] = xy.y; ++#else + coord[0] = xy.u; coord[1] = xy.v; ++#endif + coord += stride; + } + } +--- a/ThirdParty/libproj/vtk_libproj.h.in ++++ b/ThirdParty/libproj/vtk_libproj.h.in +@@ -15,10 +15,20 @@ + #ifndef vtk_libproj_h + #define vtk_libproj_h + ++#define VTK_LibPROJ_MAJOR_VERSION @LibPROJ_MAJOR_VERSION@ ++ + /* Use the libproj library configured for VTK. */ + #cmakedefine VTK_USE_SYSTEM_LIBPROJ + #ifdef VTK_USE_SYSTEM_LIBPROJ +-# include ++# if VTK_LibPROJ_MAJOR_VERSION >= 5 ++# include ++# endif ++# if VTK_LibPROJ_MAJOR_VERSION < 6 ++# include ++# endif ++# if VTK_LibPROJ_MAJOR_VERSION >= 6 ++# define ACCEPT_USE_OF_DEPRECATED_PROJ_API_H 1 ++# endif + # include + # include + #else +--- VTK-8.2.0/CMake/FindLibPROJ.cmake 2019-09-11 22:13:29.493741215 -0600 ++++ vtk/CMake/FindLibPROJ.cmake 2019-09-11 19:56:57.465802610 -0600 +@@ -1,55 +1,67 @@ +-# Find LibPROJ library and header file +-# Sets +-# LibPROJ_FOUND to 0 or 1 depending on the result +-# LibPROJ_INCLUDE_DIR to directories required for using libproj4 +-# LibPROJ_LIBRARIES to libproj4 and any dependent libraries +-# If LibPROJ_REQUIRED is defined, then a fatal error message will be generated if libproj4 is not found +- +-if ( NOT LibPROJ_INCLUDE_DIR OR NOT LibPROJ_LIBRARIES OR NOT LibPROJ_FOUND ) ++find_path(LibPROJ_INCLUDE_DIR ++ NAMES proj_api.h proj.h ++ DOC "libproj include directories") ++mark_as_advanced(LibPROJ_INCLUDE_DIR) + +- if ( $ENV{LibPROJ_DIR} ) +- file( TO_CMAKE_PATH "$ENV{LibPROJ_DIR}" _LibPROJ_DIR ) ++find_library(LibPROJ_LIBRARY_RELEASE ++ NAMES proj ++ DOC "libproj release library") ++mark_as_advanced(LibPROJ_LIBRARY_RELEASE) ++ ++find_library(LibPROJ_LIBRARY_DEBUG ++ NAMES projd ++ DOC "libproj debug library") ++mark_as_advanced(LibPROJ_LIBRARY_DEBUG) ++ ++include(SelectLibraryConfigurations) ++select_library_configurations(LibPROJ) ++ ++if (LibPROJ_INCLUDE_DIR) ++ if (EXISTS "${LibPROJ_INCLUDE_DIR}/proj.h") ++ file(STRINGS "${LibPROJ_INCLUDE_DIR}/proj.h" _libproj_version_lines REGEX "#define[ \t]+PROJ_VERSION_(MAJOR|MINOR|PATCH)") ++ string(REGEX REPLACE ".*PROJ_VERSION_MAJOR *\([0-9]*\).*" "\\1" _libproj_version_major "${_libproj_version_lines}") ++ string(REGEX REPLACE ".*PROJ_VERSION_MINOR *\([0-9]*\).*" "\\1" _libproj_version_minor "${_libproj_version_lines}") ++ string(REGEX REPLACE ".*PROJ_VERSION_PATCH *\([0-9]*\).*" "\\1" _libproj_version_patch "${_libproj_version_lines}") ++ else () ++ file(STRINGS "${LibPROJ_INCLUDE_DIR}/proj_api.h" _libproj_version_lines REGEX "#define[ \t]+PJ_VERSION") ++ string(REGEX REPLACE ".*PJ_VERSION *\([0-9]*\).*" "\\1" _libproj_version "${_libproj_version_lines}") ++ math(EXPR _libproj_version_major "${_libproj_version} / 100") ++ math(EXPR _libproj_version_minor "(${_libproj_version} % 100) / 10") ++ math(EXPR _libproj_version_patch "${_libproj_version} % 10") + endif () +- +- set(LibPROJ_LIBRARY_SEARCH_PATHS +- ${_LibPROJ_DIR} +- ${_LibPROJ_DIR}/lib64 +- ${_LibPROJ_DIR}/lib +- ) +- +- find_library( LibPROJ_LIBRARY_RELEASE +- NAMES proj +- HINTS +- ${LibPROJ_LIBRARY_SEARCH_PATHS} +- ) +- +- find_library( LibPROJ_LIBRARY_DEBUG +- NAMES projd +- PATHS +- ${LibPROJ_LIBRARY_SEARCH_PATHS} +- ) +- +- find_path( LibPROJ_INCLUDE_DIR +- NAMES proj_api.h proj.h +- HINTS +- ${_LibPROJ_DIR} +- ${_LibPROJ_DIR}/include +- ) +- +- include(SelectLibraryConfigurations) +- select_library_configurations(LibPROJ) +- +- include(FindPackageHandleStandardArgs) +- find_package_handle_standard_args(LibPROJ +- REQUIRED_VARS LibPROJ_LIBRARY LibPROJ_INCLUDE_DIR) +- +- if(LibPROJ_FOUND) +- set(LibPROJ_INCLUDE_DIRS ${LibPROJ_INCLUDE_DIR}) +- +- if(NOT LibPROJ_LIBRARIES) +- set(LibPROJ_LIBRARIES ${LibPROJ_LIBRARY}) +- endif() +- endif() ++ set(LibPROJ_VERSION "${_libproj_version_major}.${_libproj_version_minor}.${_libproj_version_patch}") ++ set(LibPROJ_MAJOR_VERSION "${_libproj_version_major}") ++ unset(_libproj_version_major) ++ unset(_libproj_version_minor) ++ unset(_libproj_version_patch) ++ unset(_libproj_version) ++ unset(_libproj_version_lines) + endif () + +-mark_as_advanced(LibPROJ_INCLUDE_DIR) ++include(FindPackageHandleStandardArgs) ++find_package_handle_standard_args(LibPROJ ++ REQUIRED_VARS LibPROJ_LIBRARY LibPROJ_INCLUDE_DIR ++ VERSION_VAR LibPROJ_VERSION) ++ ++if (LibPROJ_FOUND) ++ set(LibPROJ_INCLUDE_DIRS "${LibPROJ_INCLUDE_DIR}") ++ set(LibPROJ_LIBRARIES "${LibPROJ_LIBRARY}") ++ ++ if (NOT TARGET LibPROJ::LibPROJ) ++ add_library(LibPROJ::LibPROJ UNKNOWN IMPORTED) ++ set_target_properties(LibPROJ::LibPROJ PROPERTIES ++ INTERFACE_INCLUDE_DIRECTORIES "${LibPROJ_INCLUDE_DIR}") ++ if (LibPROJ_LIBRARY_RELEASE) ++ set_property(TARGET LibPROJ::LibPROJ APPEND PROPERTY ++ IMPORTED_CONFIGURATIONS RELEASE) ++ set_target_properties(LibPROJ::LibPROJ PROPERTIES ++ IMPORTED_LOCATION_RELEASE "${LibPROJ_LIBRARY_RELEASE}") ++ endif () ++ if (LibPROJ_LIBRARY_DEBUG) ++ set_property(TARGET LibPROJ::LibPROJ APPEND PROPERTY ++ IMPORTED_CONFIGURATIONS DEBUG) ++ set_target_properties(LibPROJ::LibPROJ PROPERTIES ++ IMPORTED_LOCATION_DEBUG "${LibPROJ_LIBRARY_DEBUG}") ++ endif () ++ endif () ++endif () diff --git a/vtk-tk9.patch b/vtk-tk9.patch deleted file mode 100644 index 895669f..0000000 --- a/vtk-tk9.patch +++ /dev/null @@ -1,489 +0,0 @@ -commit b7c22497712be6751fbefe155533ae34d5e381f5 -Author: Spiros Tsalikis -Date: Thu May 22 12:30:19 2025 -0400 - - Tcl/Tk: Support version 9.0.0 - -diff --git a/Rendering/Tk/vtkTkImageViewerWidget.cxx b/Rendering/Tk/vtkTkImageViewerWidget.cxx -index 43c7a48a13..9d2c4210de 100644 ---- a/Rendering/Tk/vtkTkImageViewerWidget.cxx -+++ b/Rendering/Tk/vtkTkImageViewerWidget.cxx -@@ -23,6 +23,17 @@ - #include - #include - -+#if (TCL_MAJOR_VERSION >= 9) -+#define VTK_TCL_CONST const -+#elif ((TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4)) -+#define VTK_TCL_CONST CONST84 -+#else -+#define VTK_TCL_CONST -+#endif -+#ifndef offsetof -+#define offsetof(type, field) ((size_t)((char*)&((type*)0)->field)) -+#endif -+ - #define VTK_ALL_EVENTS_MASK \ - KeyPressMask | KeyReleaseMask | ButtonPressMask | ButtonReleaseMask | EnterWindowMask | \ - LeaveWindowMask | PointerMotionMask | ExposureMask | VisibilityChangeMask | FocusChangeMask | \ -@@ -32,14 +43,14 @@ - // or with the command configure. The only new one is "-rw" which allows - // the uses to set their own ImageViewer window. - static Tk_ConfigSpec vtkTkImageViewerWidgetConfigSpecs[] = { -- { TK_CONFIG_PIXELS, (char*)"-height", (char*)"height", (char*)"Height", (char*)"400", -- Tk_Offset(struct vtkTkImageViewerWidget, Height), 0, nullptr }, -+ { TK_CONFIG_PIXELS, "-height", "height", "Height", "400", -+ offsetof(struct vtkTkImageViewerWidget, Height), 0, nullptr }, - -- { TK_CONFIG_PIXELS, (char*)"-width", (char*)"width", (char*)"Width", (char*)"400", -- Tk_Offset(struct vtkTkImageViewerWidget, Width), 0, nullptr }, -+ { TK_CONFIG_PIXELS, "-width", "width", "Width", "400", -+ offsetof(struct vtkTkImageViewerWidget, Width), 0, nullptr }, - -- { TK_CONFIG_STRING, (char*)"-iv", (char*)"iv", (char*)"IV", (char*)"", -- Tk_Offset(struct vtkTkImageViewerWidget, IV), 0, nullptr }, -+ { TK_CONFIG_STRING, "-iv", "iv", "IV", "", offsetof(struct vtkTkImageViewerWidget, IV), 0, -+ nullptr }, - - { TK_CONFIG_END, nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr } - }; -@@ -56,17 +67,22 @@ extern int vtkImageViewerCommand(ClientData cd, Tcl_Interp* interp, int argc, ch - //------------------------------------------------------------------------------ - // It's possible to change with this function or in a script some - // options like width, height or the ImageViewer widget. --int vtkTkImageViewerWidget_Configure( -- Tcl_Interp* interp, struct vtkTkImageViewerWidget* self, int argc, char* argv[], int flags) -+#if (TCL_MAJOR_VERSION >= 9) -+int vtkTkImageViewerWidget_Configure(Tcl_Interp* interp, struct vtkTkImageViewerWidget* self, -+ Tcl_Size objc, Tcl_Obj* const* objv, int flags) -+#else -+int vtkTkImageViewerWidget_Configure(Tcl_Interp* interp, struct vtkTkImageViewerWidget* self, -+ int argc, VTK_TCL_CONST char* argv[], int flags) -+#endif - { - // Let Tk handle generic configure options. -- if (Tk_ConfigureWidget(interp, self->TkWin, vtkTkImageViewerWidgetConfigSpecs, argc, --#if (TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4) -- const_cast(argv), -+#if (TCL_MAJOR_VERSION >= 9) -+ if (Tk_ConfigureWidget(interp, self->TkWin, vtkTkImageViewerWidgetConfigSpecs, objc, objv, -+ (void*)self, flags) == TCL_ERROR) - #else -- argv, --#endif -+ if (Tk_ConfigureWidget(interp, self->TkWin, vtkTkImageViewerWidgetConfigSpecs, argc, argv, - (char*)self, flags) == TCL_ERROR) -+#endif - { - return (TCL_ERROR); - } -@@ -89,11 +105,8 @@ int vtkTkImageViewerWidget_Configure( - // to choose the appropriate method to invoke. - extern "C" - { -- int vtkTkImageViewerWidget_Widget(ClientData clientData, Tcl_Interp* interp, int argc, --#if (TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4) -- CONST84 --#endif -- char* argv[]) -+ int vtkTkImageViewerWidget_Widget( -+ ClientData clientData, Tcl_Interp* interp, int argc, VTK_TCL_CONST char* argv[]) - { - struct vtkTkImageViewerWidget* self = (struct vtkTkImageViewerWidget*)clientData; - int result = TCL_OK; -@@ -106,7 +119,11 @@ extern "C" - } - - // Make sure the widget is not deleted during this function -+#if (TCL_MAJOR_VERSION >= 9) -+ Tcl_Preserve((ClientData)self); -+#else - Tk_Preserve((ClientData)self); -+#endif - - // Handle render call to the widget - if (strncmp(argv[1], "render", std::max(1, strlen(argv[1]))) == 0 || -@@ -137,13 +154,27 @@ extern "C" - else - { - /* Execute a configuration change */ -- result = vtkTkImageViewerWidget_Configure(interp, self, argc - 2, --#if (TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4) -- const_cast(argv + 2), -+#if (TCL_MAJOR_VERSION >= 9) -+ // Convert string arguments to Tcl_Obj for TCL 9.0 -+ Tcl_Obj** objv_config = (Tcl_Obj**)ckalloc((argc - 2) * sizeof(Tcl_Obj*)); -+ for (int i = 0; i < argc - 2; i++) -+ { -+ objv_config[i] = Tcl_NewStringObj(argv[i + 2], -1); -+ Tcl_IncrRefCount(objv_config[i]); -+ } -+ result = vtkTkImageViewerWidget_Configure( -+ interp, self, argc - 2, objv_config, TK_CONFIG_ARGV_ONLY); -+ -+ // Clean up the Tcl_Obj array -+ for (int i = 0; i < argc - 2; i++) -+ { -+ Tcl_DecrRefCount(objv_config[i]); -+ } -+ ckfree((char*)objv_config); - #else -- argv + 2, -+ result = -+ vtkTkImageViewerWidget_Configure(interp, self, argc - 2, argv + 2, TK_CONFIG_ARGV_ONLY); - #endif -- TK_CONFIG_ARGV_ONLY); - } - } - else if (!strcmp(argv[1], "GetImageViewer")) -@@ -165,7 +196,11 @@ extern "C" - } - - // Unlock the object so it can be deleted. -+#if (TCL_MAJOR_VERSION >= 9) -+ Tcl_Release((ClientData)self); -+#else - Tk_Release((ClientData)self); -+#endif - return result; - } - } -@@ -181,16 +216,10 @@ extern "C" - // * Configures this vtkTkImageViewerWidget for the given arguments - extern "C" - { -- int vtkTkImageViewerWidget_Cmd(ClientData clientData, Tcl_Interp* interp, int argc, --#if (TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4) -- CONST84 --#endif -- char** argv) -+ int vtkTkImageViewerWidget_Cmd( -+ ClientData clientData, Tcl_Interp* interp, int argc, VTK_TCL_CONST char** argv) - { --#if (TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4) -- CONST84 --#endif -- char* name; -+ VTK_TCL_CONST char* name; - Tk_Window main = (Tk_Window)clientData; - Tk_Window tkwin; - struct vtkTkImageViewerWidget* self; -@@ -233,13 +262,37 @@ extern "C" - vtkTkImageViewerWidget_EventProc, (ClientData)self); - - // Configure vtkTkImageViewerWidget widget -- if (vtkTkImageViewerWidget_Configure(interp, self, argc - 2, --#if (TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4) -- const_cast(argv + 2), -+#if (TCL_MAJOR_VERSION >= 9) -+ // Convert string arguments to Tcl_Obj for TCL 9.0 -+ Tcl_Obj** objv_init = (Tcl_Obj**)ckalloc((argc - 2) * sizeof(Tcl_Obj*)); -+ for (int i = 0; i < argc - 2; i++) -+ { -+ objv_init[i] = Tcl_NewStringObj(argv[i + 2], -1); -+ Tcl_IncrRefCount(objv_init[i]); -+ } -+ -+ if (vtkTkImageViewerWidget_Configure(interp, self, argc - 2, objv_init, 0) == TCL_ERROR) -+ { -+ // Clean up before error return -+ for (int i = 0; i < argc - 2; i++) -+ { -+ Tcl_DecrRefCount(objv_init[i]); -+ } -+ ckfree((char*)objv_init); -+ -+ Tk_DestroyWindow(tkwin); -+ Tcl_DeleteCommand(interp, (char*)"vtkTkImageViewerWidget"); -+ return TCL_ERROR; -+ } -+ -+ // Clean up the Tcl_Obj array -+ for (int i = 0; i < argc - 2; i++) -+ { -+ Tcl_DecrRefCount(objv_init[i]); -+ } -+ ckfree((char*)objv_init); - #else -- argv + 2, --#endif -- 0) == TCL_ERROR) -+ if (vtkTkImageViewerWidget_Configure(interp, self, argc - 2, argv + 2, 0) == TCL_ERROR) - { - Tk_DestroyWindow(tkwin); - Tcl_DeleteCommand(interp, (char*)"vtkTkImageViewerWidget"); -@@ -247,6 +300,7 @@ extern "C" - // free(self); - return TCL_ERROR; - } -+#endif - - Tcl_AppendResult(interp, Tk_PathName(tkwin), nullptr); - return TCL_OK; -@@ -255,7 +309,11 @@ extern "C" - - extern "C" - { -+#if (TCL_MAJOR_VERSION >= 9) -+ void vtkTkImageViewerWidget_Destroy(void* memPtr) -+#else - void vtkTkImageViewerWidget_Destroy(char* memPtr) -+#endif - { - struct vtkTkImageViewerWidget* self = (struct vtkTkImageViewerWidget*)memPtr; - -diff --git a/Rendering/Tk/vtkTkRenderWidget.cxx b/Rendering/Tk/vtkTkRenderWidget.cxx -index 6ddaa5816a..84c940b484 100644 ---- a/Rendering/Tk/vtkTkRenderWidget.cxx -+++ b/Rendering/Tk/vtkTkRenderWidget.cxx -@@ -29,6 +29,17 @@ - #include - #include - -+#if (TCL_MAJOR_VERSION >= 9) || ((TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 6)) -+#define VTK_TCL_CONST const -+#elif ((TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4)) -+#define VTK_TCL_CONST CONST84 -+#else -+#define VTK_TCL_CONST -+#endif -+#ifndef offsetof -+#define offsetof(type, field) ((size_t)((char*)&((type*)0)->field)) -+#endif -+ - // Silence warning like - // "dereferencing type-punned pointer will break strict-aliasing rules" - // it happens because this kind of expression: (long *)&ptr -@@ -45,14 +56,13 @@ - // or with the command configure. The only new one is "-rw" which allows - // the uses to set their own render window. - static Tk_ConfigSpec vtkTkRenderWidgetConfigSpecs[] = { -- { TK_CONFIG_PIXELS, (char*)"-height", (char*)"height", (char*)"Height", (char*)"400", -- Tk_Offset(struct vtkTkRenderWidget, Height), 0, nullptr }, -+ { TK_CONFIG_PIXELS, "-height", "height", "Height", "400", -+ offsetof(struct vtkTkRenderWidget, Height), 0, nullptr }, - -- { TK_CONFIG_PIXELS, (char*)"-width", (char*)"width", (char*)"Width", (char*)"400", -- Tk_Offset(struct vtkTkRenderWidget, Width), 0, nullptr }, -+ { TK_CONFIG_PIXELS, "-width", "width", "Width", "400", offsetof(struct vtkTkRenderWidget, Width), -+ 0, nullptr }, - -- { TK_CONFIG_STRING, (char*)"-rw", (char*)"rw", (char*)"RW", (char*)"", -- Tk_Offset(struct vtkTkRenderWidget, RW), 0, nullptr }, -+ { TK_CONFIG_STRING, "-rw", "rw", "RW", "", offsetof(struct vtkTkRenderWidget, RW), 0, nullptr }, - - { TK_CONFIG_END, nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr } - }; -@@ -113,11 +123,8 @@ extern "C" - #define VTKIMAGEDATATOTKPHOTO_CORONAL 0 - #define VTKIMAGEDATATOTKPHOTO_SAGITTAL 1 - #define VTKIMAGEDATATOTKPHOTO_TRANSVERSE 2 -- int vtkImageDataToTkPhoto_Cmd(ClientData vtkNotUsed(clientData), Tcl_Interp* interp, int argc, --#if (TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4) -- CONST84 --#endif -- char** argv) -+ int vtkImageDataToTkPhoto_Cmd( -+ ClientData vtkNotUsed(clientData), Tcl_Interp* interp, int argc, VTK_TCL_CONST char** argv) - { - int status = 0; - vtkImageData* image; -@@ -330,8 +337,14 @@ extern "C" - block.offset[3] = 3; - break; - } -+#if (TCL_MAJOR_VERSION >= 9) -+ Tk_PhotoSetSize(interp, photo, block.width, block.height); -+ Tk_PhotoPutBlock( -+ interp, photo, &block, 0, 0, block.width, block.height, TK_PHOTO_COMPOSITE_SET); -+#else - Tk_PhotoSetSize(photo, block.width, block.height); - Tk_PhotoPutBlock(photo, &block, 0, 0, block.width, block.height); -+#endif - return TCL_OK; - } - } -@@ -339,17 +352,22 @@ extern "C" - //------------------------------------------------------------------------------ - // It's possible to change with this function or in a script some - // options like width, height or the render widget. --int vtkTkRenderWidget_Configure( -- Tcl_Interp* interp, struct vtkTkRenderWidget* self, int argc, char* argv[], int flags) -+#if (TCL_MAJOR_VERSION >= 9) -+int vtkTkRenderWidget_Configure(Tcl_Interp* interp, struct vtkTkRenderWidget* self, Tcl_Size objc, -+ Tcl_Obj* const* objv, int flags) -+#else -+int vtkTkRenderWidget_Configure(Tcl_Interp* interp, struct vtkTkRenderWidget* self, int argc, -+ VTK_TCL_CONST char* argv[], int flags) -+#endif - { - // Let Tk handle generic configure options. -- if (Tk_ConfigureWidget(interp, self->TkWin, vtkTkRenderWidgetConfigSpecs, argc, --#if (TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4) -- const_cast(argv), -+#if (TCL_MAJOR_VERSION >= 9) -+ if (Tk_ConfigureWidget(interp, self->TkWin, vtkTkRenderWidgetConfigSpecs, objc, objv, (void*)self, -+ flags) == TCL_ERROR) - #else -- argv, -+ if (Tk_ConfigureWidget(interp, self->TkWin, vtkTkRenderWidgetConfigSpecs, argc, argv, (char*)self, -+ flags) == TCL_ERROR) - #endif -- (char*)self, flags) == TCL_ERROR) - { - return (TCL_ERROR); - } -@@ -372,11 +390,8 @@ int vtkTkRenderWidget_Configure( - // to choose the appropriate method to invoke. - extern "C" - { -- int vtkTkRenderWidget_Widget(ClientData clientData, Tcl_Interp* interp, int argc, --#if (TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4) -- CONST84 --#endif -- char* argv[]) -+ int vtkTkRenderWidget_Widget( -+ ClientData clientData, Tcl_Interp* interp, int argc, VTK_TCL_CONST char* argv[]) - { - struct vtkTkRenderWidget* self = (struct vtkTkRenderWidget*)clientData; - int result = TCL_OK; -@@ -389,7 +404,11 @@ extern "C" - } - - // Make sure the widget is not deleted during this function -+#if (TCL_MAJOR_VERSION >= 9) -+ Tcl_Preserve((ClientData)self); -+#else - Tk_Preserve((ClientData)self); -+#endif - - // Handle render call to the widget - if (strncmp(argv[1], "render", std::max(1, strlen(argv[1]))) == 0 || -@@ -420,13 +439,26 @@ extern "C" - else - { - /* Execute a configuration change */ -- result = vtkTkRenderWidget_Configure(interp, self, argc - 2, --#if (TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4) -- const_cast(argv + 2), -+#if (TCL_MAJOR_VERSION >= 9) -+ // Convert string arguments to Tcl_Obj for TCL 9.0 -+ Tcl_Obj** objv_config = (Tcl_Obj**)ckalloc((argc - 2) * sizeof(Tcl_Obj*)); -+ for (int i = 0; i < argc - 2; i++) -+ { -+ objv_config[i] = Tcl_NewStringObj(argv[i + 2], -1); -+ Tcl_IncrRefCount(objv_config[i]); -+ } -+ result = -+ vtkTkRenderWidget_Configure(interp, self, argc - 2, objv_config, TK_CONFIG_ARGV_ONLY); -+ -+ // Clean up the Tcl_Obj array -+ for (int i = 0; i < argc - 2; i++) -+ { -+ Tcl_DecrRefCount(objv_config[i]); -+ } -+ ckfree((char*)objv_config); - #else -- argv + 2, -+ result = vtkTkRenderWidget_Configure(interp, self, argc - 2, argv + 2, TK_CONFIG_ARGV_ONLY); - #endif -- TK_CONFIG_ARGV_ONLY); - } - } - else if (!strcmp(argv[1], "GetRenderWindow")) -@@ -448,7 +480,11 @@ extern "C" - } - - // Unlock the object so it can be deleted. -+#if (TCL_MAJOR_VERSION >= 9) -+ Tcl_Release((ClientData)self); -+#else - Tk_Release((ClientData)self); -+#endif - return result; - } - } -@@ -464,16 +500,10 @@ extern "C" - // * Configures this vtkTkRenderWidget for the given arguments - extern "C" - { -- int vtkTkRenderWidget_Cmd(ClientData clientData, Tcl_Interp* interp, int argc, --#if (TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4) -- CONST84 --#endif -- char** argv) -+ int vtkTkRenderWidget_Cmd( -+ ClientData clientData, Tcl_Interp* interp, int argc, VTK_TCL_CONST char** argv) - { --#if (TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4) -- CONST84 --#endif -- char* name; -+ VTK_TCL_CONST char* name; - Tk_Window main = (Tk_Window)clientData; - Tk_Window tkwin; - struct vtkTkRenderWidget* self; -@@ -515,13 +545,37 @@ extern "C" - tkwin, ExposureMask | StructureNotifyMask, vtkTkRenderWidget_EventProc, (ClientData)self); - - // Configure vtkTkRenderWidget widget -- if (vtkTkRenderWidget_Configure(interp, self, argc - 2, --#if (TCL_MAJOR_VERSION == 8) && (TCL_MINOR_VERSION >= 4) -- const_cast(argv + 2), -+#if (TCL_MAJOR_VERSION >= 9) -+ // Convert string arguments to Tcl_Obj for TCL 9.0 -+ Tcl_Obj** objv_init = (Tcl_Obj**)ckalloc((argc - 2) * sizeof(Tcl_Obj*)); -+ for (int i = 0; i < argc - 2; i++) -+ { -+ objv_init[i] = Tcl_NewStringObj(argv[i + 2], -1); -+ Tcl_IncrRefCount(objv_init[i]); -+ } -+ -+ if (vtkTkRenderWidget_Configure(interp, self, argc - 2, objv_init, 0) == TCL_ERROR) -+ { -+ // Clean up before error return -+ for (int i = 0; i < argc - 2; i++) -+ { -+ Tcl_DecrRefCount(objv_init[i]); -+ } -+ ckfree((char*)objv_init); -+ -+ Tk_DestroyWindow(tkwin); -+ Tcl_DeleteCommand(interp, (char*)"vtkTkImageViewerWidget"); -+ return TCL_ERROR; -+ } -+ -+ // Clean up the Tcl_Obj array -+ for (int i = 0; i < argc - 2; i++) -+ { -+ Tcl_DecrRefCount(objv_init[i]); -+ } -+ ckfree((char*)objv_init); - #else -- argv + 2, --#endif -- 0) == TCL_ERROR) -+ if (vtkTkRenderWidget_Configure(interp, self, argc - 2, argv + 2, 0) == TCL_ERROR) - { - Tk_DestroyWindow(tkwin); - Tcl_DeleteCommand(interp, "vtkTkRenderWidget"); -@@ -529,6 +583,7 @@ extern "C" - // free(self); - return TCL_ERROR; - } -+#endif - - Tcl_AppendResult(interp, Tk_PathName(tkwin), nullptr); - return TCL_OK; -@@ -555,7 +610,11 @@ extern "C" - - extern "C" - { -+#if (TCL_MAJOR_VERSION >= 9) -+ void vtkTkRenderWidget_Destroy(void* memPtr) -+#else - void vtkTkRenderWidget_Destroy(char* memPtr) -+#endif - { - struct vtkTkRenderWidget* self = (struct vtkTkRenderWidget*)memPtr; - diff --git a/vtk.spec b/vtk.spec index 17b813e..c437beb 100644 --- a/vtk.spec +++ b/vtk.spec @@ -1,41 +1,11 @@ %undefine __cmake_in_source_build -# State Nov 11 2020, LTO causes -# TestXMLHyperTreeGridIO.cxx.o (symbol from plugin): undefined reference to symbol -# '_ZZNSt8__detail18__to_chars_10_implIjEEvPcjT_E8__digits@@LLVM_11' -%global _lto_cflags %{nil} - -# There is a circular dep with opencascade -%bcond bootstrap 0 - -# OSMesa and X support are mutually exclusive. -# TODO - buid separate OSMesa version if desired -%bcond_with OSMesa -# No more Java on i686 -%ifarch %{java_arches} +# Disable OSMesa builds for now - see Bug 744434 +%bcond_without OSMesa %bcond_without java -%else -%bcond_with java -%endif -%if 0%{?flatpak} -%bcond_with mpich -%bcond_with openmpi -%else -# No openmpi on i668 with openmpi 5 in Fedora 40+ -# No mpi4py on i686 -%if 0%{?fedora} -%ifarch %{ix86} -%bcond_with mpich -%bcond_with openmpi -%else %bcond_without mpich +%bcond_without qt5 %bcond_without openmpi -%endif -%else -%bcond_without mpich -%bcond_without openmpi -%endif -%endif # s390x on EL8 does not have xorg-x11-drv-dummy %if 0%{?rhel} %ifarch s390x @@ -47,132 +17,95 @@ %bcond_without xdummy %endif -%if 0%{?fedora} || 0%{?rhel} >= 9 +%if 0%{?fedora} >= 33 || 0%{?rhel} >= 9 %bcond_without flexiblas %endif -# Try disabling LTO on ppc64le -%ifarch ppc64le -%global _lto_cflags %{nil} -%endif - # VTK currently is carrying local modifications to gl2ps %bcond_with gl2ps - -%bcond_without fmt - -#global rc rc2 +%if !%{with gl2ps} +%global vtk_use_system_gl2ps -DVTK_USE_SYSTEM_GL2PS:BOOL=OFF +%endif Summary: The Visualization Toolkit - A high level 3D visualization library Name: vtk -Version: 9.5.2%{?rc:~%{rc}} -Release: %autorelease -License: BSD-3-Clause -%global srcver %{lua:local ver = rpm.expand('%version');ver = ver:gsub('~','.');print(ver)} -Source0: https://www.vtk.org/files/release/9.5/VTK-%{srcver}.tar.gz -Source1: https://www.vtk.org/files/release/9.5/VTKData-%{srcver}.tar.gz +Version: 8.2.0 +Release: 23%{?dist} +# 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 +License: BSD +Source0: http://www.vtk.org/files/release/8.2/VTK-%{version}.tar.gz +Source1: http://www.vtk.org/files/release/8.2/VTKData-%{version}.tar.gz Source2: xorg.conf -# Patch required libharu version (Fedora 33+ contains the needed VTK patches) -Patch: vtk-libharu.patch -# Tk 9.0 - based on b7c22497712be6751fbefe155533ae34d5e381f5 -Patch: vtk-tk9.patch -# always_inline fails on ppc64le -# https://gitlab.kitware.com/vtk/vtk/-/issues/19622 -# https://bugzilla.redhat.com/show_bug.cgi?id=2386242 -Patch: vtk-ppc64-no-always-inline.patch +Source3: FindPEGTL.cmake +# Python 3.8 support +Patch0: https://gitlab.kitware.com/vtk/vtk/merge_requests/5883.patch +# Proj 6 support +Patch1: vtk-proj6_compat.patch +# GCC 10 support based on: +# https://gitlab.kitware.com/vtk/vtk/-/merge_requests/6420 +Patch2: vtk-gcc10.patch -URL: https://vtk.org/ +URL: http://vtk.org/ -BuildRequires: cmake -# Allow for testing with different cmake generators. -# make still seems to be faster than ninja, but has failed at times. -%global cmake_gen %{nil} -BuildRequires: gcc-c++ -%if %{with java} -BuildRequires: java-devel -%else -Obsoletes: %{name}-java < %{version}-%{release} -Obsoletes: %{name}-java-devel < %{version}-%{release} -%endif -BuildRequires: alembic-devel -%if %{with flexiblas} -BuildRequires: flexiblas-devel -%else -BuildRequires: blas-devel -BuildRequires: lapack-devel -%endif -BuildRequires: boost-devel -BuildRequires: cgnslib-devel -BuildRequires: cli11-devel -BuildRequires: double-conversion-devel -BuildRequires: eigen3-devel -BuildRequires: expat-devel -BuildRequires: fast_float-devel -BuildRequires: ffmpeg-free-devel -%if %{with fmt} -BuildRequires: fmt-devel >= 8.1.0 -%endif -BuildRequires: freeglut-devel -BuildRequires: freetype-devel -BuildRequires: gdal-devel -%if %{with gl2ps} -BuildRequires: gl2ps-devel -%endif -BuildRequires: hdf5-devel -BuildRequires: json-devel -BuildRequires: jsoncpp-devel -BuildRequires: libarchive-devel -BuildRequires: libGL-devel -BuildRequires: libharu-devel >= 2.4.0 -BuildRequires: libICE-devel -BuildRequires: libjpeg-devel -BuildRequires: liblas-devel -BuildRequires: libpng-devel -BuildRequires: libpq-devel -BuildRequires: libtheora-devel -BuildRequires: libtiff-devel -BuildRequires: libxkbcommon-devel -BuildRequires: libxml2-devel -BuildRequires: libX11-devel -BuildRequires: libXcursor-devel -BuildRequires: libXext-devel -BuildRequires: libXt-devel -BuildRequires: lz4-devel -BuildRequires: mariadb-connector-c-devel +BuildRequires: cmake +BuildRequires: gcc-c++ +%{?with_java:BuildRequires: java-devel} +BuildRequires: libX11-devel, libXt-devel, libXext-devel +BuildRequires: libICE-devel, libGL-devel %{?with_OSMesa:BuildRequires: mesa-libOSMesa-devel} -BuildRequires: netcdf-cxx-devel -%if %{without bootstrap} -BuildRequires: opencascade-devel +BuildRequires: tk-devel, tcl-devel +BuildRequires: python%{python3_pkgversion}-devel +BuildRequires: expat-devel, freetype-devel, libjpeg-devel, libpng-devel +%if 0%{with gl2ps} +BuildRequires: gl2ps-devel %endif -BuildRequires: openslide-devel -# Currently does not provide OpenVDBConfig.cmake -#BuildRequires: openvdb-devel -BuildRequires: openvr-devel -BuildRequires: openxr-devel -BuildRequires: PDAL-devel -BuildRequires: PEGTL-devel -BuildRequires: proj-devel -BuildRequires: pugixml-devel -BuildRequires: python%{python3_pkgversion}-devel -BuildRequires: cmake(Qt6UiPlugin) -BuildRequires: cmake(Qt6Quick) -BuildRequires: R-devel -BuildRequires: sqlite-devel -BuildRequires: tcl-devel -BuildRequires: tk-devel -BuildRequires: unixODBC-devel -BuildRequires: utf8cpp-devel -BuildRequires: zlib-devel -BuildRequires: chrpath -BuildRequires: doxygen -BuildRequires: graphviz -BuildRequires: gnuplot -BuildRequires: wget +BuildRequires: libtiff-devel, zlib-devel +BuildRequires: libxml2-devel +%if %{with qt5} +BuildRequires: cmake(Qt5) +BuildRequires: cmake(Qt5UiPlugin) +BuildRequires: cmake(Qt5X11Extras) +BuildRequires: qt5-qtwebkit-devel +BuildRequires: python%{python3_pkgversion}-qt5 +%else +BuildRequires: PyQt4-devel +BuildRequires: qt4-devel +BuildRequires: qtwebkit-devel +%endif +BuildRequires: chrpath +BuildRequires: doxygen, graphviz +BuildRequires: gnuplot +BuildRequires: boost-devel +BuildRequires: double-conversion-devel +BuildRequires: eigen3-devel +BuildRequires: glew-devel +BuildRequires: hdf5-devel +BuildRequires: jsoncpp-devel +BuildRequires: libtheora-devel +BuildRequires: mariadb-connector-c-devel +BuildRequires: netcdf-cxx-devel +BuildRequires: libpq-devel +BuildRequires: PEGTL-devel +BuildRequires: proj-devel +BuildRequires: pugixml-devel +BuildRequires: R-devel +BuildRequires: sqlite-devel +BuildRequires: wget +%if %{with flexiblas} +BuildRequires: flexiblas-devel +%else +BuildRequires: blas-devel +BuildRequires: lapack-devel +%endif +# Requires patched libharu https://github.com/libharu/libharu/pull/157 +#BuildRequires: libharu-devel +BuildRequires: lz4-devel +BuildRequires: motif-devel %if %{with mpich} BuildRequires: mpich-devel -%ifnarch %{ix86} BuildRequires: python%{?python3_pkgversion}-mpi4py-mpich -%endif BuildRequires: netcdf-mpich-devel %endif %if %{with openmpi} @@ -182,88 +115,11 @@ BuildRequires: netcdf-openmpi-devel %endif # For %check %if %{with xdummy} -BuildRequires: xorg-x11-drv-dummy -BuildRequires: mesa-dri-drivers +BuildRequires: xorg-x11-drv-dummy %endif +%{!?with_java:Conflicts: vtk-java} Requires: hdf5 = %{_hdf5_version} -# Almost every BR needs to be required by the -devel packages -%global vtk_devel_requires \ -Requires: cmake \ -%if %{with flexiblas} \ -Requires: flexiblas-devel%{?_isa} \ -%else \ -Requires: blas-devel%{?_isa} \ -Requires: lapack-devel%{?_isa} \ -%endif \ -Requires: blas-devel%{?_isa} \ -Requires: boost-devel%{?_isa} \ -Requires: cgnslib-devel%{?_isa} \ -# cli11 is noarch and header-only \ -Requires: cli11-static \ -Requires: double-conversion-devel%{?_isa} \ -# eigen3 is noarch and header-only \ -Requires: eigen3-static \ -Requires: expat-devel%{?_isa} \ -# fast_float is noarch and header-only \ -Requires: fast_float-devel \ -Requires: ffmpeg-free-devel%{?_isa} \ -%if %{with fmt} \ -Requires: fmt-devel%{?_isa} \ -%endif \ -Requires: freeglut-devel%{?_isa} \ -Requires: freetype-devel%{?_isa} \ -Requires: gdal-devel%{?_isa} \ -%if %{with gl2ps} \ -Requires: gl2ps-devel%{?_isa} \ -%endif \ -Requires: json-devel%{?_isa} \ -Requires: jsoncpp-devel%{?_isa} \ -Requires: lapack-devel%{?_isa} \ -Requires: libarchive-devel%{?_isa} \ -Requires: libGL-devel%{?_isa} \ -Requires: libharu-devel%{?_isa} >= 2.3.0-9 \ -Requires: libjpeg-devel%{?_isa} \ -Requires: liblas-devel%{?_isa} \ -Requires: libogg-devel%{?_isa} \ -Requires: libpng-devel%{?_isa} \ -Requires: libpq-devel%{?_isa} \ -Requires: libtheora-devel%{?_isa} \ -Requires: libtiff-devel%{?_isa} \ -Requires: libxkbcommon-devel%{?_isa} \ -Requires: libxml2-devel%{?_isa} \ -Requires: libX11-devel%{?_isa} \ -Requires: libXcursor-devel%{?_isa} \ -Requires: libXext-devel%{?_isa} \ -Requires: libXt-devel%{?_isa} \ -Requires: lz4-devel%{?_isa} \ -Requires: mariadb-connector-c-devel%{?_isa} \ -%if %{with OSMesa} \ -Requires: mesa-libOSMesa-devel%{?_isa} \ -%endif \ -Requires: netcdf-cxx-devel%{?_isa} \ -%if %{without bootstrap} \ -Requires: opencascade-devel%{?_isa} \ -%endif \ -Requires: openslide-devel%{?_isa} \ -#Requires: openvdb-devel%{?_isa} \ -Requires: openvr-devel%{?_isa} \ -Requires: openxr-devel%{?_isa} \ -Requires: PDAL-devel%{?_isa} \ -Requires: PEGTL-devel%{?_isa} \ -Requires: proj-devel%{?_isa} \ -Requires: pugixml-devel%{?_isa} \ -# bz #1183210 + #1183530 \ -Requires: python%{python3_pkgversion}-devel \ -Requires: sqlite-devel%{?_isa} \ -Requires: cmake(Qt6) \ -Requires: cmake(Qt6Core5Compat) \ -Requires: cmake(Qt6Quick) \ -Requires: cmake(Qt6UiPlugin) \ -Requires: unixODBC-devel%{?_isa} \ -Requires: utf8cpp-devel \ -Requires: zlib-devel%{?_isa} \ - # Bundled KWSys # https://fedorahosted.org/fpc/ticket/555 # Components used are specified in Utilities/KWSys/CMakeLists.txt @@ -278,33 +134,21 @@ Provides: bundled(kwsys-glob) Provides: bundled(kwsys-md5) Provides: bundled(kwsys-process) Provides: bundled(kwsys-regularexpression) -Provides: bundled(kwsys-status) Provides: bundled(kwsys-system) Provides: bundled(kwsys-systeminformation) Provides: bundled(kwsys-systemtools) # Other bundled libraries Provides: bundled(diy2) Provides: bundled(exodusII) = 2.0.0 -Provides: bundled(exprtk) = 2.71 -Provides: bundled(fides) -%if !%{with fmt} -Provides: bundled(fmt) = 8.1.0 -%endif Provides: bundled(ftgl) = 1.32 %if !%{with gl2ps} Provides: bundled(gl2ps) = 1.4.0 %endif -Provides: bundled(h5part) = 1.6.6 -Provides: bundled(ioss) = 20221014 -Provides: bundled(itlib-small-vector) = 1.0.4 -Provides: bundled(kissfft) -Provides: bundled(loguru) = 2.1 +Provides: bundled(libharu) Provides: bundled(metaio) -Provides: bundled(scn) = 4.0.0 -# kitware library https://gitlab.kitware.com/utils/token -Provides: bundled(token) = 23.09 -Provides: bundled(verdict) = 1.4.0 -Provides: bundled(viskores) = 1.0.0 +Provides: bundled(pugixml) = 1.8 +Provides: bundled(utf8cpp) +Provides: bundled(verdict) = 1.2.0 Provides: bundled(vpic) Provides: bundled(xdmf2) = 2.1 Provides: bundled(xdmf3) @@ -329,68 +173,102 @@ Install the %{name}-openmpi package to get a version compiled with openmpi. %package devel Summary: VTK header files for building C++ code -Requires: %{name}%{?_isa} = %{version}-%{release} -%if %{with java} -Requires: %{name}-java%{?_isa} = %{version}-%{release} +Requires: vtk%{?_isa} = %{version}-%{release} +Requires: python%{python3_pkgversion}-vtk%{?_isa} = %{version}-%{release} +Requires: python%{python3_pkgversion}-vtk-qt%{?_isa} = %{version}-%{release} +%{?with_OSMesa:Requires: mesa-libOSMesa-devel%{?_isa}} +Requires: cmake +%if %{with flexiblas} +Requires: flexiblas-devel%{?_isa} +%else +Requires: blas-devel%{?_isa} +Requires: lapack-devel%{?_isa} %endif -Requires: python%{python3_pkgversion}-%{name}%{?_isa} = %{version}-%{release} +Requires: double-conversion-devel%{?_isa} +# eigen3 is noarch +Requires: eigen3-devel +Requires: expat-devel%{?_isa} +Requires: freetype-devel%{?_isa} +%if %{with gl2ps} +Requires: gl2ps-devel%{?_isa} +%endif +Requires: glew-devel%{?_isa} Requires: hdf5-devel%{?_isa} +Requires: libjpeg-devel%{?_isa} +Requires: lz4-devel%{?_isa} +Requires: libpng-devel%{?_isa} +Requires: libogg-devel%{?_isa} +Requires: libSM-devel%{?_isa} +Requires: libtheora-devel%{?_isa} +Requires: libtiff-devel%{?_isa} +Requires: libxml2-devel%{?_isa} +Requires: libpq-devel%{?_isa} +Requires: PEGTL-devel%{?_isa} +Requires: proj-devel%{?_isa} +Requires: pugixml-devel%{?_isa} +Requires: sqlite-devel%{?_isa} +Requires: libX11-devel%{?_isa} +Requires: libXext-devel%{?_isa} +Requires: libXt-devel%{?_isa} +Requires: mysql-devel%{?_isa} Requires: netcdf-cxx-devel%{?_isa} -%{vtk_devel_requires} +%if %{with qt5} +Requires: cmake(Qt5) +Requires: cmake(Qt5UiPlugin) +Requires: cmake(Qt5X11Extras) +Requires: qt5-qtwebkit-devel%{?_isa} +%else +Requires: qt4-devel%{?_isa} +Requires: qtwebkit-devel%{?_isa} +%endif +Requires: jsoncpp-devel%{?_isa} +# bz #1183210 + #1183530 +Requires: python%{python3_pkgversion}-devel -%description devel +%description devel This provides the VTK header files required to compile C++ programs that use VTK to do 3D visualization. -%package -n python%{python3_pkgversion}-%{name} +%package -n python%{python3_pkgversion}-vtk Summary: Python 3 bindings for VTK Requires: vtk%{?_isa} = %{version}-%{release} %{?python_provide:%python_provide python%{python3_pkgversion}-vtk} Provides: %{py3_dist vtk} = %{version} Provides: python%{python3_version}dist(vtk) = %{version} -Obsoletes: python3-vtk-qt < 8.2.0-27 -Provides: python%{python3_pkgversion}-vtk-qt = %{version}-%{release} -%description -n python%{python3_pkgversion}-%{name} +%description -n python%{python3_pkgversion}-vtk Python 3 bindings for VTK. %if %{with java} %package java Summary: Java bindings for VTK -Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: vtk%{?_isa} = %{version}-%{release} %description java Java bindings for VTK. - -%package java-devel -Summary: Java development for VTK -Requires: %{name}-java%{?_isa} = %{version}-%{release} -Requires: java-devel - -%description java-devel -Java development for VTK. %endif %package qt Summary: Qt bindings for VTK -Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: vtk%{?_isa} = %{version}-%{release} %description qt Qt bindings for VTK. -%global mpi_list %{nil} +%package -n python%{python3_pkgversion}-vtk-qt +Summary: Qt Python 3 bindings for VTK +Requires: vtk%{?_isa} = %{version}-%{release} +%{?python_provide:%python_provide python%{python3_pkgversion}-vtk-qt} + +%description -n python%{python3_pkgversion}-vtk-qt +Qt Python 3 bindings for VTK. %if %{with mpich} -%global mpi_list %mpi_list mpich %package mpich Summary: The Visualization Toolkit - mpich version Obsoletes: %{name}-mpich-tcl < 8.2.0-1 Obsoletes: %{name}-mpich-qt-tcl < 8.2.0-1 -%if %{without java} -Obsoletes: %{name}-mpich-java < %{version}-%{release} -Obsoletes: %{name}-mpich-java-devel < %{version}-%{release} -%endif %description mpich VTK is an open-source software system for image processing, 3D @@ -403,67 +281,90 @@ NOTE: The version in this package has been compiled with mpich support. %package mpich-devel Summary: VTK header files for building C++ code with mpich -Requires: %{name}-mpich%{?_isa} = %{version}-%{release} -%if %{with java} -Requires: %{name}-mpich-java%{?_isa} = %{version}-%{release} -%endif -Requires: python%{python3_pkgversion}-%{name}-mpich%{?_isa} = %{version}-%{release} +Requires: vtk-mpich%{?_isa} = %{version}-%{release} +#Requires: python2-vtk%{?_isa} = %{version}-%{release} +#Requires: python2-vtk-qt%{?_isa} = %{version}-%{release} +%{?with_OSMesa:Requires: mesa-libOSMesa-devel%{?_isa}} +Requires: cmake Requires: mpich-devel +%if %{with flexiblas} +Requires: flexiblas-devel%{?_isa} +%else +Requires: blas-devel%{?_isa} +Requires: lapack-devel%{?_isa} +%endif +%if 0%{with gl2ps} +Requires: gl2ps-devel%{?_isa} +%endif +Requires: expat-devel%{?_isa} +Requires: freetype-devel%{?_isa} Requires: hdf5-mpich-devel%{?_isa} +Requires: libjpeg-devel%{?_isa} +Requires: libpng-devel%{?_isa} +Requires: libogg-devel%{?_isa} +Requires: libtheora-devel%{?_isa} +Requires: libtiff-devel%{?_isa} +Requires: libxml2-devel%{?_isa} +Requires: libpq-devel%{?_isa} +Requires: mysql-devel%{?_isa} +Requires: netcdf-cxx-devel%{?_isa} Requires: netcdf-mpich-devel%{?_isa} -%{vtk_devel_requires} +%if %{with qt5} +Requires: cmake(Qt5) +Requires: cmake(Qt5UiPlugin) +Requires: cmake(Qt5X11Extras) +Requires: qt5-qtwebkit-devel%{?_isa} +%else +Requires: qt4-devel%{?_isa} +Requires: qtwebkit-devel%{?_isa} +%endif +Requires: jsoncpp-devel%{?_isa} +# bz #1183210 + #1183530 +Requires: python%{python3_pkgversion}-devel -%description mpich-devel +%description mpich-devel This provides the VTK header files required to compile C++ programs that use VTK to do 3D visualization. NOTE: The version in this package has been compiled with mpich support. -%package -n python%{python3_pkgversion}-%{name}-mpich +%package -n python%{python3_pkgversion}-vtk-mpich Summary: Python 3 bindings for VTK with mpich -Requires: %{name}-mpich%{?_isa} = %{version}-%{release} -Obsoletes: python3-vtk-mpich-qt < 8.2.0-15 -Provides: python%{python3_pkgversion}-vtk-mpich-qt = %{version}-%{release} +Requires: vtk-mpich%{?_isa} = %{version}-%{release} -%description -n python%{python3_pkgversion}-%{name}-mpich +%description -n python%{python3_pkgversion}-vtk-mpich python 3 bindings for VTK with mpich. %if %{with java} %package mpich-java Summary: Java bindings for VTK with mpich -Requires: %{name}-mpich%{?_isa} = %{version}-%{release} +Requires: vtk-mpich%{?_isa} = %{version}-%{release} %description mpich-java Java bindings for VTK with mpich. - -%package mpich-java-devel -Summary: Java development for VTK with mpich -Requires: %{name}-mpich-java%{?_isa} = %{version}-%{release} -Requires: java-devel - -%description mpich-java-devel -Java development for VTK with mpich. %endif %package mpich-qt Summary: Qt bindings for VTK with mpich -Requires: %{name}-mpich%{?_isa} = %{version}-%{release} +Requires: vtk-mpich%{?_isa} = %{version}-%{release} %description mpich-qt Qt bindings for VTK with mpich. + +%package -n python%{python3_pkgversion}-vtk-mpich-qt +Summary: Qt Python 3 bindings for VTK with mpich +Requires: vtk-mpich%{?_isa} = %{version}-%{release} + +%description -n python%{python3_pkgversion}-vtk-mpich-qt +Qt Python 3 bindings for VTK with mpich. %endif %if %{with openmpi} -%global mpi_list %mpi_list openmpi %package openmpi Summary: The Visualization Toolkit - openmpi version Obsoletes: %{name}-openmpi-tcl < 8.2.0-1 Obsoletes: %{name}-openmpi-qt-tcl < 8.2.0-1 -%if %{without java} -Obsoletes: %{name}-mpich-java < %{version}-%{release} -Obsoletes: %{name}-mpich-java-devel < %{version}-%{release} -%endif %description openmpi VTK is an open-source software system for image processing, 3D @@ -476,54 +377,82 @@ NOTE: The version in this package has been compiled with openmpi support. %package openmpi-devel Summary: VTK header files for building C++ code with openmpi -Requires: %{name}-openmpi%{?_isa} = %{version}-%{release} -%if %{with java} -Requires: %{name}-openmpi-java%{?_isa} = %{version}-%{release} -%endif -Requires: python%{python3_pkgversion}-%{name}-openmpi%{?_isa} = %{version}-%{release} +Requires: vtk-openmpi%{?_isa} = %{version}-%{release} +#Requires: python2-vtk%{?_isa} = %{version}-%{release} +#Requires: python2-vtk-qt%{?_isa} = %{version}-%{release} +%{?with_OSMesa:Requires: mesa-libOSMesa-devel%{?_isa}} +Requires: cmake Requires: openmpi-devel +%if %{with flexiblas} +Requires: flexiblas-devel%{?_isa} +%else +Requires: blas-devel%{?_isa} +Requires: lapack-devel%{?_isa} +%endif +%if 0%{with gl2ps} +Requires: gl2ps-devel%{?_isa} +%endif +Requires: expat-devel%{?_isa} +Requires: freetype-devel%{?_isa} Requires: hdf5-openmpi-devel%{?_isa} +Requires: libjpeg-devel%{?_isa} +Requires: libpng-devel%{?_isa} +Requires: libogg-devel%{?_isa} +Requires: libtheora-devel%{?_isa} +Requires: libtiff-devel%{?_isa} +Requires: libxml2-devel%{?_isa} +Requires: libpq-devel%{?_isa} +Requires: mysql-devel%{?_isa} +Requires: netcdf-cxx-devel%{?_isa} Requires: netcdf-openmpi-devel%{?_isa} -%{vtk_devel_requires} +%if %{with qt5} +Requires: cmake(Qt5) +Requires: cmake(Qt5UiPlugin) +Requires: cmake(Qt5X11Extras) +Requires: qt5-qtwebkit-devel%{?_isa} +%else +Requires: qt4-devel%{?_isa} +Requires: qtwebkit-devel%{?_isa} +%endif +Requires: jsoncpp-devel%{?_isa} +# bz #1183210 + #1183530 +Requires: python%{python3_pkgversion}-devel -%description openmpi-devel +%description openmpi-devel This provides the VTK header files required to compile C++ programs that use VTK to do 3D visualization. NOTE: The version in this package has been compiled with openmpi support. -%package -n python%{python3_pkgversion}-%{name}-openmpi +%package -n python%{python3_pkgversion}-vtk-openmpi Summary: Python 3 bindings for VTK with openmpi -Requires: %{name}-openmpi%{?_isa} = %{version}-%{release} -Obsoletes: python3-vtk-openmpi-qt < 8.2.0-15 -Provides: python%{python3_pkgversion}-vtk-openmpi-qt = %{version}-%{release} +Requires: vtk-openmpi%{?_isa} = %{version}-%{release} -%description -n python%{python3_pkgversion}-%{name}-openmpi +%description -n python%{python3_pkgversion}-vtk-openmpi Python 3 bindings for VTK with openmpi. %if %{with java} %package openmpi-java Summary: Java bindings for VTK with openmpi -Requires: %{name}-openmpi%{?_isa} = %{version}-%{release} +Requires: vtk-openmpi%{?_isa} = %{version}-%{release} +%endif %description openmpi-java Java bindings for VTK with openmpi. -%package openmpi-java-devel -Summary: Java development for VTK with openmpi -Requires: %{name}-openmpi-java%{?_isa} = %{version}-%{release} -Requires: java-devel - -%description openmpi-java-devel -Java development for VTK with openmpi. -%endif - %package openmpi-qt Summary: Qt bindings for VTK with openmpi -Requires: %{name}-openmpi%{?_isa} = %{version}-%{release} +Requires: vtk-openmpi%{?_isa} = %{version}-%{release} %description openmpi-qt Qt bindings for VTK with openmpi. + +%package -n python%{python3_pkgversion}-vtk-openmpi-qt +Summary: Qt Python 3 bindings for VTK with openmpi +Requires: vtk-openmpi%{?_isa} = %{version}-%{release} + +%description -n python%{python3_pkgversion}-vtk-openmpi-qt +Qt Python 3 bindings for VTK with openmpi. %endif %package data @@ -534,23 +463,16 @@ Obsoletes: vtkdata < 6.1.0-3 %description data VTK data files for tests and examples. -%package doc -Summary: API documentation for VTK -BuildArch: noarch - -%description doc -Generated API documentation for VTK - %package testing Summary: Testing programs for VTK -Requires: %{name}%{?_isa} = %{version}-%{release}, %{name}-data = %{version} +Requires: vtk%{?_isa} = %{version}-%{release}, vtk-data = %{version} %description testing Testing programs for VTK %package examples Summary: Examples for VTK -Requires: %{name}%{?_isa} = %{version}-%{release}, %{name}-data = %{version} +Requires: vtk%{?_isa} = %{version}-%{release}, vtk-data = %{version} %description examples This package contains many well-commented examples showing how to use @@ -559,199 +481,160 @@ programming languages. %prep -%autosetup -p1 -b 1 -n VTK-%{srcver} +%setup -q -b 1 -n VTK-%{version} +%patch0 -p1 -b .py38 +%patch1 -p1 -b .proj6 +%patch2 -p1 -b .gcc10 # Remove included thirdparty sources just to be sure -# ls VTK-*/ThirdParty/*/vtk* -dl | grep ^d # TODO - diy2 - not yet packaged # TODO - exodusII - not yet packaged -# TODO - exprtk - not yet packaged -# TODO - fides - not yet packaged -# TODO - h5part - not yet packaged -# TODO - ioss - not yet packaged -# TODO - kissfft - not yet packaged -# TODO - loguru - not yet packaged -# TODO - scn - not yet packaged +# TODO - pugixml - https://gitlab.kitware.com/vtk/vtk/issues/17538 +# TODO - utf8cpp(source) - http://www.vtk.org/Bug/view.php?id=15730 # TODO - verdict - not yet packaged -# TODO - viskores - not yet packaged # TODO - VPIC - not yet packaged # TODO - xdmf2 - not yet packaged # TODO - xdmf3 - not yet packaged -for x in vtk{cgns,cli11,doubleconversion,eigen,expat,fast_float,%{?with_fmt:fmt,}freetype,%{?with_gl2ps:gl2ps,}hdf5,jpeg,jsoncpp,libharu,libproj,libxml2,lz4,lzma,mpi4py,netcdf,nlohmannjson,ogg,pegtl,png,pugixml,sqlite,theora,tiff,utf8,zlib} +for x in vtk{doubleconversion,eigen,expat,freetype,%{?_with_gl2ps:gl2ps,}glew,hdf5,jpeg,jsoncpp,kissfft,libproj,libxml2,lz4,lzma,mpi4py,netcdf,ogg,pegtl,png,sqlite,theora,tiff,zfp,zlib} do rm -r ThirdParty/*/${x} done -%ifarch %{ix86} -rm -r ThirdParty/xdmf3 -%endif -# Remove version requirements -sed -i -e '/VERSION *"/d' ThirdParty/fast_float/CMakeLists.txt - -# Remove version requirements -sed -i -e '/VERSION *"/d' ThirdParty/fast_float/CMakeLists.txt +# Needed to find PEGTL +cp %SOURCE3 CMake/FindPEGTL.cmake # Remove unused KWSys items -find Utilities/KWSys/vtksys/ -name \*.[ch]\* | grep -vE '^Utilities/KWSys/vtksys/([a-z].*|Configure|SharedForward|Status|String\.hxx|Base64|CommandLineArguments|Directory|DynamicLoader|Encoding|FStream|FundamentalType|Glob|MD5|Process|RegularExpression|System|SystemInformation|SystemTools)(C|CXX|UNIX)?\.' | xargs rm +find Utilities/KWSys/vtksys/ -name \*.[ch]\* | grep -vE '^Utilities/KWSys/vtksys/([a-z].*|Configure|SharedForward|String\.hxx|Base64|CommandLineArguments|Directory|DynamicLoader|Encoding|FStream|FundamentalType|Glob|MD5|Process|RegularExpression|System|SystemInformation|SystemTools)(C|CXX|UNIX)?\.' | xargs rm # Save an unbuilt copy of the Example's sources for %doc mkdir vtk-examples cp -a Examples vtk-examples +# Don't ship Win32 examples +rm -r vtk-examples/Examples/GUI/Win32 find vtk-examples -type f | xargs chmod -R a-x -# Requires OpenTURNS which is not packaged -# -DVTK_MODULE_ENABLE_VTK_FiltersOpenTURNS:STRING=YES -# fides and ADIOS2 require ADIOS2 which is not packaged -# ZSpace is Windows only, but is getting enabled anyway -# Xdmf3 fails on i686 - https://gitlab.kitware.com/vtk/vtk/-/issues/19402 +%build +export CFLAGS="%{optflags} -D_UNICODE -DHAVE_UINTPTR_T" +export CXXFLAGS="%{optflags} -D_UNICODE -DHAVE_UINTPTR_T" +export CPPFLAGS=-DACCEPT_USE_OF_DEPRECATED_PROJ_API_H +%if %{with java} +export JAVA_HOME=/usr/lib/jvm/java +%ifarch %{arm} s390x +# getting "java.lang.OutOfMemoryError: Java heap space" during the build +export JAVA_TOOL_OPTIONS=-Xmx2048m +%endif +%endif + %global vtk_cmake_options \\\ - -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \\\ - -DCMAKE_INSTALL_DOCDIR=share/doc/%{name} \\\ - -DCMAKE_INSTALL_JARDIR=share/java \\\ - -DCMAKE_INSTALL_LIBDIR:PATH=%{_lib} \\\ - -DCMAKE_INSTALL_JNILIBDIR:PATH=%{_lib}/%{name} \\\ - -DCMAKE_INSTALL_LICENSEDIR:PATH=share/licenses/%{name} \\\ -DVTK_CUSTOM_LIBRARY_SUFFIX="" \\\ - -DVTK_VERSIONED_INSTALL:BOOL=OFF \\\ - -DVTK_GROUP_ENABLE_Imaging:STRING=YES \\\ - -DVTK_GROUP_ENABLE_Qt:STRING=YES \\\ - -DVTK_GROUP_ENABLE_Rendering:STRING=YES \\\ - -DVTK_GROUP_ENABLE_StandAlone:STRING=YES \\\ - -DVTK_GROUP_ENABLE_Views:STRING=YES \\\ - -DVTK_GROUP_ENABLE_Web:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_AcceleratorsVTKmFilters:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_CommonArchive:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_DomainsMicroscopy:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_GeovisGDAL:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_FiltersParallelStatistics:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_FiltersParallelVerdict:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_ImagingOpenGL2:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_InfovisBoost:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_InfovisBoostGraphAlgorithms:STRING=YES \\\ -%if %{with bootstrap} \ - -DVTK_MODULE_ENABLE_VTK_IOOCCT:STRING=NO \\\ + -DVTK_INSTALL_ARCHIVE_DIR:PATH=%{_lib} \\\ + -DVTK_INSTALL_DATA_DIR=share/vtk \\\ + -DVTK_INSTALL_INCLUDE_DIR:PATH=include/vtk \\\ + -DVTK_INSTALL_LIBRARY_DIR:PATH=%{_lib} \\\ + -DVTK_INSTALL_PACKAGE_DIR:PATH=%{_lib}/cmake/vtk \\\ + -DVTK_PYTHON_VERSION=3 \\\ +%if %{with qt5} \ + -DVTK_INSTALL_QT_DIR:PATH=%{_lib}/qt5/plugins/designer \\\ +%else \ + -DVTK_INSTALL_QT_DIR:PATH=%{_lib}/qt4/plugins/designer \\\ %endif \ - -DVTK_MODULE_ENABLE_VTK_IOFDS:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_IOH5part:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_IOH5Rage:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_IOMySQL:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_IOOMF:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_IOParallelLSDyna:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_IOTRUCHAS:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_IOVPIC:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_IOXdmf2:STRING=YES \\\ -%ifarch %{ix86} \ - -DVTK_MODULE_ENABLE_VTK_IOXdmf3:STRING=NO \\\ -%endif \ - -DVTK_MODULE_ENABLE_VTK_RenderingAnari:STRING=NO \\\ - -DVTK_MODULE_ENABLE_VTK_RenderingMatplotlib:STRING=YES \\\ - -DVTK_MODULE_ENABLE_VTK_RenderingVolumeAMR:STRING=YES \\\ - -DVTK_PYTHON_OPTIONAL_LINK:BOOL=OFF \\\ + -DTK_INTERNAL_PATH:PATH=/usr/include/tk-private/generic \\\ %if %{with OSMesa} \ -DVTK_OPENGL_HAS_OSMESA:BOOL=ON \\\ %endif \ %if %{with java} \ -DVTK_WRAP_JAVA:BOOL=ON \\\ - -DVTK_JAVA_SOURCE_VERSION=8 \\\ - -DVTK_JAVA_TARGET_VERSION=8 \\\ -DJAVA_INCLUDE_PATH:PATH=$JAVA_HOME/include \\\ -DJAVA_INCLUDE_PATH2:PATH=$JAVA_HOME/include/linux \\\ -DJAVA_AWT_INCLUDE_PATH:PATH=$JAVA_HOME/include \\\ - -DJAVA_AWT_LIBRARY:PATH=$JAVA_HOME/lib/libjawt.so \\\ - -DJAVA_JNI_INCLUDE_PATH:PATH=$JAVA_HOME/include \\\ - -DJAVA_JVM_LIBRARY:PATH=$JAVA_HOME/lib/libjava.so \\\ %else \ -DVTK_WRAP_JAVA:BOOL=OFF \\\ %endif \ -DVTK_WRAP_PYTHON:BOOL=ON \\\ - -DVTK_USE_EXTERNAL=ON \\\ - -DVTK_BUILD_ALL_MODULES=ON \\\ - -DVTK_ENABLE_OSPRAY:BOOL=OFF \\\ - -DVTK_MODULE_ENABLE_VTK_fides:STRING=NO \\\ - -DVTK_MODULE_ENABLE_VTK_FiltersOpenTURNS:STRING=NO \\\ - -DVTK_MODULE_ENABLE_VTK_IOADIOS2:STRING=NO \\\ - -DVTK_MODULE_ENABLE_VTK_IOOpenVDB:STRING=NO \\\ -%if !%{with fmt} \ - -DVTK_MODULE_USE_EXTERNAL_VTK_fmt:BOOL=OFF \\\ + -DVTK_Group_Imaging: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 \\\ + -DModule_vtkIOExportOpenGL2:BOOL=ON \\\ + -DModule_vtkIOMySQL:BOOL=ON \\\ + -DModule_vtkIOPostgreSQL:BOOL=ON \\\ + -DModule_vtkRenderingParallel:BOOL=ON \\\ + -DModule_vtkTestingCore:BOOL=ON \\\ + -DModule_vtkTestingRendering:BOOL=ON \\\ +%if %{with qt5} \ + -DVTK_QT_VERSION:STRING="5" \\\ %endif \ -%if !%{with gl2ps} \ - -DVTK_MODULE_USE_EXTERNAL_VTK_gl2ps:BOOL=OFF \\\ -%endif \ - -DVTK_MODULE_USE_EXTERNAL_VTK_exprtk:BOOL=OFF \\\ - -DVTK_MODULE_USE_EXTERNAL_VTK_ioss:BOOL=OFF \\\ - -DVTK_MODULE_USE_EXTERNAL_VTK_scn:BOOL=OFF \\\ - -DVTK_MODULE_USE_EXTERNAL_VTK_token:BOOL=OFF \\\ - -DVTK_MODULE_USE_EXTERNAL_VTK_verdict:BOOL=OFF \\\ - -DVTK_MODULE_USE_EXTERNAL_VTK_vtkviskores:BOOL=OFF \\\ - -DVTK_USE_TK=ON \\\ - %{?with_flexiblas:-DBLA_VENDOR=FlexiBLAS} + -DVTK_USE_OGGTHEORA_ENCODER=ON \\\ + -DVTK_USE_SYSTEM_LIBRARIES=ON \\\ + %{?vtk_use_system_gl2ps} \\\ + -DVTK_USE_SYSTEM_HDF5:BOOL=ON \\\ + -DVTK_USE_SYSTEM_LIBHARU=OFF \\\ + -DVTK_USE_SYSTEM_NETCDF:BOOL=ON +# Commented old flags in case we'd like to reactive some of them +# -DVTK_USE_DISPLAY:BOOL=OFF \ # This prevents building of graphics tests -# $mpi will be evaluated in the loops below -%global _vpath_builddir %{_vendor}-%{_target_os}-build-${mpi:-serial} - - -%conf -export CFLAGS="%{optflags} -D_UNICODE -DHAVE_UINTPTR_T" -export CXXFLAGS="%{optflags} -D_UNICODE -DHAVE_UINTPTR_T" -export CPPFLAGS=-DACCEPT_USE_OF_DEPRECATED_PROJ_API_H -%if %{with java} -export JAVA_HOME=%{_prefix}/lib/jvm/java -%ifarch %{arm} s390x riscv64 -# getting "java.lang.OutOfMemoryError: Java heap space" during the build -export JAVA_TOOL_OPTIONS=-Xmx2048m -%endif -%ifarch %{arm} riscv64 -# Likely running out of memory during build -%global _smp_ncpus_max 2 -%endif -%endif - - -%cmake %{cmake_gen} \ +%global _vpath_builddir build +%cmake \ %{vtk_cmake_options} \ - -DVTK_BUILD_DOCUMENTATION:BOOL=ON \ - -DVTK_BUILD_EXAMPLES:BOOL=ON \ - -DVTK_BUILD_TESTING:BOOL=ON - - - #-DVTK_MODULE_ENABLE_VTK_FiltersParallelStatistics:STRING=YES \ + %{?with_flexiblas:-DBLAS_LIBRARIES=-lflexiblas} \ + -DBUILD_DOCUMENTATION:BOOL=ON \ + -DBUILD_EXAMPLES:BOOL=ON \ + -DBUILD_TESTING:BOOL=ON +%cmake_build +%cmake_build --target DoxygenDoc vtkMyDoxygenDoc +%if %{with mpich} +%global _vpath_builddir build-mpich +%_mpich_load export CC=mpicc export CXX=mpic++ -for mpi in %{mpi_list} -do - module load mpi/$mpi-%{_arch} - # CMAKE_INSTALL_LIBDIR -> ARCHIVE_DESTINATION must not be an absolute path - # VTK_MODULE_ENABLE_VTK_FiltersParallelStatistics need MPI modules at the moment - %cmake %{cmake_gen} \ - %{vtk_cmake_options} \ - -DCMAKE_PREFIX_PATH:PATH=$MPI_HOME \ - -DCMAKE_INSTALL_PREFIX:PATH=$MPI_HOME \ - -DCMAKE_INSTALL_LIBDIR:PATH=lib \ - -DCMAKE_INSTALL_JNILIBDIR:PATH=lib/%{name} \ - -DVTK_MODULE_ENABLE_VTK_ParallelMPI=WANT \ - -DVTK_MODULE_ENABLE_VTK_mpi=WANT \ - -DVTK_MODULE_ENABLE_VTK_RenderingParallelLIC=WANT \ - -DVTK_MODULE_ENABLE_VTK_ParallelMPI4Py=WANT \ - -DVTK_MODULE_ENABLE_VTK_FiltersParallelFlowPaths=WANT \ - -DVTK_MODULE_ENABLE_VTK_FiltersParallelGeometry=WANT \ - -DVTK_MODULE_ENABLE_VTK_FiltersParallelMPI=WANT \ - -DVTK_MODULE_ENABLE_VTK_IOMPIImage=WANT \ - -DVTK_MODULE_ENABLE_VTK_IOParallelNetCDF=WANT \ - -DVTK_MODULE_ENABLE_VTK_IOPIO=WANT \ - -DVTK_USE_MPI:BOOL=ON - module purge -done +%cmake \ + %{vtk_cmake_options} \ + -DCMAKE_PREFIX_PATH:PATH=$MPI_HOME \ + -DCMAKE_INSTALL_PREFIX:PATH=$MPI_HOME \ + -DVTK_INSTALL_ARCHIVE_DIR:PATH=lib \ + -DVTK_INSTALL_LIBRARY_DIR:PATH=lib \ + -DVTK_INSTALL_PACKAGE_DIR:PATH=lib/cmake \ +%if %{with qt5} + -DVTK_INSTALL_QT_DIR:PATH=lib/qt5/plugins/designer \ +%else + -DVTK_INSTALL_QT_DIR:PATH=lib/qt4/plugins/designer \ +%endif + -DVTK_Group_MPI:BOOL=ON \ + -DModule_vtkRenderingParallel:BOOL=ON \ + -DVTK_USE_PARALLEL:BOOL=ON \ + -DVTK_USE_SYSTEM_DIY2:BOOL=OFF \ + -DVTK_USE_SYSTEM_MPI4PY:BOOL=ON +%cmake_build +%_mpich_unload +%endif - -%build -%cmake_build -- --output-sync -%cmake_build --target DoxygenDoc -for mpi in %{mpi_list} -do - module load mpi/$mpi-%{_arch} - %cmake_build -- --output-sync - module purge -done +%if %{with openmpi} +%global _vpath_builddir build-openmpi +%_openmpi_load +export CC=mpicc +export CXX=mpic++ +%cmake \ + %{vtk_cmake_options} \ + -DCMAKE_PREFIX_PATH:PATH=$MPI_HOME \ + -DCMAKE_INSTALL_PREFIX:PATH=$MPI_HOME \ + -DVTK_INSTALL_ARCHIVE_DIR:PATH=lib \ + -DVTK_INSTALL_LIBRARY_DIR:PATH=lib \ + -DVTK_INSTALL_PACKAGE_DIR:PATH=lib/cmake \ +%if %{with qt5} + -DVTK_INSTALL_QT_DIR:PATH=lib/qt5/plugins/designer \ +%else + -DVTK_INSTALL_QT_DIR:PATH=lib/qt4/plugins/designer \ +%endif + -DVTK_Group_MPI:BOOL=ON \ + -DModule_vtkRenderingParallel:BOOL=ON \ + -DVTK_USE_PARALLEL:BOOL=ON \ + -DVTK_USE_SYSTEM_DIY2:BOOL=OFF \ + -DVTK_USE_SYSTEM_MPI4PY:BOOL=ON +%cmake_build +%_openmpi_unload +%endif # Remove executable bits from sources (some of which are generated) find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or \ @@ -759,45 +642,86 @@ find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or \ %install +%global _vpath_builddir build %cmake_install -pushd %{_vpath_builddir} -# Gather list of non-java/python/qt libraries +pushd build +# Gather list of non-python/tcl libraries ls %{buildroot}%{_libdir}/*.so.* \ - | grep -Ev '(Java|Qt|Python)' | sed -e's,^%{buildroot},,' > libs.list + | grep -Ev '(Java|Qt|Python..D|TCL)' | sed -e's,^%{buildroot},,' > libs.list + +# List of executable examples +cat > examples.list << EOF +HierarchicalBoxPipeline +MultiBlock +Arrays +Cube +RGrid +SGrid +Medical1 +Medical2 +Medical3 +finance +AmbientSpheres +Cylinder +DiffuseSpheres +SpecularSpheres +Cone +Cone2 +Cone3 +Cone4 +Cone5 +Cone6 +EOF # List of executable test binaries find bin \( -name \*Tests -o -name Test\* -o -name VTKBenchMark \) \ -printf '%f\n' > testing.list -# Install examples too, need to remove buildtime runpath manually -for file in `cat testing.list`; do - install -p bin/$file %{buildroot}%{_bindir} - chrpath -l -d %{buildroot}%{_bindir}/$file +# Install examples too +for filelist in examples.list testing.list; do + for file in `cat $filelist`; do + install -p bin/$file %{buildroot}%{_bindir} + done done # Fix up filelist paths -perl -pi -e's,^,%{_bindir}/,' testing.list +for filelist in examples.list testing.list; do + perl -pi -e's,^,%{_bindir}/,' $filelist +done -# Install data -mkdir -p %{buildroot}%{_datadir}/vtkdata -cp -alL ExternalData/* %{buildroot}%{_datadir}/vtkdata/ +# Remove any remnants of rpaths on files we install +# Seems to be some kind of java path +for file in `cat examples.list testing.list`; do + chrpath -d %{buildroot}$file +done +chrpath -d %{buildroot}%{_libdir}/qt?/plugins/designer/libQVTKWidgetPlugin.so +# Main package contains utils and core libs +cat libs.list popd -for mpi in %{mpi_list} -do - module load mpi/$mpi-%{_arch} - %cmake_install +%if %{with mpich} +%_mpich_load +%global _vpath_builddir build-mpich +%cmake_install - # Gather list of non-java/pythonl/qt libraries - ls %{buildroot}%{_libdir}/${mpi}/lib/*.so.* \ - | grep -Ev '(Java|Python|Qt)' | sed -e's,^%{buildroot},,' > %{_vpath_builddir}/libs.list +# Gather list of non-python/tcl libraries +ls %{buildroot}%{_libdir}/mpich/lib/*.so.* \ + | grep -Ev '(Java|Qt|Python..D|TCL)' | sed -e's,^%{buildroot},,' > build-mpich/libs.list +%_mpich_unload +%endif - # Move licenses since we cannot install them outside of CMAKE_INSTALL_PREFIX (MPI_HOME) - mv %{buildroot}%{_libdir}/${mpi}/share/licenses/vtk %{buildroot}%{_defaultlicensedir}/%{name}-${mpi} - module purge -done +%if %{with openmpi} +%_openmpi_load +%global _vpath_builddir build-openmpi +%cmake_install + +# Gather list of non-python/tcl libraries +ls %{buildroot}%{_libdir}/openmpi/lib/*.so.* \ + | grep -Ev '(Java|Qt|Python..D|TCL)' | sed -e's,^%{buildroot},,' > build-openmpi/libs.list +%_openmpi_unload +%endif # Remove exec bit from non-scripts and %%doc for file in `find %{buildroot} -type f -perm 0755 \ @@ -809,34 +733,12 @@ find Utilities/Upgrading -type f -print0 | xargs -0 chmod -x # Setup Wrapping docs tree mkdir -p _docs -cp -pr --parents Wrapping/*/README* _docs/ +cp -pr --parents Wrapping/*/README* _docs/ -# Make noarch data sub-package the same on all arches -# At the moment this only contains Java/Testing/Data/Baseline -rm -rf %{buildroot}%{_datadir}/vtkdata/Wrapping +#Install data +mkdir -p %{buildroot}%{_datadir}/vtkdata +cp -alL build/ExternalData/* %{buildroot}%{_datadir}/vtkdata/ -# The fixed FindHDF5.cmake is patch of CMake now -rm -v %{buildroot}/%{_libdir}/cmake/%{name}/patches/99/FindHDF5.cmake -%if %{with mpich} -rm -v %{buildroot}/%{_libdir}/mpich/lib/cmake/%{name}/patches/99/FindHDF5.cmake -%endif -%if %{with openmpi} -rm -v %{buildroot}/%{_libdir}/openmpi/lib/cmake/%{name}/patches/99/FindHDF5.cmake -%endif - -# https://bugzilla.redhat.com/show_bug.cgi?id=1902729 -# contains the $ORIGIN runpath specifier at the wrong position in [/usr/lib64/mpich/lib:$ORIGIN:$ORIGIN/../] -# 0x0008 ... the special '$ORIGIN' RPATHs are appearing after other -# RPATHs; this is just a minor issue but usually unwanted -# The paths are equivalent and "this is just a minor issue", so we are allowing it below -# 0x0010 ... the RPATH is empty; there is no reason for such RPATHs -# and they cause unneeded work while loading libraries -# This is appearing on mpi libraries, no idea why. -export QA_RPATHS=18 - - -# Test take a very long time on s390x because many tests hit the default 25 minute timeout -%ifnarch s390x %check cp %SOURCE2 . %if %{with xdummy} @@ -848,38 +750,32 @@ fi $Xorg -noreset +extension GLX +extension RANDR +extension RENDER -logfile ./xorg.log -config ./xorg.conf -configdir . :99 & export DISPLAY=:99 %endif +%global _vpath_builddir build export FLEXIBLAS=netlib %ctest --verbose || : %if %{with xdummy} kill %1 || : cat xorg.log %endif -%endif -%files -f %{_vendor}-%{_target_os}-build-serial/libs.list -%license %{_defaultlicensedir}/%{name}/ +%files -f build/libs.list +%license Copyright.txt %doc README.md _docs/Wrapping -%{_datadir}/vr_actions/ -%{_datadir}/xr_actions/ %files devel %doc Utilities/Upgrading -%{_bindir}/vtkParseJava -%{_bindir}/vtkProbeOpenGLVersion %{_bindir}/vtkWrapHierarchy -%{_bindir}/vtkWrapJava -%{_bindir}/vtkWrapSerDes - -%{_includedir}/%{name} +%{_includedir}/vtk %{_libdir}/*.so -%{_libdir}/cmake/%{name}/ -%dir %{_libdir}/%{name} -%{_libdir}/%{name}/hierarchy/ +%{_libdir}/libvtkWrappingTools.a +%{_libdir}/cmake/vtk/ +%{_docdir}/vtk-8.2/ %files -n python%{python3_pkgversion}-vtk %{python3_sitearch}/* -%{_libdir}/*Python*.so.* +%{_libdir}/*Python3?D.so.* +%exclude %{_libdir}/*QtPython3?D.so.* %{_bindir}/vtkpython %{_bindir}/vtkWrapPython %{_bindir}/vtkWrapPythonInit @@ -887,37 +783,36 @@ cat xorg.log %if %{with java} %files java %{_libdir}/*Java.so.* -%dir %{_libdir}/%{name} -%{_libdir}/%{name}/*Java.so -%{_javadir}/vtk.jar +%{_libdir}/vtk.jar +%{_bindir}/vtkParseJava +%{_bindir}/vtkWrapJava %endif %files qt %{_libdir}/lib*Qt*.so.* -%exclude %{_libdir}/*Python*.so.* +%exclude %{_libdir}/*Python%{python3_version_nodots}D.so.* +%{_libdir}/qt?/plugins/designer/libQVTKWidgetPlugin.so + +%files -n python%{python3_pkgversion}-vtk-qt +%{_libdir}/*QtPython3?D.so.* %if %{with mpich} -%files mpich -f %{_vendor}-%{_target_os}-build-mpich/libs.list -%license %{_defaultlicensedir}/%{name}-mpich/ +%files mpich -f build-mpich/libs.list +%license Copyright.txt %doc README.md _docs/Wrapping -%{_libdir}/mpich/share/vr_actions/ -%{_libdir}/mpich/share/xr_actions/ %files mpich-devel -%{_libdir}/mpich/bin/vtkParseJava -%{_libdir}/mpich/bin/vtkProbeOpenGLVersion %{_libdir}/mpich/bin/vtkWrapHierarchy -%{_libdir}/mpich/bin/vtkWrapJava -%{_libdir}/mpich/bin/vtkWrapSerDes %{_libdir}/mpich/include/ %{_libdir}/mpich/lib/*.so +%{_libdir}/mpich/lib/libvtkWrappingTools.a %{_libdir}/mpich/lib/cmake/ -%dir %{_libdir}/mpich/lib/%{name} -%{_libdir}/mpich/lib/%{name}/hierarchy/ +%{_libdir}/mpich/share/doc/vtk-8.2/ %files -n python%{python3_pkgversion}-vtk-mpich %{_libdir}/mpich/lib/python%{python3_version}/ -%{_libdir}/mpich/lib/*Python*.so.* +%{_libdir}/mpich/lib/*Python3?D.so.* +%exclude %{_libdir}/mpich/lib/*QtPython%{python3_version_nodots}D.so.* %{_libdir}/mpich/bin/pvtkpython %{_libdir}/mpich/bin/vtkpython %{_libdir}/mpich/bin/vtkWrapPython @@ -926,38 +821,38 @@ cat xorg.log %if %{with java} %files mpich-java %{_libdir}/mpich/lib/*Java.so.* -%dir %{_libdir}/mpich/lib/%{name} -%{_libdir}/mpich/lib/%{name}/*Java.so -%{_libdir}/mpich/share/java/vtk.jar +%{_libdir}/mpich/lib/vtk.jar +%{_libdir}/mpich/bin/vtkParseJava +%{_libdir}/mpich/bin/vtkWrapJava %endif %files mpich-qt %{_libdir}/mpich/lib/lib*Qt*.so.* -%exclude %{_libdir}/mpich/lib/*Python*.so.* +%exclude %{_libdir}/mpich/lib/*Python%{python3_version_nodots}D.so.* +%{_libdir}/mpich/lib/qt?/ + +%files -n python%{python3_pkgversion}-vtk-mpich-qt +%{_libdir}/mpich/lib/*QtPython3?D.so.* %endif %if %{with openmpi} -%files openmpi -f %{_vendor}-%{_target_os}-build-openmpi/libs.list -%license %{_defaultlicensedir}/%{name}-openmpi/ +%files openmpi -f build-openmpi/libs.list +%license Copyright.txt %doc README.md _docs/Wrapping -%{_libdir}/openmpi/share/vr_actions/ -%{_libdir}/openmpi/share/xr_actions/ %files openmpi-devel -%{_libdir}/openmpi/bin/vtkParseJava -%{_libdir}/openmpi/bin/vtkProbeOpenGLVersion %{_libdir}/openmpi/bin/vtkWrapHierarchy -%{_libdir}/openmpi/bin/vtkWrapJava -%{_libdir}/openmpi/bin/vtkWrapSerDes %{_libdir}/openmpi/include/ %{_libdir}/openmpi/lib/*.so +%{_libdir}/openmpi/lib/libvtkWrappingTools.a %{_libdir}/openmpi/lib/cmake/ -%dir %{_libdir}/openmpi/lib/%{name} -%{_libdir}/openmpi/lib/%{name}/hierarchy/ +%{_libdir}/openmpi/share/doc/vtk-8.2/ + %files -n python%{python3_pkgversion}-vtk-openmpi %{_libdir}/openmpi/lib/python%{python3_version}/ -%{_libdir}/openmpi/lib/*Python*.so.* +%{_libdir}/openmpi/lib/*Python3?D.so.* +%exclude %{_libdir}/openmpi/lib/*QtPython%{python3_version_nodots}D.so.* %{_libdir}/openmpi/bin/pvtkpython %{_libdir}/openmpi/bin/vtkpython %{_libdir}/openmpi/bin/vtkWrapPython @@ -966,27 +861,559 @@ cat xorg.log %if %{with java} %files openmpi-java %{_libdir}/openmpi/lib/*Java.so.* -%dir %{_libdir}/openmpi/lib/%{name} -%{_libdir}/openmpi/lib/%{name}/*Java.so -%{_libdir}/openmpi/share/java/vtk.jar +%{_libdir}/openmpi/lib/vtk.jar +%{_libdir}/openmpi/bin/vtkParseJava +%{_libdir}/openmpi/bin/vtkWrapJava %endif %files openmpi-qt %{_libdir}/openmpi/lib/lib*Qt*.so.* -%exclude %{_libdir}/openmpi/lib/*Python*.so.* +%exclude %{_libdir}/openmpi/lib/*Python27D.so.* +%{_libdir}/openmpi/lib/qt?/ + +%files -n python%{python3_pkgversion}-vtk-openmpi-qt +%{_libdir}/openmpi/lib/*QtPython3?D.so.* %endif %files data %{_datadir}/vtkdata -%files doc -%{_docdir}/%{name}/ +%files testing -f build/testing.list -%files testing -f %{_vendor}-%{_target_os}-build-serial/testing.list - -%files examples +%files examples -f build/examples.list %doc vtk-examples/Examples %changelog -%autochangelog +* Thu Aug 27 2020 Iñaki Úcar - 8.2.0-23 +- https://fedoraproject.org/wiki/Changes/FlexiBLAS_as_BLAS/LAPACK_manager + +* Sun Aug 9 2020 Orion Poplawski - 8.2.0-22 +- Fix ExternalData in vtk-data (bz#1783622) + +* Tue Aug 4 2020 Orion Poplawski - 8.2.0-21 +- Use new cmake macros + +* Wed Jul 29 2020 Fedora Release Engineering - 8.2.0-20 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Fri Jul 24 2020 Jeff Law - 8.2.0-19 +- Use __cmake_in_source_build + +* Sat Jul 11 2020 Jiri Vanek - 8.2.0-18 +- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 + +* Thu Jun 25 2020 Orion Poplawski - 8.2.0-17 +- Rebuild for hdf5 1.10.6 + +* Sat Jun 20 2020 Orion Poplawski - 8.2.0-16 +- Drop _python_bytecompile_extra, python2 conditionals + +* Sat May 30 2020 Björn Esser - 8.2.0-15 +- Rebuild (jsoncpp) + +* Wed May 27 2020 Orion Poplawski - 8.2.0-14 +- Add patch to fix building with GCC 10 (bz#1800240) + +* Tue May 26 2020 Miro Hrončok - 8.2.0-14 +- Rebuilt for Python 3.9 + +* Fri Jan 31 2020 Fedora Release Engineering - 8.2.0-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Thu Nov 14 2019 Björn Esser - 8.2.0-12 +- Rebuild (jsoncpp) + +* Sat Nov 9 2019 Orion Poplawski - 8.2.0-11 +- Drop BR on sip-devel (python2) + +* Sun Sep 22 2019 Orion Poplawski - 8.2.0-10 +- Rebuild for double-conversion 3.1.5 + +* Mon Sep 09 2019 Orion Poplawski - 8.2.0-9 +- Rebuild for proj 6.2.0 +- Add patch and flags for proj 6 support + +* Tue Aug 20 2019 Orion Poplawski - 8.2.0-8 +- Add upstream patch to support Python 3.8 + +* Mon Aug 19 2019 Miro Hrončok - 8.2.0-7 +- Rebuilt for Python 3.8 + +* Wed Jul 31 2019 Orion Poplawski - 8.2.0-6 +- BR motif-devel instead of /usr/include/Xm (bugz#1731728) + +* Sat Jul 27 2019 Fedora Release Engineering - 8.2.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Wed Jul 03 2019 Björn Esser - 8.2.0-4 +- Rebuild (jsoncpp) + +* Thu Apr 18 2019 Orion Poplawski - 8.2.0-3 +- Provide starndard python 3.Y dist name (bugz#1700307) + +* Tue Apr 16 2019 Orion Poplawski - 8.2.0-2 +- Provide standard python 3 dist name (bugz#1700307) + +* Sat Mar 16 2019 Orion Poplawski - 8.2.0-1 +- Update to 8.2.0 +- TCL wrapping has been dropped upstream +- Build with system glew + +* Fri Feb 15 2019 Orion Poplawski - 8.1.1-3 +- Rebuild for openmpi 3.1.3 + +* Sun Feb 03 2019 Fedora Release Engineering - 8.1.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Oct 26 2018 Orion Poplawski - 8.1.1-1 +- Update to 8.1.1 (bug #1460059) +- Use Qt 5 (bug #1319504) +- Use Python 3 for Fedora 30+ (bug #1549034) + +* Thu Sep 06 2018 Pavel Raiskup - 7.1.1-13 +- rebuild against libpq (rhbz#1618698, rhbz#1623764) + +* Sat Jul 14 2018 Fedora Release Engineering - 7.1.1-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Wed Mar 07 2018 Adam Williamson - 7.1.1-11 +- Rebuild to fix GCC 8 mis-compilation + See https://da.gd/YJVwk ("GCC 8 ABI change on x86_64") + +* Fri Feb 09 2018 Fedora Release Engineering - 7.1.1-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Tue Dec 26 2017 Björn Esser - 7.1.1-9 +- Rebuilt for jsoncpp.so.20 + +* Mon Dec 18 2017 Orion Poplawski - 7.1.1-8 +- Enable mysql and postgresql support +- Use mariadb BR for F28+ (Bug #1494054) + +* Fri Sep 01 2017 Björn Esser - 7.1.1-7 +- Rebuilt for jsoncpp-1.8.3 + +* Sat Aug 12 2017 Zbigniew Jędrzejewski-Szmek - 7.1.1-6 +- Python 2 binary packages renamed to python2-vtk and python2-vtk-qt + See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3 + +* Thu Aug 03 2017 Fedora Release Engineering - 7.1.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 7.1.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Mon May 15 2017 Fedora Release Engineering - 7.1.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild + +* Tue May 9 2017 Orion Poplawski - 7.1.1-2 +- Enable tests on s390x + +* Mon May 8 2017 Orion Poplawski - 7.1.1-1 +- Update to 7.1.1 + +* Sat Feb 11 2017 Fedora Release Engineering - 7.1.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Tue Jan 3 2017 Dan Horák - 7.1.0-5 +- s390x needs increased Java heap size + +* Thu Dec 29 2016 Orion Poplawski - 7.1.0-4 +- Drop setting java heap size + +* Thu Dec 8 2016 Dan Horák - 7.1.0-3 +- Enable openmpi on s390(x) +- Add missing conditions for mpich/openmpi subpackages + +* Thu Dec 8 2016 Orion Poplawski - 7.1.0-2 +- Fix MPI library install location + +* Mon Dec 5 2016 Orion Poplawski - 7.1.0-1 +- Update to 7.1.0 +- Enable OSMesa +- Build MPI versions +- Use bundled glew + +* Wed Nov 2 2016 Orion Poplawski - 6.3.0-12 +- Rebuild for R openblas changes + +* Mon Oct 03 2016 Björn Esser - 6.3.0-11 +- Rebuilt for libjsoncpp.so.11 + +* Thu Jul 28 2016 Than Ngo - 6.3.0-10 +- %%check: make non-fatal as temporary workaround for build on s390x + +* Tue Jul 19 2016 Fedora Release Engineering - 6.3.0-9 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + +* Wed Jun 29 2016 Orion Poplawski - 6.3.0-8 +- Rebuild for hdf5 1.8.17 + +* Fri Mar 25 2016 Björn Esser - 6.3.0-7 +- Rebuilt for libjsoncpp.so.1 + +* Mon Feb 8 2016 Orion Poplawski - 6.3.0-6 +- Add patch for gcc 6 support + +* Fri Feb 05 2016 Fedora Release Engineering - 6.3.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Fri Jan 22 2016 Orion Poplawski - 6.3.0-4 +- Rebuild for netcdf 4.4.0 + +* Sat Jan 16 2016 Jonathan Wakely - 6.3.0-3 +- Rebuilt for Boost 1.60 + +* Wed Oct 21 2015 Orion Poplawski - 6.3.0-2 +- Note bundled libraries + +* Tue Sep 15 2015 Orion Poplawski - 6.3.0-1 +- Update to 6.3.0 + +* Thu Aug 27 2015 Jonathan Wakely - 6.2.0-10 +- Rebuilt for Boost 1.59 + +* Fri Aug 21 2015 Orion Poplawski - 6.2.0-9 +- Note bundled kwsys, remove unused kwsys files + +* Wed Jul 29 2015 Fedora Release Engineering - 6.2.0-8 +- Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159 + +* Wed Jul 22 2015 David Tardon - 6.2.0-7 +- rebuild for Boost 1.58 + +* Tue Jul 7 2015 Orion Poplawski - 6.2.0-6 +- Drop glext patch, no longer needed + +* Fri Jun 19 2015 Fedora Release Engineering - 6.2.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sat May 23 2015 Orion Poplawski - 6.2.0-4 +- Add requires netcdf-cxx-devel to vtk-devel (bug #1224512) + +* Sun May 17 2015 Orion Poplawski - 6.2.0-3 +- Rebuild for hdf5 1.8.15 + +* Sat May 02 2015 Kalev Lember - 6.2.0-2 +- Rebuilt for GCC 5 C++11 ABI change + +* Wed Mar 18 2015 Orion Poplawski - 6.2.0-1 +- Update to 6.2.0 +- Remove type, system, install, and netcdf patches applied upstream +- Integrate and replace vtkdata +- Build and run tests again +- Generate testing.list based on executable name + +* Thu Mar 05 2015 Orion Poplawski - 6.1.0-26 +- Add needed vtk-*-devel requires to vtk-devel (bug #1199310) + +* Wed Mar 04 2015 Orion Poplawski - 6.1.0-25 +- Rebuild for jsoncpp + +* Wed Feb 04 2015 Petr Machata - 6.1.0-24 +- Bump for rebuild. + +* Tue Feb 3 2015 Orion Poplawski - 6.1.0-23 +- Add patch to fix tcl library loading + +* Mon Jan 26 2015 Petr Machata - 6.1.0-22 +- Rebuild for boost 1.57.0 + +* Mon Jan 19 2015 François Cami - 6.1.0-21 +- Switch to non-explicit arch requires for now (bugs #1183210 #1183530) + +* Sat Jan 17 2015 François Cami - 6.1.0-20 +- Add jsoncpp-devel and python2-devel to vtk-devel Requires (bug #1183210) + +* Thu Jan 08 2015 Orion Poplawski - 6.1.0-19 +- Rebuild for hdf5 1.8.14 +- Add patch to fix compilation error + +* Thu Nov 20 2014 Dan Horák - 6.1.0-18 +- Don't override Java memory settings on s390 (related to bug #1115920) + +* Wed Nov 19 2014 Orion Poplawski - 6.1.0-17 +- Add patch to fix compilation with mesa 10.4 (bug #1138466) + +* Fri Oct 31 2014 Orion Poplawski - 6.1.0-16 +- No longer need cmake28 on RHEL6 + +* Thu Sep 4 2014 Orion Poplawski - 6.1.0-15 +- Increase java heap space for builds (bug #1115920) + +* Mon Aug 18 2014 Fedora Release Engineering - 6.1.0-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Tue Jun 10 2014 Orion Poplawski - 6.1.0-13 +- Rebuild for hdf 1.8.13 + +* Sun Jun 08 2014 Fedora Release Engineering - 6.1.0-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Thu Jun 5 2014 Orion Poplawski - 6.1.0-11 +- Add requires on blas-devel and lapack-devel to vtk-devel (bug #1105004) + +* Tue May 27 2014 Orion Poplawski - 6.1.0-10 +- Rebuild for Tcl 8.6 + +* Fri May 23 2014 Petr Machata - 6.1.0-9 +- Rebuild for boost 1.55.0 + +* Wed May 21 2014 Jaroslav Škarvada - 6.1.0-8 +- Rebuilt for https://fedoraproject.org/wiki/Changes/f21tcl86 + +* Tue May 6 2014 Tom Callaway - 6.1.0-7 +- rebuild against R 3.1.0 (without bundled blas/lapack) + +* Wed Mar 26 2014 Orion Poplawski - 6.1.0-5 +- Add Requires: qtwebkit-devel and hdf5-devel to vtk-devel (bug #1080781) + +* Tue Jan 28 2014 Orion Poplawski - 6.1.0-4 +- Really fix requires freetype-devel + +* Mon Jan 27 2014 Orion Poplawski - 6.1.0-3 +- Fix requires freetype-devel + +* Sun Jan 26 2014 Orion Poplawski - 6.1.0-2 +- Add Requires: libfreetype-devel; libxml2-devel to vtk-devel (bug #1057924) + +* Thu Jan 23 2014 Orion Poplawski - 6.1.0-1 +- Update to 6.1.0 +- Rebase patches, drop vtkpython patch +- Disable BUILD_TESTING for now until we can provide test data + +* Fri Dec 27 2013 Orion Poplawski - 6.0.0-10 +- Add patch to use system netcdf + +* Sun Dec 22 2013 Kevin Fenzi 6.0.0-9 +- Add BuildRequires on blas-devel and lapack-devel + +* Sun Dec 22 2013 François Cami - 6.0.0-8 +* Rebuild for rawhide. + +* Sun Aug 04 2013 Fedora Release Engineering - 6.0.0-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Tue Jul 30 2013 Petr Machata - 6.0.0-6 +- Rebuild for boost 1.54.0 + +* Mon Jul 29 2013 Orion Poplawski - 6.0.0-5 +- Enable VTK_WRAP_PYTHON_SIP + +* Fri Jul 26 2013 Orion Poplawski - 6.0.0-4 +- Add patch to install vtkpython + +* Wed Jul 17 2013 Petr Pisar - 6.0.0-3 +- Perl 5.18 rebuild + +* Mon Jul 15 2013 Orion Poplawski - 6.0.0-2 +- Install vtkMakeInstantiator files for gdcm build + +* Fri Jul 12 2013 Orion Poplawski - 6.0.0-1 +- Add BR on R-devel + +* Thu Jun 27 2013 Orion Poplawski - 6.0.0-1 +- Update to 6.0.0 + +* Thu May 16 2013 Orion Poplawski - 5.10.1-5 +- Rebuild for hdf5 1.8.11 + +* Fri Feb 15 2013 Fedora Release Engineering - 5.10.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Mon Jan 21 2013 Adam Tkac - 5.10.1-3 +- rebuild due to "jpeg8-ABI" feature drop + +* Mon Dec 03 2012 Orion Poplawski - 5.10.1-2 +- Rebuild for hdf5 1.8.10 +- Change doc handling + +* Thu Nov 1 2012 Orion Poplawski - 5.10.1-1 +- Update to 5.10.1 + +* Sun Jul 22 2012 Fedora Release Engineering - 5.10.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Thu May 24 2012 Orion Poplawski - 5.10.0-2 +- Add patch to add soname to libvtkNetCDF_cxx + +* Tue May 15 2012 Orion Poplawski - 5.10.0-1 +- Update to 5.10.0 + +* Tue May 15 2012 Jonathan G. Underwood - 5.8.0-6 +- Add cmake28 usage when building for EL6 +- Disable -java build on PPC64 as it fails to build + +* Tue Feb 28 2012 Fedora Release Engineering - 5.8.0-5 +- Rebuilt for c++ ABI breakage + +* Sun Jan 8 2012 Orion Poplawski - 5.8.0-4 +- Rebuild with gcc 4.7 + +* Fri Nov 18 2011 Orion Poplawski - 5.8.0-3 +- Rebuild for hdf5 1.8.8, add explicit requires + +* Tue Nov 1 2011 Orion Poplawski - 5.8.0-2 +- Keep libraries in %%{_libdir}/vtk, use ld.so.conf.d + +* Fri Oct 7 2011 Orion Poplawski - 5.8.0-1 +- Update to 5.8.0 +- Drop version from directory names +- Use VTK_PYTHON_SETUP_ARGS instead of patch to set python install dir +- Drop several patches fixed upstream +- Remove rpaths from all hand installed binaries (Bug 744437) +- Don't link against OSMesa (Bug 744434) + +* Thu Jun 23 2011 Orion Poplawski - 5.6.1-10 +- Add BR qtwebkit-devel, fixes FTBS bug 715770 + +* Thu May 19 2011 Orion Poplawski - 5.6.1-9 +- Update soversion patch to add soversion to libvtkNetCDF.so + +* Mon Mar 28 2011 Orion Poplawski - 5.6.1-8 +- Rebuild for new mysql + +* Thu Mar 17 2011 Orion Poplawski - 5.6.1-7 +- Add needed requires to vtk-devel + +* Wed Mar 16 2011 Orion Poplawski - 5.6.1-6 +- Turn on boost, mysql, postgres, ogg theora, and text analysis support, + bug 688275. + +* Wed Mar 16 2011 Marek Kasik - 5.6.1-5 +- Add backslashes to VTK_INSTALL_LIB_DIR and +- VTK_INSTALL_INCLUDE_DIR (#687895) + +* Tue Mar 15 2011 Orion Poplawski - 5.6.1-4 +- Set VTK_INSTALL_LIB_DIR, fix bug 687895 + +* Fri Feb 18 2011 Orion Poplawski - 5.6.1-3 +- Add patch to support gcc 4.6 +- Add patch to make using system libraries easier +- Update pythondestdir patch to use --prefix and --root +- Use system gl2ps and libxml2 +- Use standard cmake build macro, out of tree builds +- Add patch from upstream to add sonames to libCosmo and libVPIC (bug #622840) + +* Mon Feb 07 2011 Fedora Release Engineering - 5.6.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Tue Dec 7 2010 Orion Poplawski - 5.6.1-1 +- Update to 5.6.1 +- Enable qt4 support, drop qt3 support + +* Wed Oct 20 2010 Adam Jackson 5.6.0-37 +- Rebuild for new libOSMesa soname + +* Sat Jul 31 2010 David Malcolm - 5.6.0-36 +- add python 2.7 compat patch + +* Thu Jul 22 2010 David Malcolm - 5.6.0-35 +- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild + +* Mon Jul 5 2010 Axel Thimm - 5.6.0-34 +- Update to 5.6.0. + +* Sat Jun 6 2009 Axel Thimm - 5.4.2-30 +- Update to 5.4.2. + +* Thu Mar 12 2009 Orion Poplawski - 5.2.1-29 +- Update to 5.2.1 + +* Fri Mar 06 2009 Jesse Keating - 5.2.0-28 +- Remove chmod on examples .so files, none are built. This needs + more attention. + +* Sun Oct 5 2008 Axel Thimm - 5.2.0-26 +- Update to 5.2.0. + +* Wed Oct 1 2008 Orion Poplawski - 5.0.2-25 +- Fix patch fuzz + +* Mon Aug 25 2008 Axel Thimm - 5.0.4-24 +- Change java build dependencies from java-devel to gcj. + +* Sun Aug 24 2008 Axel Thimm - 5.0.4-23 +- %%check || : does not work anymore. +- enable java by default. + +* Wed May 21 2008 Tom "spot" Callaway - 5.0.4-22 +- fix license tag + +* Sat Apr 12 2008 Axel Thimm - 5.0.4-21 +- Fixes for gcc 4.3 by Orion Poplawski. + +* Sat Apr 5 2008 Axel Thimm - 5.0.4-20 +- Change BR to qt-devel to qt3-devel. + +* Sat Feb 23 2008 Axel Thimm - 5.0.4-19 +- Update to 5.0.4. + +* Mon May 28 2007 Axel Thimm - 5.0.3-18 +- Move headers to %%{_includedir}/vtk. +- Remove executable bit from sources. + +* Mon Apr 16 2007 Axel Thimm - 5.0.3-17 +- Make java build conditional. +- Add ldconfig %%post/%%postun for java/qt subpackages. + +* Sun Apr 15 2007 Axel Thimm - 5.0.3-16 +- Remove %%ghosting pyc/pyo. + +* Wed Apr 04 2007 Paulo Roma - 5.0.3-15 +- Update to 5.0.4. +- Added support for qt4 plugin. + +* Wed Feb 7 2007 Orion Poplawski - 5.0.2-14 +- Enable Java, Qt, GL2PS, OSMESA + +* Mon Sep 11 2006 Axel Thimm - 5.0.2-13 +- Update to 5.0.2. + +* Sun Aug 6 2006 Axel Thimm - 5.0.1-12 +- cmake needs to be >= 2.0.4. + +* Fri Aug 4 2006 Axel Thimm - 5.0.1-11 +- Fix some python issues including pyo management. + +* Sun Jul 23 2006 Axel Thimm - 5.0.1-10 +- Embed feedback from bug 199405 comment 5. +- Fix some Group entries. +- Remove redundant dependencies. +- Use system libs. +- Comment specfile more. +- Change buildroot handling with CMAKE_INSTALL_PREFIX. +- Enable qt designer plugin. + +* Wed Jul 19 2006 Axel Thimm - 5.0.1-7 +- Fix some permissions for rpmlint and debuginfo. + +* Sun Jul 16 2006 Axel Thimm - 5.0.1-7 +- Remove rpath and some further rpmlint warnings. + +* Thu Jul 13 2006 Axel Thimm - 5.0.1-6 +- Update to 5.0.1. + +* Wed May 31 2006 Axel Thimm +- Update to 5.0. + +* Mon Apr 05 2004 Intrinsic Spin 2.mr +- built on a machine with a stock libGL.so + +* Sun Apr 04 2004 Intrinsic Spin +- little cleanups +- Built for FC1 + +* Sun Jan 11 2004 Intrinsic Spin +- Built against a reasonably good (according to dashboard) CVS version so-as + to get GL2PS support. +- Rearranged. Cleaned up. Added some comments. + +* Sat Jan 10 2004 Intrinsic Spin +- Blatently stole this spec file for my own nefarious purposes. +- Removed Java (for now). Merged the Python and Tcl stuff into + the main rpm. + +* Fri Dec 05 2003 Fabrice Bellet +- (See Fabrice's RPMs for any more comments --Spin)