diff options
author | Amy Liffey <amynka@gentoo.org> | 2018-09-05 06:46:18 +0100 |
---|---|---|
committer | Amy Liffey <amynka@gentoo.org> | 2018-09-05 06:46:18 +0100 |
commit | a1e4a213fb6bdf0c313e0a04e5e2327e28679625 (patch) | |
tree | 07ede8bcbe38de39eccae7da7928aff0f509c37e /media-gfx/meshlab | |
parent | dev-ruby/shotgun: add ruby25 (diff) | |
download | gentoo-a1e4a213fb6bdf0c313e0a04e5e2327e28679625.tar.gz gentoo-a1e4a213fb6bdf0c313e0a04e5e2327e28679625.tar.bz2 gentoo-a1e4a213fb6bdf0c313e0a04e5e2327e28679625.zip |
media-gfx/meshlab: fix asString crash
- Added patch from fedora
Suggested-by: Miro Hrončok <miro@hroncok.cz>
Closes: https://bugs.gentoo.org/660542
Package-Manager: Portage-2.3.40, Repoman-2.3.9
Diffstat (limited to 'media-gfx/meshlab')
-rw-r--r-- | media-gfx/meshlab/files/2016.12/meshlab-2016.12-asString.patch | 62 | ||||
-rw-r--r-- | media-gfx/meshlab/meshlab-2016.12-r3.ebuild | 109 |
2 files changed, 171 insertions, 0 deletions
diff --git a/media-gfx/meshlab/files/2016.12/meshlab-2016.12-asString.patch b/media-gfx/meshlab/files/2016.12/meshlab-2016.12-asString.patch new file mode 100644 index 000000000000..7e58790590a8 --- /dev/null +++ b/media-gfx/meshlab/files/2016.12/meshlab-2016.12-asString.patch @@ -0,0 +1,62 @@ +From e1410053455a497d32b1e896eb7e99a7224b6832 Mon Sep 17 00:00:00 2001 +From: Miro Hrončok <miro@hroncok.cz> +Date: Aug 29 2018 20:40:58 +0000 +Subject: Fix FTBFS (#1604819) + + +--- + +diff --git a/meshlab-2016.12-qprintable.patch b/meshlab-2016.12-qprintable.patch +new file mode 100644 +index 0000000..9a916f6 +--- /dev/null ++++ b/meshlab-2016.12-qprintable.patch +@@ -0,0 +1,20 @@ ++--- a/src/meshlabserver/mainserver.cpp 2016-12-23 11:24:59.000000000 +0100 +++++ b/src/meshlabserver/mainserver.cpp.a 2018-08-29 20:32:03.009295180 +0200 ++@@ -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/meshlab-2016.12-qt-includes.patch b/meshlab-2016.12-qt-includes.patch +new file mode 100644 +index 0000000..66e4f67 +--- /dev/null ++++ b/meshlab-2016.12-qt-includes.patch +@@ -0,0 +1,21 @@ ++--- a/src/meshlabplugins/render_gdp/shaderDialog.h 2016-12-23 11:24:59.000000000 +0100 +++++ b/src/meshlabplugins/render_gdp/shaderDialog.h.a 2018-08-29 20:55:01.414996789 +0200 ++@@ -32,6 +32,8 @@ ++ #include "shaderStructs.h" ++ #include "ui_shaderDialog.h" ++ #include <QMap> +++#include <QLineEdit> +++#include <QSlider> ++ ++ class QGLWidget; ++ ++--- ./meshlab-2016.12/src/meshlabplugins/edit_paint/paintbox.cpp 2016-12-23 11:24:59.000000000 +0100 +++++ ./meshlab-2016.12/src/meshlabplugins/edit_paint/paintbox.cpp.a 2018-08-29 21:19:42.411581082 +0200 ++@@ -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-r3.ebuild b/media-gfx/meshlab/meshlab-2016.12-r3.ebuild new file mode 100644 index 000000000000..4fc8458b15a7 --- /dev/null +++ b/media-gfx/meshlab/meshlab-2016.12-r3.ebuild @@ -0,0 +1,109 @@ +# Copyright 1999-2018 Gentoo Foundation +# 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" + ) + +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 +} |