diff options
3 files changed, 153 insertions, 0 deletions
diff --git a/media-gfx/meshlab/files/2016.12/meshlab-2016.12-qprintable.patch b/media-gfx/meshlab/files/2016.12/meshlab-2016.12-qprintable.patch new file mode 100644 index 000000000000..61965baa9a9a --- /dev/null +++ b/media-gfx/meshlab/files/2016.12/meshlab-2016.12-qprintable.patch @@ -0,0 +1,20 @@ +--- a/meshlabserver/mainserver.cpp ++++ b/meshlabserver/mainserver.cpp +@@ -897,7 +897,7 @@ + } + + if (meshDocument.size() < outmeshlist.size()) +- fprintf(logfp, "Error: trying to save %i meshes, but only %i available in the project\n", qPrintable(outmeshlist.size()), qPrintable(meshDocument.size())); ++ fprintf(logfp, "Error: trying to save %i meshes, but only %i available in the project\n", outmeshlist.size(), meshDocument.size()); + else + { + for (int ii = 0; ii < outmeshlist.size(); ++ii) +@@ -911,7 +911,7 @@ + fprintf(logfp, "Output mesh %s has NOT been saved\n", qPrintable(outmeshlist[ii].filename)); + } + else +- fprintf(logfp, "Invalid layer %i. Output mesh %s will not be saved\n", qPrintable(ii), qPrintable(outmeshlist[ii].filename)); ++ fprintf(logfp, "Invalid layer %i. Output mesh %s will not be saved\n", ii, qPrintable(outmeshlist[ii].filename)); + } + + } diff --git a/media-gfx/meshlab/files/2016.12/meshlab-2016.12-qt-includes.patch b/media-gfx/meshlab/files/2016.12/meshlab-2016.12-qt-includes.patch new file mode 100644 index 000000000000..0991bfc71e15 --- /dev/null +++ b/media-gfx/meshlab/files/2016.12/meshlab-2016.12-qt-includes.patch @@ -0,0 +1,22 @@ +--- a/meshlabplugins/render_gdp/shaderDialog.h ++++ b/meshlabplugins/render_gdp/shaderDialog.h +@@ -32,6 +32,8 @@ + #include "shaderStructs.h" + #include "ui_shaderDialog.h" + #include <QMap> ++#include <QLineEdit> ++#include <QSlider> + + class QGLWidget; + +--- a/meshlabplugins/edit_paint/paintbox.cpp ++++ b/meshlabplugins/edit_paint/paintbox.cpp +@@ -23,6 +23,7 @@ + + #include "paintbox.h" + #include <QFileDialog> ++#include <QAction> + + Paintbox::Paintbox(QWidget * parent, Qt::WindowFlags flags) : QWidget(parent, flags) + { + diff --git a/media-gfx/meshlab/meshlab-2016.12-r4.ebuild b/media-gfx/meshlab/meshlab-2016.12-r4.ebuild new file mode 100644 index 000000000000..b9df6e46bbc5 --- /dev/null +++ b/media-gfx/meshlab/meshlab-2016.12-r4.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit qmake-utils + +DESCRIPTION="the open source system for processing and editing 3D triangular meshes" +HOMEPAGE="http://www.meshlab.net" +VCG_VERSION="1.0.1" +SRC_URI="https://github.com/cnr-isti-vclab/meshlab/archive/v${PV}.tar.gz -> ${P}.tar.gz + https://github.com/cnr-isti-vclab/vcglib/archive/v${VCG_VERSION}.tar.gz -> vcglib-${VCG_VERSION}.tar.gz +" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="-minimal" +DEPEND="dev-cpp/eigen:3 + dev-cpp/muParser + dev-qt/qtcore:5 + dev-qt/qtopengl:5 + dev-qt/qtscript:5 + dev-qt/qtxmlpatterns:5 + >=media-gfx/jhead-3.00-r2 + media-libs/glew:0 + media-libs/qhull + =media-libs/lib3ds-1* + media-libs/openctm + sci-libs/levmar + sci-libs/mpir" + +RDEPEND="${DEPEND}" + +S="${WORKDIR}/meshlab-${PV}/src" + +PATCHES=( + "${FILESDIR}/${PV}/0001-set-shader-and-texture-paths.patch" + #remove ot working plugins + "${FILESDIR}/${PV}/remove-edit_mutualcorrs.patch" + "${FILESDIR}/${PV}/remove-io_TXT.patch" + #since structure synth doesn't seem to be compiling + "${FILESDIR}/${PV}/0001-disable-filter-ssynth.patch" + #this has been fixed in the tree + "${FILESDIR}/${PV}/0001-disable-edit-quality.patch" + #this causes segfaults + "${FILESDIR}/${PV}/0001-disable-filter-layer.patch" + #for when we use minimal + "${FILESDIR}/${PV}/0001-compile-server.patch" + "${FILESDIR}/${PV}/0001-use-external-lib3ds.patch" + "${FILESDIR}/${PV}/0001-use-external-openctm.patch" + "${FILESDIR}/${PV}/0001-use-external-muParser.patch" + "${FILESDIR}/${PV}/0001-use-external-bzip.patch" + "${FILESDIR}/${PV}/0001-use-external-jhead.patch" + "${FILESDIR}/${PV}/0001-use-external-glew.patch" + #cause gnu stack quickstart related qa + "${FILESDIR}/${PV}/0001-remove-not-sane-plugins.patch" + "${FILESDIR}/${PV}/${P}-fix-plugins-path.patch" + "${FILESDIR}/${PV}/${P}-align1.patch" + "${FILESDIR}/${PV}/${P}-align2.patch" + "${FILESDIR}/${PV}/${P}-asString.patch" + "${FILESDIR}/${PV}/${P}-qprintable.patch" + "${FILESDIR}/${PV}/${P}-qt-includes.patch" + ) + +src_prepare(){ + mv "${WORKDIR}/vcglib-${VCG_VERSION}" "${WORKDIR}/vcglib" || die "vcglib mv failed" + default + #proof of patchset + #remove libs that are being used from the system + rm -r "external/lib3ds-1.3.0" || die "rm failed" + rm -r "external/OpenCTM-1.0.3" || die "rm failed" + rm -r "external/muparser_v132" || die "rm failed" + rm -r "external/muparser_v225" || die "rm failed" + rm -r "external/bzip2-1.0.5" || die "rm failed" + rm -r "external/jhead-2.95" || die "rm failed" + rm -r "external/glew-1.5.1" || die "rm failed" + rm -r "external/glew-1.7.0" || die "rm failed" + #we still depend on lm.h + #rm -r "external" + rm -r "distrib/plugins/U3D_W32" || die + rm -r "distrib/plugins/U3D_OSX" || die + + # Fix bug 638796 + cd "${WORKDIR}" || die + eapply "${FILESDIR}/${PV}/${P}-remove-header.patch" +} + +src_configure() { + use minimal || eqmake5 -r meshlab_full.pro + use minimal && eqmake5 -r meshlab_mini.pro +} + +src_install() { + dobin distrib/{meshlab,meshlabserver} + dolib distrib/libcommon.so.1.0.0 + dosym libcommon.so.1.0.0 /usr/$(get_libdir)/libcommon.so.1 + dosym libcommon.so.1 /usr/$(get_libdir)/libcommon.so + exeinto /usr/$(get_libdir)/meshlab/plugins + doexe distrib/plugins/*.so + insinto /usr/share/meshlab/shaders + doins -r distrib/shaders/* + insinto /usr/share/meshlab/plugins + doins -r distrib/plugins/* + insinto /usr/share/meshlab/textures + doins -r distrib/textures/* + insinto /usr/share/meshlab/sample + doins -r distrib/sample/* + newicon "${S}"/meshlab/images/eye512.png "${PN}".png + make_desktop_entry meshlab "Meshlab" "${PN}" Graphics +} |