1 |
commit: c471ffa6fd63b3e06303971dada6b26c8abb4712 |
2 |
Author: David Seifert <soap <AT> gentoo <DOT> org> |
3 |
AuthorDate: Mon Mar 28 10:54:30 2016 +0000 |
4 |
Commit: David Seifert <soap <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon Mar 28 10:59:35 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c471ffa6 |
7 |
|
8 |
media-gfx/scantailor: Fix BOOST_JOIN with >=dev-libs/boost-1.58.0 |
9 |
|
10 |
Gentoo-Bug: 574634 |
11 |
* Also fix namespace clashes between boost::lambda and |
12 |
boost::placeholder. |
13 |
|
14 |
Package-Manager: portage-2.2.28 |
15 |
|
16 |
media-gfx/scantailor/Manifest | 1 + |
17 |
...cantailor-0.9.11.1-boost-lambda-namespace.patch | 144 +++++++++++++++++++++ |
18 |
media-gfx/scantailor/scantailor-0.9.11.1.ebuild | 11 +- |
19 |
3 files changed, 154 insertions(+), 2 deletions(-) |
20 |
|
21 |
diff --git a/media-gfx/scantailor/Manifest b/media-gfx/scantailor/Manifest |
22 |
index a581afc..2cae743 100644 |
23 |
--- a/media-gfx/scantailor/Manifest |
24 |
+++ b/media-gfx/scantailor/Manifest |
25 |
@@ -1,2 +1,3 @@ |
26 |
DIST scantailor-0.9.10.tar.gz 1124348 SHA256 0b574eabfb65e4dcf3915d00ad3da31d464060458ffaeb49e4257e97301f93a0 SHA512 e2221a381c7c19ea2f7f5a791fec8ed3fd21e9065418e8cadb6ec34e95f9c9a4ec94effe6543087bb06b483c0cb08d40fd6cce63b065e91d97f756d1afa458b1 WHIRLPOOL 261ea78474fd644a407140dfb535d282d4413fbf79eba1b36ccf032b247f57d55560fc5c3a14db2f6fdbcb7351fba9aad64612950151422a88d77395d9ab03ee |
27 |
+DIST scantailor-0.9.11.1-boost-join-moc.patch 53044 SHA256 c00772facafdb696bf0e36ba216050cf3ec5b45c15e0099e6ef4935bffa9ba00 SHA512 77c6ee7988834c8694f9c09182fcdf87bdba64f3e69c9cc9b8347c4980a56c484a4368643f1c608ebbaeb469d4d6bc8d1a62f95fce18bc41dfce68137a457a61 WHIRLPOOL 0e5b04a65a5c47deeea6b3ec192549e50b22825df506bda2b87fbc1aa0254993a33c7c7907af1520c7e0ae4264a9a00b9e92d6114b1aee664408c69bb9bdcf00 |
28 |
DIST scantailor-0.9.11.1.tar.gz 1190198 SHA256 881647a4172c55a067a7b6687965441cf21176d79d93075b22a373ea9accd8d3 SHA512 cec327fd12144f7cee5043adfee3880c75fb147474e4c3b5166385f7a8f47cb5650ed2df930bbe1f4b8ac2c7229a887ecba1ca105b47b1023f5d3d7d7b54bdb4 WHIRLPOOL c064837bd4d5f4c3fbfa260493f3eccecff59910c934005148975f2f00511539ae0e66535d0a57bbf0458022c8ec249faa7f3df40ed8d89b2683530b885e4f6b |
29 |
|
30 |
diff --git a/media-gfx/scantailor/files/scantailor-0.9.11.1-boost-lambda-namespace.patch b/media-gfx/scantailor/files/scantailor-0.9.11.1-boost-lambda-namespace.patch |
31 |
new file mode 100644 |
32 |
index 0000000..411341c |
33 |
--- /dev/null |
34 |
+++ b/media-gfx/scantailor/files/scantailor-0.9.11.1-boost-lambda-namespace.patch |
35 |
@@ -0,0 +1,144 @@ |
36 |
+Namespace qualify bind, in order to avoid clashes with boost::placeholder |
37 |
+Patches taken from FreeBSD: |
38 |
+https://svnweb.freebsd.org/ports?view=revision&revision=408592 |
39 |
+ |
40 |
+--- scantailor-0.9.11.1/filters/deskew/Filter.cpp |
41 |
++++ scantailor-0.9.11.1/filters/deskew/Filter.cpp |
42 |
+@@ -85,9 +85,9 @@ |
43 |
+ |
44 |
+ QDomElement filter_el(doc.createElement("deskew")); |
45 |
+ writer.enumPages( |
46 |
+- bind( |
47 |
++ boost::lambda::bind( |
48 |
+ &Filter::writePageSettings, |
49 |
+- this, boost::ref(doc), var(filter_el), _1, _2 |
50 |
++ this, boost::ref(doc), var(filter_el), boost::lambda::_1, boost::lambda::_2 |
51 |
+ ) |
52 |
+ ); |
53 |
+ |
54 |
+--- scantailor-0.9.11.1/filters/fix_orientation/Filter.cpp |
55 |
++++ scantailor-0.9.11.1/filters/fix_orientation/Filter.cpp |
56 |
+@@ -100,9 +100,9 @@ |
57 |
+ |
58 |
+ QDomElement filter_el(doc.createElement("fix-orientation")); |
59 |
+ writer.enumImages( |
60 |
+- bind( |
61 |
++ boost::lambda::bind( |
62 |
+ &Filter::writeImageSettings, |
63 |
+- this, boost::ref(doc), var(filter_el), _1, _2 |
64 |
++ this, boost::ref(doc), var(filter_el), boost::lambda::_1, boost::lambda::_2 |
65 |
+ ) |
66 |
+ ); |
67 |
+ |
68 |
+--- scantailor-0.9.11.1/filters/output/Filter.cpp |
69 |
++++ scantailor-0.9.11.1/filters/output/Filter.cpp |
70 |
+@@ -93,9 +93,9 @@ |
71 |
+ |
72 |
+ QDomElement filter_el(doc.createElement("output")); |
73 |
+ writer.enumPages( |
74 |
+- bind( |
75 |
++ boost::lambda::bind( |
76 |
+ &Filter::writePageSettings, |
77 |
+- this, boost::ref(doc), var(filter_el), _1, _2 |
78 |
++ this, boost::ref(doc), var(filter_el), boost::lambda::_1, boost::lambda::_2 |
79 |
+ ) |
80 |
+ ); |
81 |
+ |
82 |
+--- scantailor-0.9.11.1/filters/page_layout/Filter.cpp |
83 |
++++ scantailor-0.9.11.1/filters/page_layout/Filter.cpp |
84 |
+@@ -136,9 +136,9 @@ |
85 |
+ |
86 |
+ QDomElement filter_el(doc.createElement("page-layout")); |
87 |
+ writer.enumPages( |
88 |
+- bind( |
89 |
++ boost::lambda::bind( |
90 |
+ &Filter::writePageSettings, |
91 |
+- this, boost::ref(doc), var(filter_el), _1, _2 |
92 |
++ this, boost::ref(doc), var(filter_el), boost::lambda::_1, boost::lambda::_2 |
93 |
+ ) |
94 |
+ ); |
95 |
+ |
96 |
+--- scantailor-0.9.11.1/filters/page_split/Filter.cpp |
97 |
++++ scantailor-0.9.11.1/filters/page_split/Filter.cpp |
98 |
+@@ -110,9 +110,9 @@ |
99 |
+ ); |
100 |
+ |
101 |
+ writer.enumImages( |
102 |
+- bind( |
103 |
++ boost::lambda::bind( |
104 |
+ &Filter::writeImageSettings, |
105 |
+- this, boost::ref(doc), var(filter_el), _1, _2 |
106 |
++ this, boost::ref(doc), var(filter_el), boost::lambda::_1, boost::lambda::_2 |
107 |
+ ) |
108 |
+ ); |
109 |
+ |
110 |
+--- scantailor-0.9.11.1/filters/select_content/Filter.cpp |
111 |
++++ scantailor-0.9.11.1/filters/select_content/Filter.cpp |
112 |
+@@ -119,9 +119,9 @@ |
113 |
+ |
114 |
+ QDomElement filter_el(doc.createElement("select-content")); |
115 |
+ writer.enumPages( |
116 |
+- bind( |
117 |
++ boost::lambda::bind( |
118 |
+ &Filter::writePageSettings, |
119 |
+- this, boost::ref(doc), var(filter_el), _1, _2 |
120 |
++ this, boost::ref(doc), var(filter_el), boost::lambda::_1, boost::lambda::_2 |
121 |
+ ) |
122 |
+ ); |
123 |
+ |
124 |
+--- scantailor-0.9.11.1/MainWindow.cpp |
125 |
++++ scantailor-0.9.11.1/MainWindow.cpp |
126 |
+@@ -1898,8 +1898,8 @@ |
127 |
+ ImageFileInfo image_file_info(file_info, std::vector<ImageMetadata>()); |
128 |
+ |
129 |
+ ImageMetadataLoader::Status const status = ImageMetadataLoader::load( |
130 |
+- files.at(i), bind(&std::vector<ImageMetadata>::push_back, |
131 |
+- boost::ref(image_file_info.imageInfo()), _1) |
132 |
++ files.at(i), boost::lambda::bind(&std::vector<ImageMetadata>::push_back, |
133 |
++ boost::ref(image_file_info.imageInfo()), boost::lambda::_1) |
134 |
+ ); |
135 |
+ |
136 |
+ if (status == ImageMetadataLoader::LOADED) { |
137 |
+@@ -1921,7 +1921,7 @@ |
138 |
+ } |
139 |
+ |
140 |
+ // Check if there is at least one DPI that's not OK. |
141 |
+- if (std::find_if(new_files.begin(), new_files.end(), !bind(&ImageFileInfo::isDpiOK, _1)) != new_files.end()) { |
142 |
++ if (std::find_if(new_files.begin(), new_files.end(), !boost::lambda::bind(&ImageFileInfo::isDpiOK, boost::lambda::_1)) != new_files.end()) { |
143 |
+ |
144 |
+ std::auto_ptr<FixDpiDialog> dpi_dialog(new FixDpiDialog(new_files, this)); |
145 |
+ dpi_dialog->setWindowModality(Qt::WindowModal); |
146 |
+--- scantailor-0.9.11.1/ThumbnailSequence.cpp |
147 |
++++ scantailor-0.9.11.1/ThumbnailSequence.cpp |
148 |
+@@ -491,7 +491,7 @@ |
149 |
+ m_pSelectionLeader(0) |
150 |
+ { |
151 |
+ m_graphicsScene.setContextMenuEventCallback( |
152 |
+- bind(&Impl::sceneContextMenuEvent, this, _1) |
153 |
++ boost::lambda::bind(&Impl::sceneContextMenuEvent, this, boost::lambda::_1) |
154 |
+ ); |
155 |
+ } |
156 |
+ |
157 |
+@@ -605,7 +605,7 @@ |
158 |
+ { |
159 |
+ ItemsById::iterator const id_it(m_itemsById.find(page_info.id())); |
160 |
+ if (id_it != m_itemsById.end()) { |
161 |
+- m_itemsById.modify(id_it, bind(&Item::pageInfo, _1) = page_info); |
162 |
++ m_itemsById.modify(id_it, boost::lambda::bind(&Item::pageInfo, boost::lambda::_1) = page_info); |
163 |
+ invalidateThumbnailImpl(id_it); |
164 |
+ } |
165 |
+ } |
166 |
+@@ -725,10 +725,10 @@ |
167 |
+ // Sort pages in m_itemsInOrder using m_ptrOrderProvider. |
168 |
+ if (m_ptrOrderProvider.get()) { |
169 |
+ m_itemsInOrder.sort( |
170 |
+- bind( |
171 |
++ boost::lambda::bind( |
172 |
+ &PageOrderProvider::precedes, m_ptrOrderProvider.get(), |
173 |
+- bind(&Item::pageId, _1), bind(&Item::incompleteThumbnail, _1), |
174 |
+- bind(&Item::pageId, _2), bind(&Item::incompleteThumbnail, _2) |
175 |
++ boost::lambda::bind(&Item::pageId, boost::lambda::_1), bind(&Item::incompleteThumbnail, boost::lambda::_1), |
176 |
++ boost::lambda::bind(&Item::pageId, boost::lambda::_2), bind(&Item::incompleteThumbnail, boost::lambda::_2) |
177 |
+ ) |
178 |
+ ); |
179 |
+ } |
180 |
|
181 |
diff --git a/media-gfx/scantailor/scantailor-0.9.11.1.ebuild b/media-gfx/scantailor/scantailor-0.9.11.1.ebuild |
182 |
index 1f4f618..6e5f7d8 100644 |
183 |
--- a/media-gfx/scantailor/scantailor-0.9.11.1.ebuild |
184 |
+++ b/media-gfx/scantailor/scantailor-0.9.11.1.ebuild |
185 |
@@ -1,4 +1,4 @@ |
186 |
-# Copyright 1999-2015 Gentoo Foundation |
187 |
+# Copyright 1999-2016 Gentoo Foundation |
188 |
# Distributed under the terms of the GNU General Public License v2 |
189 |
# $Id$ |
190 |
|
191 |
@@ -7,7 +7,8 @@ inherit cmake-utils eutils virtualx toolchain-funcs |
192 |
|
193 |
DESCRIPTION="A interactive post-processing tool for scanned pages" |
194 |
HOMEPAGE="http://scantailor.sourceforge.net/" |
195 |
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" |
196 |
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz |
197 |
+ https://dev.gentoo.org/~soap/distfiles/${P}-boost-join-moc.patch" |
198 |
|
199 |
LICENSE="GPL-2 GPL-3 public-domain" |
200 |
SLOT="0" |
201 |
@@ -24,6 +25,12 @@ RDEPEND=">=media-libs/libpng-1.2.43 |
202 |
DEPEND="${RDEPEND} |
203 |
dev-libs/boost" |
204 |
|
205 |
+src_prepare() { |
206 |
+ epatch -p1 \ |
207 |
+ "${DISTDIR}/${P}-boost-join-moc.patch" \ |
208 |
+ "${FILESDIR}/${P}-boost-lambda-namespace.patch" |
209 |
+} |
210 |
+ |
211 |
src_configure() { |
212 |
tc-export CXX |