mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-12-26 04:43:09 +03:00
paraview: 5.6.3 -> 5.8.0
This commit is contained in:
parent
72158c231a
commit
7d424a400d
@ -1,26 +1,33 @@
|
||||
{ stdenv, fetchFromGitHub, cmake, makeWrapper, qtbase , qttools, python
|
||||
, libGLU, libGL , libXt, qtx11extras, qtxmlpatterns , mkDerivation }:
|
||||
{ boost, cmake, fetchFromGitHub, ffmpeg, qtbase, qtx11extras,
|
||||
qttools, qtxmlpatterns, qtsvg, gdal, gfortran, libXt, makeWrapper,
|
||||
mkDerivation, ninja, openmpi, python3, stdenv, tbb, libGLU, libGL }:
|
||||
|
||||
mkDerivation rec {
|
||||
pname = "paraview";
|
||||
version = "5.6.3";
|
||||
version = "5.8.0";
|
||||
|
||||
# fetching from GitHub instead of taking an "official" source
|
||||
# tarball because of missing submodules there
|
||||
src = fetchFromGitHub {
|
||||
owner = "Kitware";
|
||||
repo = "ParaView";
|
||||
rev = "v${version}";
|
||||
sha256 = "0zcij59pg47c45gfddnpbin13w16smzhcbivzm1k4pg4366wxq1q";
|
||||
sha256 = "1mka6wwg9mbkqi3phs29mvxq6qbc44sspbm4awwamqhilh4grhrj";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
cmakeFlags = [
|
||||
"-DPARAVIEW_ENABLE_PYTHON=ON"
|
||||
"-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON"
|
||||
"-DPARAVIEW_ENABLE_EMBEDDED_DOCUMENTATION=OFF"
|
||||
"-DOpenGL_GL_PREFERENCE=GLVND"
|
||||
];
|
||||
# Avoid error: format not a string literal and
|
||||
# no format arguments [-Werror=format-security]
|
||||
preConfigure = ''
|
||||
substituteInPlace VTK/Common/Core/vtkLogger.h \
|
||||
--replace 'vtkLogScopeF(verbosity_name, __func__)' 'vtkLogScopeF(verbosity_name, "%s", __func__)'
|
||||
|
||||
substituteInPlace VTK/Common/Core/vtkLogger.h \
|
||||
--replace 'vtkVLogScopeF(level, __func__)' 'vtkVLogScopeF(level, "%s", __func__)'
|
||||
'';
|
||||
|
||||
# Find the Qt platform plugin "minimal"
|
||||
patchPhase = ''
|
||||
export QT_PLUGIN_PATH=${qtbase.bin}/${qtbase.qtPluginPrefix}
|
||||
'';
|
||||
|
||||
# During build, binaries are called that rely on freshly built
|
||||
# libraries. These reside in build/lib, and are not found by
|
||||
@ -29,37 +36,50 @@ mkDerivation rec {
|
||||
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/lib:$PWD/VTK/ThirdParty/vtkm/vtk-m/lib
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
cmakeFlags = [
|
||||
"-DCMAKE_BUILD_TYPE=Release"
|
||||
"-DPARAVIEW_ENABLE_FFMPEG=ON"
|
||||
"-DPARAVIEW_ENABLE_GDAL=ON"
|
||||
"-DPARAVIEW_ENABLE_MOTIONFX=ON"
|
||||
"-DPARAVIEW_ENABLE_VISITBRIDGE=ON"
|
||||
"-DPARAVIEW_ENABLE_XDMF3=ON"
|
||||
"-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON"
|
||||
"-DPARAVIEW_USE_MPI=ON"
|
||||
"-DPARAVIEW_USE_PYTHON=ON"
|
||||
"-DVTK_SMP_IMPLEMENTATION_TYPE=TBB"
|
||||
"-DVTKm_ENABLE_MPI=ON"
|
||||
"-DCMAKE_INSTALL_LIBDIR=lib"
|
||||
"-DCMAKE_INSTALL_INCLUDEDIR=include"
|
||||
"-DCMAKE_INSTALL_BINDIR=bin"
|
||||
"-DOpenGL_GL_PREFERENCE=GLVND"
|
||||
"-GNinja"
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
makeWrapper
|
||||
ninja
|
||||
gfortran
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
python
|
||||
python.pkgs.numpy
|
||||
libGLU libGL
|
||||
libXt
|
||||
openmpi
|
||||
(python3.withPackages (ps: with ps; [ numpy matplotlib mpi4py ]))
|
||||
tbb
|
||||
boost
|
||||
ffmpeg
|
||||
gdal
|
||||
qtbase
|
||||
qtx11extras
|
||||
qttools
|
||||
qtxmlpatterns
|
||||
qtsvg
|
||||
];
|
||||
|
||||
# Paraview links into the Python library, resolving symbolic links on the way,
|
||||
# so we need to put the correct sitePackages (with numpy) back on the path
|
||||
preFixup = ''
|
||||
wrapQtApp $out/bin/paraview \
|
||||
--prefix PYTHONPATH "${python.pkgs.numpy}/${python.sitePackages}"
|
||||
wrapQtApp $out/bin/pvbatch \
|
||||
--prefix PYTHONPATH "${python.pkgs.numpy}/${python.sitePackages}"
|
||||
wrapQtApp $out/bin/pvpython \
|
||||
--prefix PYTHONPATH "${python.pkgs.numpy}/${python.sitePackages}"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "http://www.paraview.org/";
|
||||
homepage = "https://www.paraview.org/";
|
||||
description = "3D Data analysis and visualization application";
|
||||
license = licenses.free;
|
||||
maintainers = with maintainers; [ guibert ];
|
||||
|
Loading…
Reference in New Issue
Block a user