summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO55
-rw-r--r--3ds.patch27
-rw-r--r--PKGBUILD97
-rw-r--r--bzip2.patch26
-rw-r--r--cpp11_abs.patch21
-rw-r--r--external.patch18
-rw-r--r--fix_local_stl_import.patch20
-rw-r--r--gcc-4.7.patch12
-rw-r--r--lapack.patch11
-rw-r--r--levmar.patch112
-rw-r--r--meshlab.install11
-rw-r--r--meshlabserver_GLU.patch17
-rw-r--r--mpir.patch14
-rw-r--r--muparser.patch14
-rw-r--r--nullptr.patch24
-rw-r--r--qt-4.8.patch11
16 files changed, 327 insertions, 163 deletions
diff --git a/.SRCINFO b/.SRCINFO
index af84440a52c3..fc7cebd31a3b 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,41 +1,50 @@
# Generated by mksrcinfo v8
-# Mon Oct 31 00:09:43 UTC 2016
+# Mon Dec 26 05:14:35 UTC 2016
pkgbase = meshlab
- pkgdesc = System for processing and editing triangular meshes
- pkgver = 1.3.3
- pkgrel = 6
- url = http://meshlab.sourceforge.net/
- install = meshlab.install
+ pkgdesc = System for processing and editing of unstructured 3D models arising in 3D scanning (qt5 version)
+ pkgver = 2016.12
+ pkgrel = 1
+ url = http://www.meshlab.net/
arch = i686
arch = x86_64
license = GPL2
+ makedepends = git
depends = bzip2
+ depends = muparser
+ depends = levmar
+ depends = lib3ds
depends = desktop-file-utils
depends = glu
- depends = lapack
depends = mpir
depends = openssl
- depends = qt4
- noextract = MeshLabSrc_AllInc_v133.tgz
- source = http://downloads.sourceforge.net/project/meshlab/meshlab/MeshLab%20v1.3.3/MeshLabSrc_AllInc_v133.tgz
- source = fix_local_stl_import.patch
- source = gcc-4.7.patch
- source = lapack.patch
- source = mpir.patch
- source = nullptr.patch
+ depends = qt5-base
+ depends = qt5-declarative
+ depends = qt5-script
+ source = git://github.com/cnr-isti-vclab/meshlab.git#tag=v2016.12
+ source = git://github.com/cnr-isti-vclab/vcglib.git#commit=611341b754b08dd2b8d655b92d855de9dcce4a18
+ source = cpp11_abs.patch
source = rpath.patch
- source = qt-4.8.patch
+ source = meshlabserver_GLU.patch
+ source = external.patch
+ source = 3ds.patch
+ source = bzip2.patch
+ source = levmar.patch
+ source = mpir.patch
+ source = muparser.patch
source = meshlab.1
source = meshlabserver.1
source = meshlab.desktop
- md5sums = cbdd83d4f3ed69e7a9837c34ebae307a
- md5sums = 5582b6a1bcd7fd46b4854e1f4a8aea7f
- md5sums = 65d7ff92ad2d6e74119af9c0e377bb37
- md5sums = 4139d3217f1540c67306545213126391
- md5sums = 308f1b90f7de56f9df1485808713ed53
- md5sums = c8689554179380947a118a493a564715
+ md5sums = SKIP
+ md5sums = SKIP
+ md5sums = c1cfb910d20db49ec195d9918036e3c3
md5sums = 2cc1246fc1b01029ae762c82a7dbf364
- md5sums = 1df4ee299f4ad996a05e80d9cf5e5389
+ md5sums = 5d87f00356539f84f37f873f304eb11e
+ md5sums = 038494125d7bd422074fc5635c5579ca
+ md5sums = e51b027eb9d78b82de73c4724b3928cf
+ md5sums = 616b0dcf018f46a490867028d6ddc533
+ md5sums = 1a53a92e12f74520b36e38d9a2311834
+ md5sums = 5dbc0d45dd96a4439857d51c545dafb9
+ md5sums = 64caafa96bef4208d641e889099eba26
md5sums = 32a52b0a8dab1b4816b028b463e7fd9c
md5sums = 0af205a93961dbfcb6b003765f79c4cf
md5sums = 18aed0a21276a22325bf8c32166fb110
diff --git a/3ds.patch b/3ds.patch
new file mode 100644
index 000000000000..287f2bd5cb4b
--- /dev/null
+++ b/3ds.patch
@@ -0,0 +1,27 @@
+--- ../meshlab/src/meshlabplugins/io_3ds/io_3ds.pro 2016-10-31 00:00:28.662690502 +0100
++++ meshlab/src/meshlabplugins/io_3ds/io_3ds.pro 2016-11-01 00:28:59.485188734 +0100
+@@ -14,7 +14,7 @@
+
+ TARGET = io_3ds
+
+-INCLUDEPATH += ../../external/lib3ds-1.3.0/
++INCLUDEPATH += /usr/include/lib3ds/
+
+ # Notes on the paths of lib3ds files.
+ # Once you have compiled the library put the lib files in a dir named lib/XXX/
+@@ -25,11 +25,11 @@
+ win32-msvc2005:LIBS += ../../external/lib/win32-msvc2005/3ds.lib
+ win32-msvc2008:LIBS += ../../external/lib/win32-msvc2008/3ds.lib
+ win32-g++:LIBS += ../../external/lib/win32-gcc/lib3ds.a
+-linux-g++:LIBS += ../../external/lib/linux-g++/lib3ds.a
+-linux-g++-32:LIBS += ../../external/lib/linux-g++-32/lib3ds.a
+-linux-g++-64:LIBS += ../../external/lib/linux-g++-64/lib3ds.a
++linux-g++:LIBS += -l3ds
++linux-g++-32:LIBS += -l3ds
++linux-g++-64:LIBS += -l3ds
+
+-# unix:LIBS += -L../../../../code/lib/lib3ds-1.3.0/lib3ds/lib/unix -l3ds
++unix:LIBS += -l3ds
+
+ # mac:LIBS -= -l3ds
+ # mac:LIBS += ../../../../code/lib/lib3ds-1.3.0/lib/mac/lib3ds.a
diff --git a/PKGBUILD b/PKGBUILD
index 5de33b353d40..36c949d8e8d7 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,79 +1,86 @@
# Maintainer: Jonathan Liu <net147@gmail.com>
pkgname=meshlab
-pkgver=1.3.3
-pkgrel=6
-pkgdesc="System for processing and editing triangular meshes"
+_realpkgname=MeshLab
+pkgver=2016.12
+pkgrel=1
+pkgdesc="System for processing and editing of unstructured 3D models arising in 3D scanning (qt5 version)"
arch=('i686' 'x86_64')
-url="http://meshlab.sourceforge.net/"
+url="http://www.meshlab.net/"
license=('GPL2')
-depends=('bzip2' 'desktop-file-utils' 'glu' 'lapack' 'mpir' 'openssl' 'qt4')
-install="${pkgname}.install"
-source=("http://downloads.sourceforge.net/project/meshlab/meshlab/MeshLab%20v${pkgver//[a-z]/}/MeshLabSrc_AllInc_v${pkgver//./}.tgz"
- "fix_local_stl_import.patch"
- "gcc-4.7.patch"
- "lapack.patch"
- "mpir.patch"
- "nullptr.patch"
+depends=('bzip2' 'muparser' 'levmar' 'lib3ds' 'desktop-file-utils' 'glu' 'mpir' 'openssl' 'qt5-base' 'qt5-declarative' 'qt5-script')
+makedepends=('git')
+source=("git://github.com/cnr-isti-vclab/${pkgname}.git#tag=v2016.12"
+ "git://github.com/cnr-isti-vclab/vcglib.git#commit=611341b754b08dd2b8d655b92d855de9dcce4a18"
+ "cpp11_abs.patch"
"rpath.patch"
- "qt-4.8.patch"
+ "meshlabserver_GLU.patch"
+ "external.patch"
+ "3ds.patch"
+ "bzip2.patch"
+ "levmar.patch"
+ "mpir.patch"
+ "muparser.patch"
"meshlab.1"
"meshlabserver.1"
"meshlab.desktop")
-noextract=("MeshLabSrc_AllInc_v${pkgver//./}.tgz")
-md5sums=('cbdd83d4f3ed69e7a9837c34ebae307a'
- '5582b6a1bcd7fd46b4854e1f4a8aea7f'
- '65d7ff92ad2d6e74119af9c0e377bb37'
- '4139d3217f1540c67306545213126391'
- '308f1b90f7de56f9df1485808713ed53'
- 'c8689554179380947a118a493a564715'
+md5sums=('SKIP'
+ 'SKIP'
+ 'c1cfb910d20db49ec195d9918036e3c3'
'2cc1246fc1b01029ae762c82a7dbf364'
- '1df4ee299f4ad996a05e80d9cf5e5389'
+ '5d87f00356539f84f37f873f304eb11e'
+ '038494125d7bd422074fc5635c5579ca'
+ 'e51b027eb9d78b82de73c4724b3928cf'
+ '616b0dcf018f46a490867028d6ddc533'
+ '1a53a92e12f74520b36e38d9a2311834'
+ '5dbc0d45dd96a4439857d51c545dafb9'
+ '64caafa96bef4208d641e889099eba26'
'32a52b0a8dab1b4816b028b463e7fd9c'
'0af205a93961dbfcb6b003765f79c4cf'
'18aed0a21276a22325bf8c32166fb110')
prepare() {
- cd "${srcdir}"
-
- tar -zxf "MeshLabSrc_AllInc_v${pkgver//./}.tgz"
+ cd "${srcdir}/${pkgname}"
# remove bundled headers and libraries
- rm -fr meshlab/src/external/{inc,lib}
-
- # fix text import breaking for different locales
- patch -Np0 -i "${srcdir}/fix_local_stl_import.patch"
- # fix compile errors with GCC 4.7
- patch -Np0 -i "${srcdir}/qt-4.8.patch"
- # fix Qt 4.8 compatibility
- patch -Np1 -i "${srcdir}/gcc-4.7.patch"
-
- cd "${srcdir}/meshlab/src"
- # build levmar with lapack
- patch -Np2 -i "${srcdir}/lapack.patch"
- # use system mpir
- patch -Np2 -i "${srcdir}/mpir.patch"
- # fix use of bool to return null pointer
- patch -Np2 -i "${srcdir}/nullptr.patch"
+ rm -fr src/external/{inc,lib}
+ # fix wrong case for io_TXT plugin project file
+ mv src/plugins_experimental/io_TXT/io_txt.pro src/plugins_experimental/io_TXT/io_TXT.pro
+ # fix C++11 abs()
+ patch -Np1 -i "${srcdir}/cpp11_abs.patch"
# fix rpath
- patch -Np2 -i "${srcdir}/rpath.patch"
+ patch -Np1 -i "${srcdir}/rpath.patch"
+ # add missing linking of GLU library for meshlabserver
+ patch -Np1 -i "${srcdir}/meshlabserver_GLU.patch"
+ # do not use bundled external libraries
+ patch -Np1 -i "${srcdir}/external.patch"
+ # use system 3ds library
+ patch -Np1 -i "${srcdir}/3ds.patch"
+ # use system bzip2 library
+ patch -Np1 -i "${srcdir}/bzip2.patch"
+ # use system levmar library
+ patch -Np1 -i "${srcdir}/levmar.patch"
+ # use system mpir library
+ patch -Np1 -i "${srcdir}/mpir.patch"
+ # use system muparser library
+ patch -Np1 -i "${srcdir}/muparser.patch"
}
build() {
- cd "${srcdir}/meshlab/src"
+ cd "${srcdir}/${pkgname}/src"
# build external libraries
cd external
- qmake-qt4 -recursive external.pro
+ qmake -recursive external.pro
make
# build meshlab
cd ..
- qmake-qt4 -recursive meshlab_full.pro
+ qmake -recursive meshlab_full.pro
make
}
package() {
- cd "${srcdir}/meshlab/src"
+ cd "${srcdir}/${pkgname}/src"
# install meshlab
install -d -m755 "${pkgdir}/opt"
diff --git a/bzip2.patch b/bzip2.patch
new file mode 100644
index 000000000000..49a822aa746e
--- /dev/null
+++ b/bzip2.patch
@@ -0,0 +1,26 @@
+diff -Naur -r meshlab.orig/src/meshlabplugins/edit_arc3D/edit_arc3D.pro meshlab/src/meshlabplugins/edit_arc3D/edit_arc3D.pro
+--- meshlab.orig/src/meshlabplugins/edit_arc3D/edit_arc3D.pro 2016-10-31 21:31:43.301625217 +0100
++++ meshlab/src/meshlabplugins/edit_arc3D/edit_arc3D.pro 2016-10-31 21:36:46.694965117 +0100
+@@ -35,9 +35,9 @@
+ win32-msvc2013:LIBS += ../../external/lib/win32-msvc2013/bz2.lib
+ win32-msvc2015:LIBS += ../../external/lib/win32-msvc2015/bz2.lib
+ win32-g++:LIBS += ../../external/lib/win32-gcc/libbz2.a
+-linux-g++:LIBS += ../../external/lib/linux-g++/libbz2.a
+-linux-g++-32:LIBS += ../../external/lib/linux-g++-32/libbz2.a
+-linux-g++-64:LIBS += ../../external/lib/linux-g++-64/libbz2.a
++linux-g++:LIBS += -lbz2
++linux-g++-32:LIBS += -lbz2
++linux-g++-64:LIBS += -lbz2
+ mac:LIBS += -lbz2
+
+ win32-msvc2005:INCLUDEPATH += ../../external/bzip2-1.0.5
+@@ -48,9 +48,6 @@
+ win32-msvc2015:INCLUDEPATH += ../../external/bzip2-1.0.5
+
+ win32-g++:INCLUDEPATH += ../../external/bzip2-1.0.5
+-linux-g++:INCLUDEPATH += ../../external/bzip2-1.0.5
+-linux-g++-32:INCLUDEPATH += ../../external/bzip2-1.0.5
+-linux-g++-64:INCLUDEPATH += ../../external/bzip2-1.0.5
+
+
+ CONFIG(release, debug|release) {
diff --git a/cpp11_abs.patch b/cpp11_abs.patch
new file mode 100644
index 000000000000..6078b92c4c9c
--- /dev/null
+++ b/cpp11_abs.patch
@@ -0,0 +1,21 @@
+diff -Naur meshlab.orig/src/meshlabplugins/edit_quality/eqhandle.cpp meshlab/src/meshlabplugins/edit_quality/eqhandle.cpp
+--- meshlab.orig/src/meshlabplugins/edit_quality/eqhandle.cpp 2016-10-30 14:07:42.211338698 +0100
++++ meshlab/src/meshlabplugins/edit_quality/eqhandle.cpp 2016-10-30 14:08:26.774164177 +0100
+
+@@ -30,6 +30,7 @@
+ #include "eqhandle.h"
+ #include <QMouseEvent>
+ #include <QGraphicsSceneMouseEvent>
++#include "math.h" /* fabs() */
+
+ EqHandle::EqHandle(CHART_INFO *environment_info, QColor color, QPointF position,
+ EQUALIZER_HANDLE_TYPE type, EqHandle** handles, qreal* midHandlePercentilePosition, QDoubleSpinBox* spinbox,
+@@ -83,7 +83,7 @@
+ setCursor(Qt::OpenHandCursor);
+
+ QPointF newPos = event->scenePos();
+- qreal handleOffset = abs(newPos.x()-pos().x());
++ qreal handleOffset = fabs(newPos.x()-pos().x());
+
+ if (handleOffset >= std::numeric_limits<float>::epsilon())
+ {
diff --git a/external.patch b/external.patch
new file mode 100644
index 000000000000..f815e3e4640f
--- /dev/null
+++ b/external.patch
@@ -0,0 +1,18 @@
+diff --git a/src/external/external.pro b/src/external/external.pro
+index 7bd97f6..93ed196 100644
+--- meshlab.orig/src/external/external.pro
++++ meshlab/src/external/external.pro
+@@ -2,11 +2,6 @@ config += debug_and_release
+
+ TEMPLATE = subdirs
+
+-SUBDIRS = bzip2-1.0.5/bzip2-1.0.5.pro \
+- muparser_v225/src \
+- levmar-2.3/levmar-2.3.pro \
+- structuresynth-1.5/structuresynth.pro \
++SUBDIRS = structuresynth-1.5/structuresynth.pro \
+ OpenCTM-1.0.3/openctm.pro \
+- jhead-2.95/jhead-2.95.pro \
+- lib3ds-1.3.0/lib3ds/lib3ds.pro
+-# openkinect/openkinect.pro
++ jhead-2.95/jhead-2.95.pro
diff --git a/fix_local_stl_import.patch b/fix_local_stl_import.patch
deleted file mode 100644
index 0b6282ba793b..000000000000
--- a/fix_local_stl_import.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Index: meshlab/src/meshlab/main.cpp
-===================================================================
---- meshlab/src/meshlab/main.cpp (révision 6608)
-+++ meshlab/src/meshlab/main.cpp (copie de travail)
-@@ -20,6 +20,7 @@
- * for more details. *
- * *
- ****************************************************************************/
-+#include <locale.h>
- #include <common/mlapplication.h>
- #include <QMessageBox>
- #include "mainwindow.h"
-@@ -29,6 +30,7 @@
- {
-
- MeshLabApplication app(argc, argv);
-+ setlocale(LC_ALL, "C");
- QLocale::setDefault(QLocale::C);
- QCoreApplication::setOrganizationName(MeshLabApplication::organization());
- #if QT_VERSION >= 0x050100
diff --git a/gcc-4.7.patch b/gcc-4.7.patch
deleted file mode 100644
index 8bf9ca8c3fe5..000000000000
--- a/gcc-4.7.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/vcglib/wrap/ply/plystuff.h b/vcglib/wrap/ply/plystuff.h
-index 3e41e63..4af9508 100644
---- a/vcglib/wrap/ply/plystuff.h
-+++ b/vcglib/wrap/ply/plystuff.h
-@@ -75,6 +75,7 @@ using namespace vcg;
- #define pb_close _close
- #define DIR_SEP "\\"
- #else
-+#include <unistd.h>
- #define pb_mkdir(n) mkdir(n,0755)
- #define pb_access access
- #define pb_stat stat
diff --git a/lapack.patch b/lapack.patch
deleted file mode 100644
index 81c094634050..000000000000
--- a/lapack.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Nur meshlab.orig/src/external/levmar-2.3/lm.h meshlab/src/external/levmar-2.3/lm.h
---- meshlab.orig/src/external/levmar-2.3/lm.h 2010-04-28 17:30:47.000000000 +1000
-+++ meshlab/src/external/levmar-2.3/lm.h 2010-05-13 20:17:35.488505907 +1000
-@@ -27,7 +27,6 @@
-
- /* specify whether to use LAPACK or not. The first option is strongly recommended */
- #define HAVE_LAPACK /* use LAPACK */
-- #undef HAVE_LAPACK /* uncomment this to force not using LAPACK */
-
- /* to avoid the overhead of repeated mallocs(), routines in Axb.c can be instructed to
- * retain working memory between calls. Such a choice, however, renders these routines
diff --git a/levmar.patch b/levmar.patch
new file mode 100644
index 000000000000..a43a2aeb1e6f
--- /dev/null
+++ b/levmar.patch
@@ -0,0 +1,112 @@
+--- ../meshlab/src/meshlabplugins/filter_isoparametrization/filter_isoparametrization.pro 2016-10-31 00:00:30.266005497 +0100
++++ meshlab/src/meshlabplugins/filter_isoparametrization/filter_isoparametrization.pro 2016-10-31 21:55:34.158322851 +0100
+@@ -51,9 +51,9 @@
+ win32-msvc2012:LIBS += ../../external/lib/win32-msvc2012/levmar.lib
+ win32-msvc2015:LIBS += ../../external/lib/win32-msvc2015/levmar.lib
+ win32-g++:LIBS += -L../../external/lib/win32-gcc -llevmar
+-linux-g++:LIBS += -L../../external/lib/linux-g++ -llevmar
+-linux-g++-32:LIBS += -L../../external/lib/linux-g++-32 -llevmar
+-linux-g++-64:LIBS += -L../../external/lib/linux-g++-64 -llevmar
++linux-g++:LIBS += -llevmar
++linux-g++-32:LIBS += -llevmar
++linux-g++-64:LIBS += -llevmar
+ macx:LIBS += $$MACLIBDIR/liblevmar.a
+
+ # Please never ever uncomment this...
+diff -Naur -r ../meshlab/src/meshlabplugins/filter_mutualinfoxml/levmarmethods.h meshlab/src/meshlabplugins/filter_mutualinfoxml/levmarmethods.h
+--- ../meshlab/src/meshlabplugins/filter_mutualinfoxml/levmarmethods.h 2016-10-31 00:00:30.692667284 +0100
++++ meshlab/src/meshlabplugins/filter_mutualinfoxml/levmarmethods.h 2016-10-31 22:10:49.158342653 +0100
+@@ -12,7 +12,7 @@
+
+ #include <list>
+
+-#include "../../external/levmar-2.3/lm.h"
++#include <levmar/levmar.h>
+
+
+ struct LevmarCorrelation {
+diff -Naur -r ../meshlab/src/meshlabplugins/filter_mutualinfoxml/solver.h meshlab/src/meshlabplugins/filter_mutualinfoxml/solver.h
+--- ../meshlab/src/meshlabplugins/filter_mutualinfoxml/solver.h 2016-10-31 00:00:30.692667284 +0100
++++ meshlab/src/meshlabplugins/filter_mutualinfoxml/solver.h 2016-10-31 22:11:16.808343251 +0100
+@@ -5,7 +5,7 @@
+ #include "alignset.h"
+
+ #include "parameters.h"
+-#include "../../external/levmar-2.3/lm.h"
++#include <levmar/levmar.h>
+
+ #include <iostream>
+ #include <fstream>
+diff -Naur -r ../meshlab/src/plugins_experimental/edit_mutualcorrs/levmarmethods.h meshlab/src/plugins_experimental/edit_mutualcorrs/levmarmethods.h
+--- ../meshlab/src/plugins_experimental/edit_mutualcorrs/levmarmethods.h 2016-10-31 00:00:08.816250885 +0100
++++ meshlab/src/plugins_experimental/edit_mutualcorrs/levmarmethods.h 2016-10-31 22:23:35.671692575 +0100
+@@ -12,7 +12,7 @@
+
+ #include <list>
+
+-#include "../../external/levmar-2.3/lm.h"
++#include <levmar/levmar.h>
+
+
+ struct LevmarCorrelation {
+diff -Naur -r ../meshlab/src/plugins_experimental/edit_mutualcorrs/solver.h meshlab/src/plugins_experimental/edit_mutualcorrs/solver.h
+--- ../meshlab/src/plugins_experimental/edit_mutualcorrs/solver.h 2016-10-31 00:00:08.816250885 +0100
++++ meshlab/src/plugins_experimental/edit_mutualcorrs/solver.h 2016-10-31 22:24:05.935026562 +0100
+@@ -5,7 +5,7 @@
+ #include "alignset.h"
+
+ #include "parameters.h"
+-#include "../../external/levmar-2.3/lm.h"
++#include <levmar/levmar.h>
+
+ #include <iostream>
+ #include <fstream>
+diff -Naur -r ../meshlab/src/plugins_experimental/filter_mutualglobal/levmarmethods.h meshlab/src/plugins_experimental/filter_mutualglobal/levmarmethods.h
+--- ../meshlab/src/plugins_experimental/filter_mutualglobal/levmarmethods.h 2016-10-31 00:00:09.476243333 +0100
++++ meshlab/src/plugins_experimental/filter_mutualglobal/levmarmethods.h 2016-10-31 22:30:06.391701030 +0100
+@@ -12,7 +12,7 @@
+
+ #include <list>
+
+-#include "../../external/levmar-2.3/lm.h"
++#include <levmar/levmar.h>
+
+
+ struct LevmarCorrelation {
+diff -Naur -r ../meshlab/src/plugins_experimental/filter_mutualglobal/solver.h meshlab/src/plugins_experimental/filter_mutualglobal/solver.h
+--- ../meshlab/src/plugins_experimental/filter_mutualglobal/solver.h 2016-10-31 00:00:09.476243333 +0100
++++ meshlab/src/plugins_experimental/filter_mutualglobal/solver.h 2016-10-31 22:29:02.815032988 +0100
+@@ -5,7 +5,7 @@
+ #include "alignset.h"
+
+ #include "parameters.h"
+-#include "../../external/levmar-2.3/lm.h"
++#include <levmar/levmar.h>
+
+ #include <iostream>
+ #include <fstream>
+diff --git a/src/plugins_experimental/edit_mutualcorrs/edit_mutualcorrs.pro b/src/plugins_experimental/edit_mutualcorrs/edit_mutualcorrs.pro
+index 049bec6..84f6ca9 100644
+--- a/src/plugins_experimental/edit_mutualcorrs/edit_mutualcorrs.pro
++++ meshlab/src/plugins_experimental/edit_mutualcorrs/edit_mutualcorrs.pro
+@@ -1,7 +1,7 @@
+ include (../../shared.pri)
+
+
+-HEADERS = += ./alignset.h \
++HEADERS += ./alignset.h \
+ ./levmarmethods.h \
+ ./mutual.h \
+ ./parameters.h \
+@@ -29,8 +29,8 @@ FORMS = edit_mutualcorrsDialog.ui
+ win32-msvc2013: LIBS += ../../external/lib/win32-msvc2013/levmar.lib
+ win32-msvc2015: LIBS += ../../external/lib/win32-msvc2015/levmar.lib
+ win32-g++:LIBS += -L../../external -llevmar
+-linux-g++:LIBS += -L../../external/lib/linux-g++ -llevmar
+-linux-g++-32:LIBS += -L../../external/lib/linux-g++-32 -llevmar
+-linux-g++-64:LIBS += -L../../external/lib/linux-g++-64 -llevmar
++linux-g++:LIBS += -llevmar
++linux-g++-32:LIBS += -llevmar
++linux-g++-64:LIBS += -llevmar
+ macx:LIBS += $$MACLIBDIR/liblevmar.a
+
diff --git a/meshlab.install b/meshlab.install
deleted file mode 100644
index 24f85f2328bd..000000000000
--- a/meshlab.install
+++ /dev/null
@@ -1,11 +0,0 @@
-## arg 1: the new package version
-post_install() {
- update-desktop-database -q
-}
-
-## arg 1: the old package version
-post_remove() {
- update-desktop-database -q
-}
-
-# vim:set ts=2 sw=2 et:
diff --git a/meshlabserver_GLU.patch b/meshlabserver_GLU.patch
new file mode 100644
index 000000000000..f8dd4e63e8b7
--- /dev/null
+++ b/meshlabserver_GLU.patch
@@ -0,0 +1,17 @@
+--- meshlab.orig/src/meshlabserver/meshlabserver.pro 2016-10-30 12:35:34.339895028 +0100
++++ meshlab/src/meshlabserver/meshlabserver.pro 2016-10-30 12:34:55.426965662 +0100
+@@ -29,11 +29,11 @@
+ win32-msvc2012: LIBS += -L../distrib -lcommon -lopengl32 -lGLU32
+ win32-msvc2015: LIBS += -L../distrib -lcommon -lopengl32 -lGLU32
+ win32-g++: LIBS += -L../distrib -lcommon
+-linux-g++: LIBS += -L../distrib -lcommon
++linux-g++: LIBS += -L../distrib -lcommon -lGLU
+ linux-g++:QMAKE_LFLAGS += -Wl,-rpath,\''$'$ORIGIN\'
+-linux-g++-32: LIBS += -L../distrib -lcommon
++linux-g++-32: LIBS += -L../distrib -lcommon -lGLU
+ linux-g++-32:QMAKE_LFLAGS += -Wl,-rpath,\''$'$ORIGIN\'
+-linux-g++-64: LIBS += -L../distrib -lcommon
++linux-g++-64: LIBS += -L../distrib -lcommon -lGLU
+ linux-g++-64:QMAKE_LFLAGS += -Wl,-rpath,\''$'$ORIGIN\'
+ #CONFIG (release,debug | release) {
+ # win32-msvc2005:release: LIBS += -L../common/release -lcommon
diff --git a/mpir.patch b/mpir.patch
index 9a318daf0172..cd9e259c83e6 100644
--- a/mpir.patch
+++ b/mpir.patch
@@ -1,11 +1,13 @@
-diff -Nur meshlab.orig/src/meshlabplugins/filter_csg/filter_csg.pro meshlab/src/meshlabplugins/filter_csg/filter_csg.pro
---- meshlab.orig/src/meshlabplugins/filter_csg/filter_csg.pro 2014-04-02 02:59:31.000000000 +1100
-+++ meshlab/src/meshlabplugins/filter_csg/filter_csg.pro 2015-08-26 11:48:18.782952141 +1000
-@@ -18,6 +18,5 @@
- win32-msvc2008:LIBS += ../../external/lib/win32-msvc2008/mpirxx.lib ../../external/lib/win32-msvc2008/mpir.lib
+diff -Nur meshlab-2016.12.orig/src/meshlabplugins/filter_csg/filter_csg.pro meshlab-2016.12/src/meshlabplugins/filter_csg/filter_csg.pro
+--- meshlab-2016.12.orig/src/meshlabplugins/filter_csg/filter_csg.pro 2016-12-23 21:24:59.000000000 +1100
++++ meshlab-2016.12/src/meshlabplugins/filter_csg/filter_csg.pro 2016-12-26 14:08:10.753341652 +1100
+@@ -20,7 +20,5 @@
win32-msvc2010:LIBS += ../../external/lib/win32-msvc2008/mpirxx.lib ../../external/lib/win32-msvc2008/mpir.lib
win32-msvc2012:LIBS += ../../external/lib/win32-msvc2008/mpirxx.lib ../../external/lib/win32-msvc2008/mpir.lib
+ win32-msvc2015:LIBS += ../../external/lib/win32-msvc2015/mpirxx.lib ../../external/lib/win32-msvc2015/mpir.lib
-linux-g++:INCLUDEPATH += ../../external/inc/linux-g++/mpir-2.4.0
-linux-g++:LIBS += ../../external/lib/linux-g++/libmpirxx.a ../../external/lib/linux-g++/libmpir.a
+-linux-g++-64:INCLUDEPATH += ../../external/inc/linux-g++/mpir-2.4.0
+-linux-g++-64:LIBS += ../../external/lib/linux-g++-64/libmpirxx.a ../../external/lib/linux-g++-64/libmpir.a
+linux-g++:LIBS += -lmpirxx -lmpir
-
++linux-g++-64:LIBS += -lmpirxx -lmpir
diff --git a/muparser.patch b/muparser.patch
new file mode 100644
index 000000000000..d500a17d767f
--- /dev/null
+++ b/muparser.patch
@@ -0,0 +1,14 @@
+diff -Naur ../meshlab/src/meshlabplugins/filter_func/filter_func.pro meshlab/src/meshlabplugins/filter_func/filter_func.pro
+--- ../meshlab/src/meshlabplugins/filter_func/filter_func.pro 2016-10-31 00:00:30.459336619 +0100
++++ meshlab/src/meshlabplugins/filter_func/filter_func.pro 2016-10-31 21:42:47.134972919 +0100
+@@ -19,7 +19,7 @@
+ win32-msvc2015:LIBS += ../../external/lib/win32-msvc2015/muparser.lib
+
+ macx:LIBS += $$MACLIBDIR/libmuparser.a
+-linux-g++:LIBS += ../../external/lib/linux-g++/libmuparser.a
+-linux-g++-32:LIBS += ../../external/lib/linux-g++-32/libmuparser.a
+-linux-g++-64:LIBS += ../../external/lib/linux-g++-64/libmuparser.a
++linux-g++:LIBS += -lmuparser
++linux-g++-32:LIBS += -lmuparser
++linux-g++-64:LIBS += -lmuparser
+ win32-g++:LIBS += ../../external/lib/win32-gcc/libmuparser.a
diff --git a/nullptr.patch b/nullptr.patch
deleted file mode 100644
index f212f30fc00d..000000000000
--- a/nullptr.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -Nur meshlab.orig/src/external/structuresynth/ssynth/SyntopiaCore/GLEngine/Raytracer/VoxelStepper.cpp meshlab/src/external/structuresynth/ssynth/SyntopiaCore/GLEngine/Raytracer/VoxelStepper.cpp
---- meshlab.orig/src/external/structuresynth/ssynth/SyntopiaCore/GLEngine/Raytracer/VoxelStepper.cpp 2013-05-23 01:09:58.000000000 +1000
-+++ meshlab/src/external/structuresynth/ssynth/SyntopiaCore/GLEngine/Raytracer/VoxelStepper.cpp 2016-05-23 12:55:48.495725226 +1000
-@@ -122,7 +122,7 @@
- currentT = p;
-
- // We do not intersect grid.
-- if (!found) return false;
-+ if (!found) return 0;
- }
-
- stepX = (dir.x() > 0) ? 1 : -1;
-diff -Nur meshlab.orig/src/external/structuresynth-1.5/ssynth/SyntopiaCore/GLEngine/Raytracer/VoxelStepper.cpp meshlab/src/external/structuresynth-1.5/ssynth/SyntopiaCore/GLEngine/Raytracer/VoxelStepper.cpp
---- meshlab.orig/src/external/structuresynth-1.5/ssynth/SyntopiaCore/GLEngine/Raytracer/VoxelStepper.cpp 2014-02-07 20:38:23.000000000 +1100
-+++ meshlab/src/external/structuresynth-1.5/ssynth/SyntopiaCore/GLEngine/Raytracer/VoxelStepper.cpp 2016-05-23 12:55:58.752439956 +1000
-@@ -122,7 +122,7 @@
- currentT = p;
-
- // We do not intersect grid.
-- if (!found) return false;
-+ if (!found) return 0;
- }
-
- stepX = (dir.x() > 0) ? 1 : -1;
diff --git a/qt-4.8.patch b/qt-4.8.patch
deleted file mode 100644
index e820aceb5bbe..000000000000
--- a/qt-4.8.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Nur meshlab.orig/src/meshlab/meshlab.pro meshlab/src/meshlab/meshlab.pro
---- meshlab.orig/src/meshlab/meshlab.pro 2011-02-15 20:39:47.000000000 +1100
-+++ meshlab/src/meshlab/meshlab.pro 2012-01-07 11:57:18.055586086 +1100
-@@ -85,6 +85,7 @@
- QT += xmlpatterns
- QT += network
- QT += script
-+unix:LIBS += -lGLU
-
-
- # the following line is needed to avoid mismatch between