meshlab: 2016.02 -> 20180627-beta

+38 -98
+13 -10
pkgs/applications/graphics/meshlab/default.nix
··· 1 - { stdenv, fetchFromGitHub, libGLU, qtbase, qtscript, qtxmlpatterns }: 1 + { fetchFromGitHub, libGLU, llvmPackages, qtbase, qtscript, qtxmlpatterns }: 2 2 3 3 let 4 - meshlabRev = "5700f5474c8f90696a8925e2a209a0a8ab506662"; 5 - vcglibRev = "a8e87662b63ee9f4ded5d4699b28d74183040803"; 4 + meshlabRev = "d596d7c086c51fbdfb56050f9c30b55dd0286d4c"; 5 + vcglibRev = "6c3c940e34327322507c703889f9f1cfa73ab183"; 6 + # ^ this should be the latest commit in the vcglib devel branch at the time of the meshlab revision 7 + 8 + stdenv = llvmPackages.stdenv; # only building with clang seems to be tested upstream 6 9 in stdenv.mkDerivation { 7 - name = "meshlab-2016.12"; 10 + name = "meshlab-20180627-beta"; 8 11 9 12 srcs = 10 13 [ ··· 12 15 owner = "cnr-isti-vclab"; 13 16 repo = "meshlab"; 14 17 rev = meshlabRev; 15 - sha256 = "0srrp7zhi86dsg4zsx1615gr26barz38zdl8s03zq6vm1dgzl3cc"; 18 + sha256 = "0xi7wiyy0yi545l5qvccbqahlcsf70mhx829gf7bq29640si4rax"; 16 19 name = "meshlab-${meshlabRev}"; 17 20 }) 18 21 (fetchFromGitHub { 19 22 owner = "cnr-isti-vclab"; 20 23 repo = "vcglib"; 21 24 rev = vcglibRev; 22 - sha256 = "0jh8jc8rn7rci8qr3q03q574fk2hsc3rllysck41j8xkr3rmxz2f"; 25 + sha256 = "0jfgjvf21y9ncmyr7caipy3ardhig7hh9z8miy885c99b925hhwd"; 23 26 name = "vcglib-${vcglibRev}"; 24 27 }) 25 28 ]; 26 29 27 30 sourceRoot = "meshlab-${meshlabRev}"; 28 31 29 - patches = [ ./fix-2016.02.patch ]; 30 - 31 32 hardeningDisable = [ "format" ]; 32 33 enableParallelBuilding = true; 33 34 35 + patches = [ ./fix-20180627-beta.patch ]; 36 + 34 37 buildPhase = '' 35 38 # MeshLab has ../vcglib hardcoded everywhere, so move the source dir 36 39 mv ../vcglib-${vcglibRev} ../vcglib 37 40 38 41 cd src 39 42 export NIX_LDFLAGS="-rpath $out/opt/meshlab $NIX_LDFLAGS" 43 + export QMAKESPEC="linux-clang" 40 44 41 45 pushd external 42 46 qmake -recursive external.pro ··· 53 57 ln -s $out/opt/meshlab/meshlabserver $out/bin/meshlabserver 54 58 ''; 55 59 56 - buildInputs = [ libGLU qtbase qtscript qtxmlpatterns ]; 60 + buildInputs = [ libGLU llvmPackages.openmp qtbase qtscript qtxmlpatterns ]; 57 61 58 62 meta = { 59 63 description = "A system for processing and editing 3D triangular meshes."; ··· 61 65 license = stdenv.lib.licenses.gpl3; 62 66 maintainers = with stdenv.lib.maintainers; [viric]; 63 67 platforms = with stdenv.lib.platforms; linux; 64 - broken = true; # 2018-04-11 65 68 }; 66 69 }
-88
pkgs/applications/graphics/meshlab/fix-2016.02.patch
··· 1 - From 0fd17cd2b6d57e8a2a981a70115c2565ee076d0f Mon Sep 17 00:00:00 2001 2 - From: Marco Callieri <callieri@isti.cnr.it> 3 - Date: Mon, 9 Jan 2017 16:06:14 +0100 4 - Subject: [PATCH 1/3] resolved ambiguity for abs overloads 5 - 6 - 7 - diff --git a/src/meshlabplugins/edit_quality/eqhandle.cpp b/src/meshlabplugins/edit_quality/eqhandle.cpp 8 - index 364d53bf..ef3d4a2d 100644 9 - --- a/src/meshlabplugins/edit_quality/eqhandle.cpp 10 - +++ b/src/meshlabplugins/edit_quality/eqhandle.cpp 11 - @@ -83,7 +83,7 @@ void EqHandle::mouseMoveEvent(QGraphicsSceneMouseEvent *event) 12 - setCursor(Qt::OpenHandCursor); 13 - 14 - QPointF newPos = event->scenePos(); 15 - - qreal handleOffset = abs(newPos.x()-pos().x()); 16 - + qreal handleOffset = std::fabs(newPos.x()-pos().x()); 17 - 18 - if (handleOffset >= std::numeric_limits<float>::epsilon()) 19 - { 20 - -- 21 - 2.15.0 22 - 23 - 24 - From 33cfd5801e59b6c9e34360c75112e6dcb88d807b Mon Sep 17 00:00:00 2001 25 - From: Marco Callieri <callieri@isti.cnr.it> 26 - Date: Tue, 10 Jan 2017 10:05:05 +0100 27 - Subject: [PATCH 2/3] again, fabs ambiguity 28 - 29 - 30 - diff --git a/src/meshlabplugins/edit_quality/eqhandle.cpp b/src/meshlabplugins/edit_quality/eqhandle.cpp 31 - index ef3d4a2d..d29f8c45 100644 32 - --- a/src/meshlabplugins/edit_quality/eqhandle.cpp 33 - +++ b/src/meshlabplugins/edit_quality/eqhandle.cpp 34 - @@ -30,6 +30,7 @@ FIRST RELEASE 35 - #include "eqhandle.h" 36 - #include <QMouseEvent> 37 - #include <QGraphicsSceneMouseEvent> 38 - +#include <math.h> 39 - 40 - EqHandle::EqHandle(CHART_INFO *environment_info, QColor color, QPointF position, 41 - EQUALIZER_HANDLE_TYPE type, EqHandle** handles, qreal* midHandlePercentilePosition, QDoubleSpinBox* spinbox, 42 - @@ -83,7 +84,7 @@ void EqHandle::mouseMoveEvent(QGraphicsSceneMouseEvent *event) 43 - setCursor(Qt::OpenHandCursor); 44 - 45 - QPointF newPos = event->scenePos(); 46 - - qreal handleOffset = std::fabs(newPos.x()-pos().x()); 47 - + qreal handleOffset = fabs(newPos.x()-pos().x()); 48 - 49 - if (handleOffset >= std::numeric_limits<float>::epsilon()) 50 - { 51 - -- 52 - 2.15.0 53 - 54 - 55 - From d717e44f4134ebee03322a6a2a56fce626084a3c Mon Sep 17 00:00:00 2001 56 - From: Patrick Chilton <chpatrick@gmail.com> 57 - Date: Mon, 4 Dec 2017 21:27:23 +0100 58 - Subject: [PATCH 3/3] io_TXT -> io_txt 59 - 60 - 61 - diff --git a/src/meshlab_full.pro b/src/meshlab_full.pro 62 - index 6ea7f1db..2a95c127 100644 63 - --- a/src/meshlab_full.pro 64 - +++ b/src/meshlab_full.pro 65 - @@ -16,7 +16,7 @@ SUBDIRS = common \ 66 - meshlabplugins/io_x3d \ 67 - meshlabplugins/io_expe \ 68 - meshlabplugins/io_pdb \ 69 - - plugins_experimental/io_TXT \ 70 - + plugins_experimental/io_txt \ 71 - # Filter plugins 72 - meshlabplugins/filter_aging \ 73 - meshlabplugins/filter_ao \ 74 - diff --git a/src/plugins_experimental/io_TXT/io_txt.cpp b/src/plugins_experimental/io_txt/io_txt.cpp 75 - similarity index 100% 76 - rename from src/plugins_experimental/io_TXT/io_txt.cpp 77 - rename to src/plugins_experimental/io_txt/io_txt.cpp 78 - diff --git a/src/plugins_experimental/io_TXT/io_txt.h b/src/plugins_experimental/io_txt/io_txt.h 79 - similarity index 100% 80 - rename from src/plugins_experimental/io_TXT/io_txt.h 81 - rename to src/plugins_experimental/io_txt/io_txt.h 82 - diff --git a/src/plugins_experimental/io_TXT/io_txt.pro b/src/plugins_experimental/io_txt/io_txt.pro 83 - similarity index 100% 84 - rename from src/plugins_experimental/io_TXT/io_txt.pro 85 - rename to src/plugins_experimental/io_txt/io_txt.pro 86 - -- 87 - 2.15.0 88 -
+25
pkgs/applications/graphics/meshlab/fix-20180627-beta.patch
··· 1 + diff --git a/src/meshlabplugins/edit_paint/paintbox.cpp b/src/meshlabplugins/edit_paint/paintbox.cpp 2 + index 2097a5b..6bcd1a4 100644 3 + --- a/src/meshlabplugins/edit_paint/paintbox.cpp 4 + +++ b/src/meshlabplugins/edit_paint/paintbox.cpp 5 + @@ -23,6 +23,7 @@ 6 + 7 + #include "paintbox.h" 8 + #include <QFileDialog> 9 + +#include <QAction> 10 + 11 + Paintbox::Paintbox(QWidget * parent, Qt::WindowFlags flags) : QWidget(parent, flags) 12 + { 13 + diff --git a/src/meshlabplugins/render_gdp/shaderDialog.h b/src/meshlabplugins/render_gdp/shaderDialog.h 14 + index a62d3b5..7eb1594 100644 15 + --- a/src/meshlabplugins/render_gdp/shaderDialog.h 16 + +++ b/src/meshlabplugins/render_gdp/shaderDialog.h 17 + @@ -32,6 +32,8 @@ 18 + #include "shaderStructs.h" 19 + #include "ui_shaderDialog.h" 20 + #include <QMap> 21 + +#include <QSlider> 22 + +#include <QLineEdit> 23 + 24 + class QGLWidget; 25 +