Date: Sunday, April 3, 2022 @ 10:17:38 Author: archange Revision: 1180965
archrelease: copy trunk to community-staging-x86_64 Added: paraview/repos/community-staging-x86_64/ paraview/repos/community-staging-x86_64/PKGBUILD (from rev 1180962, paraview/trunk/PKGBUILD) paraview/repos/community-staging-x86_64/paraview-wrapper.sh (from rev 1180962, paraview/trunk/paraview-wrapper.sh) paraview/repos/community-staging-x86_64/revert-smp-info.patch (from rev 1180962, paraview/trunk/revert-smp-info.patch) paraview/repos/community-staging-x86_64/template.sh (from rev 1180963, paraview/trunk/template.sh) -----------------------+ PKGBUILD | 112 +++++++++++++++++++++++++++++++ paraview-wrapper.sh | 7 + revert-smp-info.patch | 172 ++++++++++++++++++++++++++++++++++++++++++++++++ template.sh | 3 4 files changed, 294 insertions(+) Copied: paraview/repos/community-staging-x86_64/PKGBUILD (from rev 1180962, paraview/trunk/PKGBUILD) =================================================================== --- community-staging-x86_64/PKGBUILD (rev 0) +++ community-staging-x86_64/PKGBUILD 2022-04-03 10:17:38 UTC (rev 1180965) @@ -0,0 +1,112 @@ +# Maintainer: Bruno Pagani <archa...@archlinux.org> +# Maintainer: Mathieu Westphal <mathieu.westp...@kitware.com> +# Contributor: Stéphane Gaudreault <steph...@archlinux.org> +# Contributor: <xantare...@hotmail.com> + +_pkg=paraview +_mpi=openmpi +pkgname=${_pkg} +#-${_mpi} +pkgver=5.10.1 +pkgrel=4 +pkgdesc="Parallel Visualization application using VTK (${_mpi} version)" +arch=(x86_64) +url="https://www.paraview.org" +license=(BSD custom) +depends=(boost-libs qt5-tools qt5-svg intel-tbb openmpi ffmpeg + adios2 liblas ospray pdal python-numpy protobuf + cgns double-conversion expat freetype2 gdal gl2ps glew hdf5 libjpeg + jsoncpp libjsoncpp.so libharu libxml2 lz4 xz python-mpi4py netcdf + libogg libpng pugixml libtheora libtiff zlib) +optdepends=(python-matplotlib python-pandas) +makedepends=(cmake boost mesa gcc-fortran ninja qt5-xmlpatterns cli11 eigen utf8cpp) +# pegtl: https://gitlab.kitware.com/vtk/vtk/-/issues/18151 +# rapidjson: https://gitlab.kitware.com/vtk/vtk/-/issues/18366 +# fmt: https://gitlab.kitware.com/paraview/paraview/-/issues/21315 +# catalyst, exprtk, ioss: not packaged +conflicts=(paraview-opt) +replaces=(paraview-opt) +source=(${url}/files/v${pkgver%.*}/ParaView-v${pkgver/R/-R}.tar.xz + paraview-wrapper.sh + template.sh + vtkm-tbb-2021.patch::https://gitlab.kitware.com/vtk/vtk-m/-/merge_requests/2509.patch + vtk-ffmpeg5.patch::https://gitlab.kitware.com/vtk/vtk/-/merge_requests/8863.patch + revert-smp-info.patch) # Derived from https://gitlab.kitware.com/paraview/paraview/-/merge_requests/5131 +sha256sums=('520e3cdfba4f8592be477314c2f6c37ec73fb1d5b25ac30bdbd1c5214758b9c2' + 'd1cdb4a81db280d6b21bee3d9e5f8fc3a87f00a909d33850a1964c72091ec138' + '844d44a14817c656ba8d6998298785125a98f03f7b5ece58d966c226db1e0d83' + '37cff664c4eaacf44ecb995e62e9e54e54880bae0857d598c74660a2159ccb2e' + '955ef22d2541beb9935557ef09a802b6504855a350f27ff056734679da8f0281' + 'fb7496032d3e9fc8575b533127b5d93c7a2d0a1a2c2abad859f4f40ea06e55c7') + +prepare() { + # Specify python version in wrapper + local python_version=$(python -c 'import sys; print(".".join(map(str, sys.version_info[:2])))') + sed -i "s|@PYTHON@|${python_version}|" paraview-wrapper.sh + # Arch required changes + cd ParaView-v${pkgver/R/-R} + # We have a patched libharu + sed -i "s|2.4.0|2.3.0|" VTK/ThirdParty/libharu/CMakeLists.txt + # Fix licences install (upstreamed but not released) + sed -i 's|CACHE PATH "License|CACHE STRING "License|g' VTK/CMakeLists.txt + # Fix build with TBB 2021 + patch -p1 -d VTK/ThirdParty/vtkm/vtkvtkm/vtk-m < ../vtkm-tbb-2021.patch + # Fix build with FFmpeg 5 + patch -p1 -d VTK < ../vtk-ffmpeg5.patch + # https://gitlab.kitware.com/paraview/paraview/-/issues/21323 + patch -p1 -R < ../revert-smp-info.patch +} + +build() { + export CFLAGS+=" -ffat-lto-objects" + export CXXFLAGS+=" -ffat-lto-objects" + cmake -B build -S ParaView-v${pkgver/R/-R} -G Ninja \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/opt/paraview \ + -DCMAKE_INSTALL_LICENSEDIR=share/licenses/paraview \ + -DCMAKE_SKIP_INSTALL_RPATH=OFF \ + -DPARAVIEW_ENABLE_ADIOS2=ON \ + -DPARAVIEW_ENABLE_FFMPEG=ON \ + -DPARAVIEW_ENABLE_FIDES=ON \ + -DPARAVIEW_ENABLE_GDAL=ON \ + -DPARAVIEW_ENABLE_LAS=ON \ + -DPARAVIEW_ENABLE_MOTIONFX=ON \ + -DPARAVIEW_ENABLE_PDAL=ON \ + -DPARAVIEW_ENABLE_RAYTRACING=ON \ + -DPARAVIEW_ENABLE_VISITBRIDGE=ON \ + -DPARAVIEW_ENABLE_XDMF3=ON \ + -DPARAVIEW_USE_MPI=ON \ + -DPARAVIEW_USE_PYTHON=ON \ + -DPARAVIEW_VERSIONED_INSTALL=OFF \ + -DPARAVIEW_BUILD_WITH_EXTERNAL=ON \ + -DVTK_SMP_IMPLEMENTATION_TYPE=TBB \ + -DVTKm_ENABLE_MPI=ON \ + -DCATALYST_USE_MPI=ON \ + -DFIDES_USE_EXTERNAL_RAPIDJSON=OFF \ + -DVTK_MODULE_USE_EXTERNAL_ParaView_vtkcatalyst=OFF \ + -DVTK_MODULE_USE_EXTERNAL_VTK_exprtk=OFF \ + -DVTK_MODULE_USE_EXTERNAL_VTK_fmt=OFF \ + -DVTK_MODULE_USE_EXTERNAL_VTK_ioss=OFF \ + -DVTK_MODULE_USE_EXTERNAL_VTK_pegtl=OFF \ + -Wno-dev + ninja -C build ${MAKEFLAGS} +} + +package() { + DESTDIR="${pkgdir}" ninja -C build install + + # Install wrappers + install -Dm755 paraview-wrapper.sh "${pkgdir}"/usr/bin/paraview-wrapper + for binary in paraview "${pkgdir}"/opt/paraview/bin/pv* + do + install -Dm755 template.sh "${pkgdir}"/usr/bin/${binary##*/} + sed -i "s|@BINARY@|${binary##*/}|" "${pkgdir}"/usr/bin/${binary##*/} + done + + # Install licenses, shortcuts, icons + install -dm755 "${pkgdir}"/usr/share + mv "${pkgdir}"/{opt/paraview,usr}/share/applications + mv "${pkgdir}"/{opt/paraview,usr}/share/icons + mv "${pkgdir}"/{opt/paraview,usr}/share/licenses + mv "${pkgdir}"/{opt/paraview,usr}/share/metainfo +} Copied: paraview/repos/community-staging-x86_64/paraview-wrapper.sh (from rev 1180962, paraview/trunk/paraview-wrapper.sh) =================================================================== --- community-staging-x86_64/paraview-wrapper.sh (rev 0) +++ community-staging-x86_64/paraview-wrapper.sh 2022-04-03 10:17:38 UTC (rev 1180965) @@ -0,0 +1,7 @@ +#!/bin/sh + +export PATH=/opt/paraview/bin:"${PATH}" +export PYTHONPATH=/opt/paraview/lib/python@PYTHON@/site-packages/:"${PYTHONPATH}" +export LD_LIBRARY_PATH=/opt/paraview/lib/:"${LD_LIBRARY_PATH}" + +exec /opt/paraview/bin/"$@" Copied: paraview/repos/community-staging-x86_64/revert-smp-info.patch (from rev 1180962, paraview/trunk/revert-smp-info.patch) =================================================================== --- community-staging-x86_64/revert-smp-info.patch (rev 0) +++ community-staging-x86_64/revert-smp-info.patch 2022-04-03 10:17:38 UTC (rev 1180965) @@ -0,0 +1,172 @@ +From 2f378aea29c406a41d9cb4f8cda5c165efd969ad Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Timoth=C3=A9e=20Couble?= <timothee.cou...@kitware.com> +Date: Mon, 23 Aug 2021 10:41:48 +0200 +Subject: [PATCH] Add SMP backend information in about dialog + +Add in about dialog: +- SMP Tools backend in use +- SMP max number of thread + +Fix #20894 +--- + .../release/dev/AddSMPInfoAboutDialog.md | 5 ++++ + Qt/Components/pqAboutDialog.cxx | 7 ++++++ + Remoting/Core/vtkPVServerInformation.cxx | 23 +++++++++++++++++++ + Remoting/Core/vtkPVServerInformation.h | 18 +++++++++++++++ + 4 files changed, 53 insertions(+) + create mode 100644 Documentation/release/dev/AddSMPInfoAboutDialog.md + +diff --git a/Qt/Components/pqAboutDialog.cxx b/Qt/Components/pqAboutDialog.cxx +index 623d1ceee8..2d0003da15 100644 +--- a/Qt/Components/pqAboutDialog.cxx ++++ b/Qt/Components/pqAboutDialog.cxx +@@ -49,6 +49,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + #include "vtkPVServerInformation.h" + #include "vtkProcessModule.h" + #include "vtkRemotingCoreConfiguration.h" ++#include "vtkSMPTools.h" + #include "vtkSMProxyManager.h" + #include "vtkSMSession.h" + #include "vtkSMViewProxy.h" +@@ -164,6 +165,9 @@ void pqAboutDialog::AddClientInformation() + ::addItem(tree, "Test Directory", QString::fromStdString(pqConfig->testDirectory())); + ::addItem(tree, "Data Directory", QString::fromStdString(pqConfig->dataDirectory())); + ++ ::addItem(tree, "SMP Backend", vtkSMPTools::GetBackend()); ++ ::addItem(tree, "SMP Max Number of Threads", vtkSMPTools::GetEstimatedNumberOfThreads()); ++ + // For local OpenGL info, we ask Qt, as that's more truthful anyways. + QOpenGLContext* ctx = QOpenGLContext::currentContext(); + if (QOpenGLFunctions* f = ctx ? ctx->functions() : nullptr) +@@ -226,6 +230,9 @@ void pqAboutDialog::AddServerInformation(pqServer* server, QTreeWidget* tree) + + ::addItem(tree, "vtkIdType size", QString("%1bits").arg(serverInfo->GetIdTypeSize())); + ++ ::addItem(tree, "SMP Backend", serverInfo->GetSMPBackendName().c_str()); ++ ::addItem(tree, "SMP Max Number of Threads", serverInfo->GetSMPMaxNumberOfThreads()); ++ + vtkSMSession* session = server->session(); + vtkNew<vtkPVPythonInformation> pythonInfo; + session->GatherInformation(vtkPVSession::SERVERS, pythonInfo.GetPointer(), 0); +diff --git a/Remoting/Core/vtkPVServerInformation.cxx b/Remoting/Core/vtkPVServerInformation.cxx +index e7f4071a16..aa6c14d488 100644 +--- a/Remoting/Core/vtkPVServerInformation.cxx ++++ b/Remoting/Core/vtkPVServerInformation.cxx +@@ -24,6 +24,7 @@ + #include "vtkPVSession.h" + #include "vtkProcessModule.h" + #include "vtkRemotingCoreConfiguration.h" ++#include "vtkSMPTools.h" + #if VTK_MODULE_ENABLE_ParaView_nvpipe + #include <nvpipe.h> + #endif +@@ -97,6 +98,9 @@ vtkPVServerInformation::vtkPVServerInformation() + this->IsInTileDisplay = false; + this->IsInCave = false; + this->TileDimensions[0] = this->TileDimensions[1] = 0; ++ ++ this->SMPBackendName = vtkSMPTools::GetBackend() ? vtkSMPTools::GetBackend() : ""; ++ this->SMPMaxNumberOfThreads = vtkSMPTools::GetEstimatedNumberOfThreads(); + } + + //---------------------------------------------------------------------------- +@@ -121,6 +125,8 @@ void vtkPVServerInformation::PrintSelf(ostream& os, vtkIndent indent) + os << indent << "IsInCave: " << this->IsInCave << endl; + os << indent << "TileDimensions: " << this->TileDimensions[0] << ", " << this->TileDimensions[1] + << endl; ++ os << indent << "SMPBackendName: " << this->SMPBackendName << endl; ++ os << indent << "SMPMaxNumberOfThreads: " << this->SMPMaxNumberOfThreads << endl; + } + + //---------------------------------------------------------------------------- +@@ -138,6 +144,8 @@ void vtkPVServerInformation::DeepCopy(vtkPVServerInformation* info) + this->IsInTileDisplay = info->GetIsInTileDisplay(); + this->IsInCave = info->GetIsInCave(); + info->GetTileDimensions(this->TileDimensions); ++ this->SMPBackendName = info->GetSMPBackendName(); ++ this->SMPMaxNumberOfThreads = info->GetSMPMaxNumberOfThreads(); + } + + //---------------------------------------------------------------------------- +@@ -219,6 +227,8 @@ void vtkPVServerInformation::AddInformation(vtkPVInformation* info) + { + this->ClientId = serverInfo->ClientId; + } ++ this->SMPBackendName = serverInfo->GetSMPBackendName(); ++ this->SMPMaxNumberOfThreads = serverInfo->GetSMPMaxNumberOfThreads(); + this->SetIdTypeSize(serverInfo->GetIdTypeSize()); + } + } +@@ -242,6 +252,8 @@ void vtkPVServerInformation::CopyToStream(vtkClientServerStream* css) + *css << this->IsInTileDisplay; + *css << this->IsInCave; + *css << this->TileDimensions[0] << this->TileDimensions[1]; ++ *css << this->SMPBackendName; ++ *css << this->SMPMaxNumberOfThreads; + *css << vtkClientServerStream::End; + } + +@@ -329,6 +341,17 @@ void vtkPVServerInformation::CopyFromStream(const vtkClientServerStream* css) + vtkErrorMacro("Error parsing TileDimensions from message."); + return; + } ++ ++ if (!css->GetArgument(0, idx++, &this->SMPBackendName)) ++ { ++ vtkErrorMacro("Error parsing SMPBackendName from message."); ++ return; ++ } ++ if (!css->GetArgument(0, idx++, &this->SMPMaxNumberOfThreads)) ++ { ++ vtkErrorMacro("Error parsing SMPMaxNumberOfThreads from message."); ++ return; ++ } + } + + //---------------------------------------------------------------------------- +diff --git a/Remoting/Core/vtkPVServerInformation.h b/Remoting/Core/vtkPVServerInformation.h +index fd12529cfe..7f2f1fe085 100644 +--- a/Remoting/Core/vtkPVServerInformation.h ++++ b/Remoting/Core/vtkPVServerInformation.h +@@ -24,6 +24,8 @@ + #ifndef vtkPVServerInformation_h + #define vtkPVServerInformation_h + ++#include <string> ++ + #include "vtkPVInformation.h" + #include "vtkRemotingCoreModule.h" //needed for exports + +@@ -140,6 +142,20 @@ public: + vtkGetMacro(IdTypeSize, int); + //@} + ++ //@{ ++ /** ++ * Get the SMP Tools backend name of the server. ++ */ ++ vtkGetMacro(SMPBackendName, std::string); ++ //@} ++ ++ //@{ ++ /** ++ * Get the max number of threads of the server. ++ */ ++ vtkGetMacro(SMPMaxNumberOfThreads, int); ++ //@} ++ + protected: + vtkPVServerInformation(); + ~vtkPVServerInformation() override; +@@ -158,6 +174,8 @@ protected: + bool IsInTileDisplay; + bool IsInCave; + int TileDimensions[2]; ++ std::string SMPBackendName; ++ int SMPMaxNumberOfThreads; + + private: + vtkPVServerInformation(const vtkPVServerInformation&) = delete; +-- +GitLab + Copied: paraview/repos/community-staging-x86_64/template.sh (from rev 1180963, paraview/trunk/template.sh) =================================================================== --- community-staging-x86_64/template.sh (rev 0) +++ community-staging-x86_64/template.sh 2022-04-03 10:17:38 UTC (rev 1180965) @@ -0,0 +1,3 @@ +#!/bin/sh + +exec paraview-wrapper @BINARY@ "$@"