Gentoo Archives: gentoo-commits

From: Amy Liffey <amynka@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-gfx/meshlab/, media-gfx/meshlab/files/2016.12/
Date: Wed, 05 Sep 2018 05:56:53
Message-Id: 1536126378.a1e4a213fb6bdf0c313e0a04e5e2327e28679625.amynka@gentoo
1 commit: a1e4a213fb6bdf0c313e0a04e5e2327e28679625
2 Author: Amy Liffey <amynka <AT> gentoo <DOT> org>
3 AuthorDate: Wed Sep 5 05:46:18 2018 +0000
4 Commit: Amy Liffey <amynka <AT> gentoo <DOT> org>
5 CommitDate: Wed Sep 5 05:46:18 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a1e4a213
7
8 media-gfx/meshlab: fix asString crash
9
10 - Added patch from fedora
11 Suggested-by: Miro Hrončok <miro <AT> hroncok.cz>
12 Closes: https://bugs.gentoo.org/660542
13 Package-Manager: Portage-2.3.40, Repoman-2.3.9
14
15 .../files/2016.12/meshlab-2016.12-asString.patch | 62 ++++++++++++
16 media-gfx/meshlab/meshlab-2016.12-r3.ebuild | 109 +++++++++++++++++++++
17 2 files changed, 171 insertions(+)
18
19 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
20 new file mode 100644
21 index 00000000000..7e58790590a
22 --- /dev/null
23 +++ b/media-gfx/meshlab/files/2016.12/meshlab-2016.12-asString.patch
24 @@ -0,0 +1,62 @@
25 +From e1410053455a497d32b1e896eb7e99a7224b6832 Mon Sep 17 00:00:00 2001
26 +From: Miro Hrončok <miro@×××××××.cz>
27 +Date: Aug 29 2018 20:40:58 +0000
28 +Subject: Fix FTBFS (#1604819)
29 +
30 +
31 +---
32 +
33 +diff --git a/meshlab-2016.12-qprintable.patch b/meshlab-2016.12-qprintable.patch
34 +new file mode 100644
35 +index 0000000..9a916f6
36 +--- /dev/null
37 ++++ b/meshlab-2016.12-qprintable.patch
38 +@@ -0,0 +1,20 @@
39 ++--- a/src/meshlabserver/mainserver.cpp 2016-12-23 11:24:59.000000000 +0100
40 +++++ b/src/meshlabserver/mainserver.cpp.a 2018-08-29 20:32:03.009295180 +0200
41 ++@@ -897,7 +897,7 @@
42 ++ }
43 ++
44 ++ if (meshDocument.size() < outmeshlist.size())
45 ++- fprintf(logfp, "Error: trying to save %i meshes, but only %i available in the project\n", qPrintable(outmeshlist.size()), qPrintable(meshDocument.size()));
46 +++ fprintf(logfp, "Error: trying to save %i meshes, but only %i available in the project\n", outmeshlist.size(), meshDocument.size());
47 ++ else
48 ++ {
49 ++ for (int ii = 0; ii < outmeshlist.size(); ++ii)
50 ++@@ -911,7 +911,7 @@
51 ++ fprintf(logfp, "Output mesh %s has NOT been saved\n", qPrintable(outmeshlist[ii].filename));
52 ++ }
53 ++ else
54 ++- fprintf(logfp, "Invalid layer %i. Output mesh %s will not be saved\n", qPrintable(ii), qPrintable(outmeshlist[ii].filename));
55 +++ fprintf(logfp, "Invalid layer %i. Output mesh %s will not be saved\n", ii, qPrintable(outmeshlist[ii].filename));
56 ++ }
57 ++
58 ++ }
59 +diff --git a/meshlab-2016.12-qt-includes.patch b/meshlab-2016.12-qt-includes.patch
60 +new file mode 100644
61 +index 0000000..66e4f67
62 +--- /dev/null
63 ++++ b/meshlab-2016.12-qt-includes.patch
64 +@@ -0,0 +1,21 @@
65 ++--- a/src/meshlabplugins/render_gdp/shaderDialog.h 2016-12-23 11:24:59.000000000 +0100
66 +++++ b/src/meshlabplugins/render_gdp/shaderDialog.h.a 2018-08-29 20:55:01.414996789 +0200
67 ++@@ -32,6 +32,8 @@
68 ++ #include "shaderStructs.h"
69 ++ #include "ui_shaderDialog.h"
70 ++ #include <QMap>
71 +++#include <QLineEdit>
72 +++#include <QSlider>
73 ++
74 ++ class QGLWidget;
75 ++
76 ++--- ./meshlab-2016.12/src/meshlabplugins/edit_paint/paintbox.cpp 2016-12-23 11:24:59.000000000 +0100
77 +++++ ./meshlab-2016.12/src/meshlabplugins/edit_paint/paintbox.cpp.a 2018-08-29 21:19:42.411581082 +0200
78 ++@@ -23,6 +23,7 @@
79 ++
80 ++ #include "paintbox.h"
81 ++ #include <QFileDialog>
82 +++#include <QAction>
83 ++
84 ++ Paintbox::Paintbox(QWidget * parent, Qt::WindowFlags flags) : QWidget(parent, flags)
85 ++ {
86 +
87
88 diff --git a/media-gfx/meshlab/meshlab-2016.12-r3.ebuild b/media-gfx/meshlab/meshlab-2016.12-r3.ebuild
89 new file mode 100644
90 index 00000000000..4fc8458b15a
91 --- /dev/null
92 +++ b/media-gfx/meshlab/meshlab-2016.12-r3.ebuild
93 @@ -0,0 +1,109 @@
94 +# Copyright 1999-2018 Gentoo Foundation
95 +# Distributed under the terms of the GNU General Public License v2
96 +
97 +EAPI=6
98 +
99 +inherit qmake-utils
100 +
101 +DESCRIPTION="the open source system for processing and editing 3D triangular meshes"
102 +HOMEPAGE="http://www.meshlab.net"
103 +VCG_VERSION="1.0.1"
104 +SRC_URI="https://github.com/cnr-isti-vclab/meshlab/archive/v${PV}.tar.gz -> ${P}.tar.gz
105 + https://github.com/cnr-isti-vclab/vcglib/archive/v${VCG_VERSION}.tar.gz -> vcglib-${VCG_VERSION}.tar.gz
106 +"
107 +
108 +LICENSE="GPL-2"
109 +SLOT="0"
110 +KEYWORDS="~amd64 ~x86"
111 +IUSE="-minimal"
112 +DEPEND="dev-cpp/eigen:3
113 + dev-cpp/muParser
114 + dev-qt/qtcore:5
115 + dev-qt/qtopengl:5
116 + dev-qt/qtscript:5
117 + dev-qt/qtxmlpatterns:5
118 + >=media-gfx/jhead-3.00-r2
119 + media-libs/glew:0
120 + media-libs/qhull
121 + =media-libs/lib3ds-1*
122 + media-libs/openctm
123 + sci-libs/levmar
124 + sci-libs/mpir"
125 +
126 +RDEPEND="${DEPEND}"
127 +
128 +S="${WORKDIR}/meshlab-${PV}/src"
129 +
130 +PATCHES=(
131 + "${FILESDIR}/${PV}/0001-set-shader-and-texture-paths.patch"
132 + #remove ot working plugins
133 + "${FILESDIR}/${PV}/remove-edit_mutualcorrs.patch"
134 + "${FILESDIR}/${PV}/remove-io_TXT.patch"
135 + #since structure synth doesn't seem to be compiling
136 + "${FILESDIR}/${PV}/0001-disable-filter-ssynth.patch"
137 + #this has been fixed in the tree
138 + "${FILESDIR}/${PV}/0001-disable-edit-quality.patch"
139 + #this causes segfaults
140 + "${FILESDIR}/${PV}/0001-disable-filter-layer.patch"
141 + #for when we use minimal
142 + "${FILESDIR}/${PV}/0001-compile-server.patch"
143 + "${FILESDIR}/${PV}/0001-use-external-lib3ds.patch"
144 + "${FILESDIR}/${PV}/0001-use-external-openctm.patch"
145 + "${FILESDIR}/${PV}/0001-use-external-muParser.patch"
146 + "${FILESDIR}/${PV}/0001-use-external-bzip.patch"
147 + "${FILESDIR}/${PV}/0001-use-external-jhead.patch"
148 + "${FILESDIR}/${PV}/0001-use-external-glew.patch"
149 + #cause gnu stack quickstart related qa
150 + "${FILESDIR}/${PV}/0001-remove-not-sane-plugins.patch"
151 + "${FILESDIR}/${PV}/${P}-fix-plugins-path.patch"
152 + "${FILESDIR}/${PV}/${P}-align1.patch"
153 + "${FILESDIR}/${PV}/${P}-align2.patch"
154 + "${FILESDIR}/${PV}/${P}-asString.patch"
155 + )
156 +
157 +src_prepare(){
158 + mv "${WORKDIR}/vcglib-${VCG_VERSION}" "${WORKDIR}/vcglib" || die "vcglib mv failed"
159 + default
160 + #proof of patchset
161 + #remove libs that are being used from the system
162 + rm -r "external/lib3ds-1.3.0" || die "rm failed"
163 + rm -r "external/OpenCTM-1.0.3" || die "rm failed"
164 + rm -r "external/muparser_v132" || die "rm failed"
165 + rm -r "external/muparser_v225" || die "rm failed"
166 + rm -r "external/bzip2-1.0.5" || die "rm failed"
167 + rm -r "external/jhead-2.95" || die "rm failed"
168 + rm -r "external/glew-1.5.1" || die "rm failed"
169 + rm -r "external/glew-1.7.0" || die "rm failed"
170 + #we still depend on lm.h
171 + #rm -r "external"
172 + rm -r "distrib/plugins/U3D_W32" || die
173 + rm -r "distrib/plugins/U3D_OSX" || die
174 +
175 + # Fix bug 638796
176 + cd "${WORKDIR}" || die
177 + eapply "${FILESDIR}/${PV}/${P}-remove-header.patch"
178 +}
179 +
180 +src_configure() {
181 + use minimal || eqmake5 -r meshlab_full.pro
182 + use minimal && eqmake5 -r meshlab_mini.pro
183 +}
184 +
185 +src_install() {
186 + dobin distrib/{meshlab,meshlabserver}
187 + dolib distrib/libcommon.so.1.0.0
188 + dosym libcommon.so.1.0.0 /usr/$(get_libdir)/libcommon.so.1
189 + dosym libcommon.so.1 /usr/$(get_libdir)/libcommon.so
190 + exeinto /usr/$(get_libdir)/meshlab/plugins
191 + doexe distrib/plugins/*.so
192 + insinto /usr/share/meshlab/shaders
193 + doins -r distrib/shaders/*
194 + insinto /usr/share/meshlab/plugins
195 + doins -r distrib/plugins/*
196 + insinto /usr/share/meshlab/textures
197 + doins -r distrib/textures/*
198 + insinto /usr/share/meshlab/sample
199 + doins -r distrib/sample/*
200 + newicon "${S}"/meshlab/images/eye512.png "${PN}".png
201 + make_desktop_entry meshlab "Meshlab" "${PN}" Graphics
202 +}