diff --git a/.gitignore b/.gitignore index bc82043..1e9afc3 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,31 @@ 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 deleted file mode 100644 index f749d3c..0000000 --- a/5883.patch +++ /dev/null @@ -1,176 +0,0 @@ -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 new file mode 100644 index 0000000..cd948dd --- /dev/null +++ b/changelog @@ -0,0 +1,757 @@ +* 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 2538b0d..be5d56c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (VTK-8.2.0.tar.gz) = 521bd4dabedbc24b0e80a314a34ecd7554b04af28a7973245e3a9cf99a09b995d1b8ac42305c8e53369f226a0a6da3cdb29105ba2c90b46492736ef717760286 -SHA512 (VTKData-8.2.0.tar.gz) = 517d0f6dfdb0c61f59df933f06d3a28c8a48ea684aaff311456213fe493e2a20128886144325fc4edfa376b2d375a2dae6c60ad6e3d5d2f4a7b0ac1d8545c87b +SHA512 (VTK-9.5.2.tar.gz) = fc8157a89fa603a7f7fce356e2f638ae69e0ea629a507458bdbb173daf511c61e39a1f0d7201b196a5b3a7ffa7e3e821398b62521faadf85edb1119a1e8b8e8e +SHA512 (VTKData-9.5.2.tar.gz) = 1be895bed613ed0f0ace0ba5e138afacc3d61b57e437299b3aecf6beff702ad1a2d02036fd147853bbbcb6a1f9d20a51831c0263fdc5b8e62ece9a6f8f7d410e diff --git a/vtk-chobo-cstdint.patch b/vtk-chobo-cstdint.patch new file mode 100644 index 0000000..162259e --- /dev/null +++ b/vtk-chobo-cstdint.patch @@ -0,0 +1,22 @@ +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 deleted file mode 100644 index 27b15cd..0000000 --- a/vtk-gcc10.patch +++ /dev/null @@ -1,32 +0,0 @@ -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 new file mode 100644 index 0000000..7100aa3 --- /dev/null +++ b/vtk-libharu.patch @@ -0,0 +1,13 @@ +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 new file mode 100644 index 0000000..9705931 --- /dev/null +++ b/vtk-ppc64-no-always-inline.patch @@ -0,0 +1,13 @@ +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 deleted file mode 100644 index 95e4a6d..0000000 --- a/vtk-proj6_compat.patch +++ /dev/null @@ -1,264 +0,0 @@ ---- 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 new file mode 100644 index 0000000..895669f --- /dev/null +++ b/vtk-tk9.patch @@ -0,0 +1,489 @@ +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 5b81d49..17b813e 100644 --- a/vtk.spec +++ b/vtk.spec @@ -1,11 +1,41 @@ %undefine __cmake_in_source_build -# Disable OSMesa builds for now - see Bug 744434 -%bcond_without OSMesa +# 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} %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 @@ -17,87 +47,132 @@ %bcond_without xdummy %endif +%if 0%{?fedora} || 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 -%if !%{with gl2ps} -%global vtk_use_system_gl2ps -DVTK_USE_SYSTEM_GL2PS:BOOL=OFF -%endif + +%bcond_without fmt + +#global rc rc2 Summary: The Visualization Toolkit - A high level 3D visualization library Name: vtk -Version: 8.2.0 -Release: 22%{?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 +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 Source2: xorg.conf -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 +# 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 -URL: http://vtk.org/ +URL: https://vtk.org/ -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: 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: 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 +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 -BuildRequires: PyQt4-devel -BuildRequires: qt4-devel -BuildRequires: qtwebkit-devel +Obsoletes: %{name}-java < %{version}-%{release} +Obsoletes: %{name}-java-devel < %{version}-%{release} %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 -BuildRequires: blas-devel -BuildRequires: lapack-devel -# Requires patched libharu https://github.com/libharu/libharu/pull/157 -#BuildRequires: libharu-devel -BuildRequires: lz4-devel -BuildRequires: motif-devel +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 +%{?with_OSMesa:BuildRequires: mesa-libOSMesa-devel} +BuildRequires: netcdf-cxx-devel +%if %{without bootstrap} +BuildRequires: opencascade-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 %if %{with mpich} BuildRequires: mpich-devel +%ifnarch %{ix86} BuildRequires: python%{?python3_pkgversion}-mpi4py-mpich +%endif BuildRequires: netcdf-mpich-devel %endif %if %{with openmpi} @@ -107,11 +182,88 @@ BuildRequires: netcdf-openmpi-devel %endif # For %check %if %{with xdummy} -BuildRequires: xorg-x11-drv-dummy +BuildRequires: xorg-x11-drv-dummy +BuildRequires: mesa-dri-drivers %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 @@ -126,21 +278,33 @@ 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(libharu) +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(metaio) -Provides: bundled(pugixml) = 1.8 -Provides: bundled(utf8cpp) -Provides: bundled(verdict) = 1.2.0 +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(vpic) Provides: bundled(xdmf2) = 2.1 Provides: bundled(xdmf3) @@ -165,98 +329,68 @@ Install the %{name}-openmpi package to get a version compiled with openmpi. %package devel Summary: VTK header files for building C++ code -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 -Requires: blas-devel%{?_isa} -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} +Requires: %{name}%{?_isa} = %{version}-%{release} +%if %{with java} +Requires: %{name}-java%{?_isa} = %{version}-%{release} %endif -Requires: glew-devel%{?_isa} +Requires: python%{python3_pkgversion}-%{name}%{?_isa} = %{version}-%{release} Requires: hdf5-devel%{?_isa} -Requires: lapack-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} -%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 +%{vtk_devel_requires} -%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}-vtk +%package -n python%{python3_pkgversion}-%{name} 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}-vtk +%description -n python%{python3_pkgversion}-%{name} Python 3 bindings for VTK. %if %{with java} %package java Summary: Java bindings for VTK -Requires: vtk%{?_isa} = %{version}-%{release} +Requires: %{name}%{?_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: vtk%{?_isa} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} %description qt Qt bindings for VTK. -%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. +%global mpi_list %{nil} %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 @@ -269,86 +403,67 @@ 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: 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: %{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: mpich-devel -Requires: blas-devel%{?_isa} -%if 0%{with gl2ps} -Requires: gl2ps-devel%{?_isa} -%endif -Requires: expat-devel%{?_isa} -Requires: freetype-devel%{?_isa} Requires: hdf5-mpich-devel%{?_isa} -Requires: lapack-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} -%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 +%{vtk_devel_requires} -%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}-vtk-mpich +%package -n python%{python3_pkgversion}-%{name}-mpich Summary: Python 3 bindings for VTK with mpich -Requires: vtk-mpich%{?_isa} = %{version}-%{release} +Requires: %{name}-mpich%{?_isa} = %{version}-%{release} +Obsoletes: python3-vtk-mpich-qt < 8.2.0-15 +Provides: python%{python3_pkgversion}-vtk-mpich-qt = %{version}-%{release} -%description -n python%{python3_pkgversion}-vtk-mpich +%description -n python%{python3_pkgversion}-%{name}-mpich python 3 bindings for VTK with mpich. %if %{with java} %package mpich-java Summary: Java bindings for VTK with mpich -Requires: vtk-mpich%{?_isa} = %{version}-%{release} +Requires: %{name}-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: vtk-mpich%{?_isa} = %{version}-%{release} +Requires: %{name}-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 @@ -361,78 +476,54 @@ 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: 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: %{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: openmpi-devel -Requires: blas-devel%{?_isa} -%if 0%{with gl2ps} -Requires: gl2ps-devel%{?_isa} -%endif -Requires: expat-devel%{?_isa} -Requires: freetype-devel%{?_isa} Requires: hdf5-openmpi-devel%{?_isa} -Requires: lapack-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} -%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 +%{vtk_devel_requires} -%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}-vtk-openmpi +%package -n python%{python3_pkgversion}-%{name}-openmpi Summary: Python 3 bindings for VTK with openmpi -Requires: vtk-openmpi%{?_isa} = %{version}-%{release} +Requires: %{name}-openmpi%{?_isa} = %{version}-%{release} +Obsoletes: python3-vtk-openmpi-qt < 8.2.0-15 +Provides: python%{python3_pkgversion}-vtk-openmpi-qt = %{version}-%{release} -%description -n python%{python3_pkgversion}-vtk-openmpi +%description -n python%{python3_pkgversion}-%{name}-openmpi Python 3 bindings for VTK with openmpi. %if %{with java} %package openmpi-java Summary: Java bindings for VTK with openmpi -Requires: vtk-openmpi%{?_isa} = %{version}-%{release} -%endif +Requires: %{name}-openmpi%{?_isa} = %{version}-%{release} %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: vtk-openmpi%{?_isa} = %{version}-%{release} +Requires: %{name}-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 @@ -443,16 +534,23 @@ 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: vtk%{?_isa} = %{version}-%{release}, vtk-data = %{version} +Requires: %{name}%{?_isa} = %{version}-%{release}, %{name}-data = %{version} %description testing Testing programs for VTK %package examples Summary: Examples for VTK -Requires: vtk%{?_isa} = %{version}-%{release}, vtk-data = %{version} +Requires: %{name}%{?_isa} = %{version}-%{release}, %{name}-data = %{version} %description examples This package contains many well-commented examples showing how to use @@ -461,159 +559,199 @@ programming languages. %prep -%setup -q -b 1 -n VTK-%{version} -%patch0 -p1 -b .py38 -%patch1 -p1 -b .proj6 -%patch2 -p1 -b .gcc10 +%autosetup -p1 -b 1 -n VTK-%{srcver} # 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 - pugixml - https://gitlab.kitware.com/vtk/vtk/issues/17538 -# TODO - utf8cpp(source) - http://www.vtk.org/Bug/view.php?id=15730 +# 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 - 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{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} +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} do rm -r ThirdParty/*/${x} done +%ifarch %{ix86} +rm -r ThirdParty/xdmf3 +%endif -# Needed to find PEGTL -cp %SOURCE3 CMake/FindPEGTL.cmake +# 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 # Remove unused KWSys items -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 +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 # 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 -%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 - +# 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 %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_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 \\\ + -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 \\\ %endif \ - -DTK_INTERNAL_PATH:PATH=/usr/include/tk-private/generic \\\ + -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 \\\ %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_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" \\\ + -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 \\\ %endif \ - -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 +%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} -%global _vpath_builddir build -%cmake \ +# $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} \ %{vtk_cmake_options} \ - -DBUILD_DOCUMENTATION:BOOL=ON \ - -DBUILD_EXAMPLES:BOOL=ON \ - -DBUILD_TESTING:BOOL=ON -%cmake_build -%cmake_build --target DoxygenDoc vtkMyDoxygenDoc + -DVTK_BUILD_DOCUMENTATION:BOOL=ON \ + -DVTK_BUILD_EXAMPLES:BOOL=ON \ + -DVTK_BUILD_TESTING:BOOL=ON + + + #-DVTK_MODULE_ENABLE_VTK_FiltersParallelStatistics:STRING=YES \ -%if %{with mpich} -%global _vpath_builddir build-mpich -%_mpich_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 -%_mpich_unload -%endif +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 -%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 + +%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 # Remove executable bits from sources (some of which are generated) find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or \ @@ -621,86 +759,45 @@ find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or \ %install -%global _vpath_builddir build %cmake_install -pushd build -# Gather list of non-python/tcl libraries +pushd %{_vpath_builddir} +# Gather list of non-java/python/qt libraries ls %{buildroot}%{_libdir}/*.so.* \ - | 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 + | grep -Ev '(Java|Qt|Python)' | sed -e's,^%{buildroot},,' > libs.list # List of executable test binaries find bin \( -name \*Tests -o -name Test\* -o -name VTKBenchMark \) \ -printf '%f\n' > testing.list -# Install examples too -for filelist in examples.list testing.list; do - for file in `cat $filelist`; do - install -p bin/$file %{buildroot}%{_bindir} - done +# 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 done # Fix up filelist paths -for filelist in examples.list testing.list; do - perl -pi -e's,^,%{_bindir}/,' $filelist -done +perl -pi -e's,^,%{_bindir}/,' testing.list -# 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 +# Install data +mkdir -p %{buildroot}%{_datadir}/vtkdata +cp -alL ExternalData/* %{buildroot}%{_datadir}/vtkdata/ -# Main package contains utils and core libs -cat libs.list popd -%if %{with mpich} -%_mpich_load -%global _vpath_builddir build-mpich -%cmake_install +for mpi in %{mpi_list} +do + module load mpi/$mpi-%{_arch} + %cmake_install -# 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 + # 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 -%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 + # 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 # Remove exec bit from non-scripts and %%doc for file in `find %{buildroot} -type f -perm 0755 \ @@ -712,12 +809,34 @@ 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/ -#Install data -mkdir -p %{buildroot}%{_datadir}/vtkdata -cp -alL build/ExternalData/* %{buildroot}%{_datadir}/vtkdata/ +# 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 +# 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} @@ -729,31 +848,38 @@ 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 build/libs.list -%license Copyright.txt +%files -f %{_vendor}-%{_target_os}-build-serial/libs.list +%license %{_defaultlicensedir}/%{name}/ %doc README.md _docs/Wrapping +%{_datadir}/vr_actions/ +%{_datadir}/xr_actions/ %files devel %doc Utilities/Upgrading +%{_bindir}/vtkParseJava +%{_bindir}/vtkProbeOpenGLVersion %{_bindir}/vtkWrapHierarchy -%{_includedir}/vtk +%{_bindir}/vtkWrapJava +%{_bindir}/vtkWrapSerDes + +%{_includedir}/%{name} %{_libdir}/*.so -%{_libdir}/libvtkWrappingTools.a -%{_libdir}/cmake/vtk/ -%{_docdir}/vtk-8.2/ +%{_libdir}/cmake/%{name}/ +%dir %{_libdir}/%{name} +%{_libdir}/%{name}/hierarchy/ %files -n python%{python3_pkgversion}-vtk %{python3_sitearch}/* -%{_libdir}/*Python3?D.so.* -%exclude %{_libdir}/*QtPython3?D.so.* +%{_libdir}/*Python*.so.* %{_bindir}/vtkpython %{_bindir}/vtkWrapPython %{_bindir}/vtkWrapPythonInit @@ -761,36 +887,37 @@ cat xorg.log %if %{with java} %files java %{_libdir}/*Java.so.* -%{_libdir}/vtk.jar -%{_bindir}/vtkParseJava -%{_bindir}/vtkWrapJava +%dir %{_libdir}/%{name} +%{_libdir}/%{name}/*Java.so +%{_javadir}/vtk.jar %endif %files qt %{_libdir}/lib*Qt*.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.* +%exclude %{_libdir}/*Python*.so.* %if %{with mpich} -%files mpich -f build-mpich/libs.list -%license Copyright.txt +%files mpich -f %{_vendor}-%{_target_os}-build-mpich/libs.list +%license %{_defaultlicensedir}/%{name}-mpich/ %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/ -%{_libdir}/mpich/share/doc/vtk-8.2/ +%dir %{_libdir}/mpich/lib/%{name} +%{_libdir}/mpich/lib/%{name}/hierarchy/ %files -n python%{python3_pkgversion}-vtk-mpich %{_libdir}/mpich/lib/python%{python3_version}/ -%{_libdir}/mpich/lib/*Python3?D.so.* -%exclude %{_libdir}/mpich/lib/*QtPython%{python3_version_nodots}D.so.* +%{_libdir}/mpich/lib/*Python*.so.* %{_libdir}/mpich/bin/pvtkpython %{_libdir}/mpich/bin/vtkpython %{_libdir}/mpich/bin/vtkWrapPython @@ -799,38 +926,38 @@ cat xorg.log %if %{with java} %files mpich-java %{_libdir}/mpich/lib/*Java.so.* -%{_libdir}/mpich/lib/vtk.jar -%{_libdir}/mpich/bin/vtkParseJava -%{_libdir}/mpich/bin/vtkWrapJava +%dir %{_libdir}/mpich/lib/%{name} +%{_libdir}/mpich/lib/%{name}/*Java.so +%{_libdir}/mpich/share/java/vtk.jar %endif %files mpich-qt %{_libdir}/mpich/lib/lib*Qt*.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.* +%exclude %{_libdir}/mpich/lib/*Python*.so.* %endif %if %{with openmpi} -%files openmpi -f build-openmpi/libs.list -%license Copyright.txt +%files openmpi -f %{_vendor}-%{_target_os}-build-openmpi/libs.list +%license %{_defaultlicensedir}/%{name}-openmpi/ %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/ -%{_libdir}/openmpi/share/doc/vtk-8.2/ - +%dir %{_libdir}/openmpi/lib/%{name} +%{_libdir}/openmpi/lib/%{name}/hierarchy/ %files -n python%{python3_pkgversion}-vtk-openmpi %{_libdir}/openmpi/lib/python%{python3_version}/ -%{_libdir}/openmpi/lib/*Python3?D.so.* -%exclude %{_libdir}/openmpi/lib/*QtPython%{python3_version_nodots}D.so.* +%{_libdir}/openmpi/lib/*Python*.so.* %{_libdir}/openmpi/bin/pvtkpython %{_libdir}/openmpi/bin/vtkpython %{_libdir}/openmpi/bin/vtkWrapPython @@ -839,556 +966,27 @@ cat xorg.log %if %{with java} %files openmpi-java %{_libdir}/openmpi/lib/*Java.so.* -%{_libdir}/openmpi/lib/vtk.jar -%{_libdir}/openmpi/bin/vtkParseJava -%{_libdir}/openmpi/bin/vtkWrapJava +%dir %{_libdir}/openmpi/lib/%{name} +%{_libdir}/openmpi/lib/%{name}/*Java.so +%{_libdir}/openmpi/share/java/vtk.jar %endif %files openmpi-qt %{_libdir}/openmpi/lib/lib*Qt*.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.* +%exclude %{_libdir}/openmpi/lib/*Python*.so.* %endif %files data %{_datadir}/vtkdata -%files testing -f build/testing.list +%files doc +%{_docdir}/%{name}/ -%files examples -f build/examples.list +%files testing -f %{_vendor}-%{_target_os}-build-serial/testing.list + +%files examples %doc vtk-examples/Examples %changelog -* 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) +%autochangelog