1 |
commit: 5bdb78c3f0f4d0513b9aa448b0466d347ef39ef0 |
2 |
Author: Ionen Wolkens <ionen <AT> gentoo <DOT> org> |
3 |
AuthorDate: Fri Jan 14 04:40:42 2022 +0000 |
4 |
Commit: Ionen Wolkens <ionen <AT> gentoo <DOT> org> |
5 |
CommitDate: Fri Jan 14 04:47:53 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5bdb78c3 |
7 |
|
8 |
app-office/scribus: backport upstream fix for USE=osg with CPP17 |
9 |
|
10 |
Fixes: 40fd326c118a7eb8ed87a62559dfa9b1266aba97 |
11 |
Closes: https://bugs.gentoo.org/831161 |
12 |
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org> |
13 |
|
14 |
.../scribus/files/scribus-1.5.7-osg-cpp17.patch | 219 +++++++++++++++++++++ |
15 |
app-office/scribus/scribus-1.5.7.ebuild | 1 + |
16 |
2 files changed, 220 insertions(+) |
17 |
|
18 |
diff --git a/app-office/scribus/files/scribus-1.5.7-osg-cpp17.patch b/app-office/scribus/files/scribus-1.5.7-osg-cpp17.patch |
19 |
new file mode 100644 |
20 |
index 000000000000..21f0c00554d2 |
21 |
--- /dev/null |
22 |
+++ b/app-office/scribus/files/scribus-1.5.7-osg-cpp17.patch |
23 |
@@ -0,0 +1,219 @@ |
24 |
+https://bugs.gentoo.org/831161 |
25 |
+Backport of https://github.com/scribusproject/scribus/commit/80405ce |
26 |
+ |
27 |
+From: Jean Ghali <jghali@×××××××××××.fr> |
28 |
+Date: Mon, 10 Jan 2022 20:38:51 +0000 |
29 |
+Subject: [PATCH] Rename byte() to to_byte() in order to avoid potential |
30 |
+ conflict with std::byte in c++17 mode |
31 |
+--- a/scribus/third_party/prc/oPRCFile.cc |
32 |
++++ b/scribus/third_party/prc/oPRCFile.cc |
33 |
+@@ -76,3 +76,3 @@ |
34 |
+ // Map [0,1] to [0,255] |
35 |
+-inline uint8_t byte(double r) |
36 |
++inline uint8_t to_byte(double r) |
37 |
+ { |
38 |
+@@ -451,5 +451,5 @@ |
39 |
+ { |
40 |
+- tess->rgba_vertices.push_back(byte(lit->color.red)); |
41 |
+- tess->rgba_vertices.push_back(byte(lit->color.green)); |
42 |
+- tess->rgba_vertices.push_back(byte(lit->color.blue)); |
43 |
++ tess->rgba_vertices.push_back(to_byte(lit->color.red)); |
44 |
++ tess->rgba_vertices.push_back(to_byte(lit->color.green)); |
45 |
++ tess->rgba_vertices.push_back(to_byte(lit->color.blue)); |
46 |
+ } |
47 |
+@@ -595,19 +595,19 @@ |
48 |
+ { |
49 |
+- tessFace->rgba_vertices.push_back(byte(C[1].R)); |
50 |
+- tessFace->rgba_vertices.push_back(byte(C[1].G)); |
51 |
+- tessFace->rgba_vertices.push_back(byte(C[1].B)); |
52 |
++ tessFace->rgba_vertices.push_back(to_byte(C[1].R)); |
53 |
++ tessFace->rgba_vertices.push_back(to_byte(C[1].G)); |
54 |
++ tessFace->rgba_vertices.push_back(to_byte(C[1].B)); |
55 |
+ if(tessFace->is_rgba) |
56 |
+- tessFace->rgba_vertices.push_back(byte(C[1].A)); |
57 |
++ tessFace->rgba_vertices.push_back(to_byte(C[1].A)); |
58 |
+ |
59 |
+- tessFace->rgba_vertices.push_back(byte(C[2].R)); |
60 |
+- tessFace->rgba_vertices.push_back(byte(C[2].G)); |
61 |
+- tessFace->rgba_vertices.push_back(byte(C[2].B)); |
62 |
++ tessFace->rgba_vertices.push_back(to_byte(C[2].R)); |
63 |
++ tessFace->rgba_vertices.push_back(to_byte(C[2].G)); |
64 |
++ tessFace->rgba_vertices.push_back(to_byte(C[2].B)); |
65 |
+ if(tessFace->is_rgba) |
66 |
+- tessFace->rgba_vertices.push_back(byte(C[2].A)); |
67 |
++ tessFace->rgba_vertices.push_back(to_byte(C[2].A)); |
68 |
+ |
69 |
+- tessFace->rgba_vertices.push_back(byte(C[3].R)); |
70 |
+- tessFace->rgba_vertices.push_back(byte(C[3].G)); |
71 |
+- tessFace->rgba_vertices.push_back(byte(C[3].B)); |
72 |
++ tessFace->rgba_vertices.push_back(to_byte(C[3].R)); |
73 |
++ tessFace->rgba_vertices.push_back(to_byte(C[3].G)); |
74 |
++ tessFace->rgba_vertices.push_back(to_byte(C[3].B)); |
75 |
+ if(tessFace->is_rgba) |
76 |
+- tessFace->rgba_vertices.push_back(byte(C[3].A)); |
77 |
++ tessFace->rgba_vertices.push_back(to_byte(C[3].A)); |
78 |
+ } |
79 |
+@@ -622,19 +622,19 @@ |
80 |
+ { |
81 |
+- tessFace->rgba_vertices.push_back(byte(C[0].R)); |
82 |
+- tessFace->rgba_vertices.push_back(byte(C[0].G)); |
83 |
+- tessFace->rgba_vertices.push_back(byte(C[0].B)); |
84 |
++ tessFace->rgba_vertices.push_back(to_byte(C[0].R)); |
85 |
++ tessFace->rgba_vertices.push_back(to_byte(C[0].G)); |
86 |
++ tessFace->rgba_vertices.push_back(to_byte(C[0].B)); |
87 |
+ if(tessFace->is_rgba) |
88 |
+- tessFace->rgba_vertices.push_back(byte(C[0].A)); |
89 |
++ tessFace->rgba_vertices.push_back(to_byte(C[0].A)); |
90 |
+ |
91 |
+- tessFace->rgba_vertices.push_back(byte(C[2].R)); |
92 |
+- tessFace->rgba_vertices.push_back(byte(C[2].G)); |
93 |
+- tessFace->rgba_vertices.push_back(byte(C[2].B)); |
94 |
++ tessFace->rgba_vertices.push_back(to_byte(C[2].R)); |
95 |
++ tessFace->rgba_vertices.push_back(to_byte(C[2].G)); |
96 |
++ tessFace->rgba_vertices.push_back(to_byte(C[2].B)); |
97 |
+ if(tessFace->is_rgba) |
98 |
+- tessFace->rgba_vertices.push_back(byte(C[2].A)); |
99 |
++ tessFace->rgba_vertices.push_back(to_byte(C[2].A)); |
100 |
+ |
101 |
+- tessFace->rgba_vertices.push_back(byte(C[3].R)); |
102 |
+- tessFace->rgba_vertices.push_back(byte(C[3].G)); |
103 |
+- tessFace->rgba_vertices.push_back(byte(C[3].B)); |
104 |
++ tessFace->rgba_vertices.push_back(to_byte(C[3].R)); |
105 |
++ tessFace->rgba_vertices.push_back(to_byte(C[3].G)); |
106 |
++ tessFace->rgba_vertices.push_back(to_byte(C[3].B)); |
107 |
+ if(tessFace->is_rgba) |
108 |
+- tessFace->rgba_vertices.push_back(byte(C[3].A)); |
109 |
++ tessFace->rgba_vertices.push_back(to_byte(C[3].A)); |
110 |
+ } |
111 |
+@@ -646,19 +646,19 @@ |
112 |
+ { |
113 |
+- tessFace->rgba_vertices.push_back(byte(C[3].R)); |
114 |
+- tessFace->rgba_vertices.push_back(byte(C[3].G)); |
115 |
+- tessFace->rgba_vertices.push_back(byte(C[3].B)); |
116 |
++ tessFace->rgba_vertices.push_back(to_byte(C[3].R)); |
117 |
++ tessFace->rgba_vertices.push_back(to_byte(C[3].G)); |
118 |
++ tessFace->rgba_vertices.push_back(to_byte(C[3].B)); |
119 |
+ if(tessFace->is_rgba) |
120 |
+- tessFace->rgba_vertices.push_back(byte(C[3].A)); |
121 |
++ tessFace->rgba_vertices.push_back(to_byte(C[3].A)); |
122 |
+ |
123 |
+- tessFace->rgba_vertices.push_back(byte(C[1].R)); |
124 |
+- tessFace->rgba_vertices.push_back(byte(C[1].G)); |
125 |
+- tessFace->rgba_vertices.push_back(byte(C[1].B)); |
126 |
++ tessFace->rgba_vertices.push_back(to_byte(C[1].R)); |
127 |
++ tessFace->rgba_vertices.push_back(to_byte(C[1].G)); |
128 |
++ tessFace->rgba_vertices.push_back(to_byte(C[1].B)); |
129 |
+ if(tessFace->is_rgba) |
130 |
+- tessFace->rgba_vertices.push_back(byte(C[1].A)); |
131 |
++ tessFace->rgba_vertices.push_back(to_byte(C[1].A)); |
132 |
+ |
133 |
+- tessFace->rgba_vertices.push_back(byte(C[0].R)); |
134 |
+- tessFace->rgba_vertices.push_back(byte(C[0].G)); |
135 |
+- tessFace->rgba_vertices.push_back(byte(C[0].B)); |
136 |
++ tessFace->rgba_vertices.push_back(to_byte(C[0].R)); |
137 |
++ tessFace->rgba_vertices.push_back(to_byte(C[0].G)); |
138 |
++ tessFace->rgba_vertices.push_back(to_byte(C[0].B)); |
139 |
+ if(tessFace->is_rgba) |
140 |
+- tessFace->rgba_vertices.push_back(byte(C[0].A)); |
141 |
++ tessFace->rgba_vertices.push_back(to_byte(C[0].A)); |
142 |
+ } |
143 |
+@@ -1650,17 +1650,17 @@ |
144 |
+ { |
145 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][0]].R)); |
146 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][0]].G)); |
147 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][0]].B)); |
148 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][0]].R)); |
149 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][0]].G)); |
150 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][0]].B)); |
151 |
+ if(tessFace->is_rgba) |
152 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][0]].A)); |
153 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][1]].R)); |
154 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][1]].G)); |
155 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][1]].B)); |
156 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][0]].A)); |
157 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][1]].R)); |
158 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][1]].G)); |
159 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][1]].B)); |
160 |
+ if(tessFace->is_rgba) |
161 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][1]].A)); |
162 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][2]].R)); |
163 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][2]].G)); |
164 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][2]].B)); |
165 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][1]].A)); |
166 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][2]].R)); |
167 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][2]].G)); |
168 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][2]].B)); |
169 |
+ if(tessFace->is_rgba) |
170 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][2]].A)); |
171 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][2]].A)); |
172 |
+ } |
173 |
+@@ -1794,33 +1794,33 @@ |
174 |
+ // first triangle |
175 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][0]].R)); |
176 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][0]].G)); |
177 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][0]].B)); |
178 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][0]].R)); |
179 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][0]].G)); |
180 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][0]].B)); |
181 |
+ if(tessFace->is_rgba) |
182 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][0]].A)); |
183 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][1]].R)); |
184 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][1]].G)); |
185 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][1]].B)); |
186 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][0]].A)); |
187 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][1]].R)); |
188 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][1]].G)); |
189 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][1]].B)); |
190 |
+ if(tessFace->is_rgba) |
191 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][1]].A)); |
192 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][3]].R)); |
193 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][3]].G)); |
194 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][3]].B)); |
195 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][1]].A)); |
196 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][3]].R)); |
197 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][3]].G)); |
198 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][3]].B)); |
199 |
+ if(tessFace->is_rgba) |
200 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][3]].A)); |
201 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][3]].A)); |
202 |
+ // second triangle |
203 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][1]].R)); |
204 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][1]].G)); |
205 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][1]].B)); |
206 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][1]].R)); |
207 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][1]].G)); |
208 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][1]].B)); |
209 |
+ if(tessFace->is_rgba) |
210 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][1]].A)); |
211 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][2]].R)); |
212 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][2]].G)); |
213 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][2]].B)); |
214 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][1]].A)); |
215 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][2]].R)); |
216 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][2]].G)); |
217 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][2]].B)); |
218 |
+ if(tessFace->is_rgba) |
219 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][2]].A)); |
220 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][3]].R)); |
221 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][3]].G)); |
222 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][3]].B)); |
223 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][2]].A)); |
224 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][3]].R)); |
225 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][3]].G)); |
226 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][3]].B)); |
227 |
+ if(tessFace->is_rgba) |
228 |
+- tessFace->rgba_vertices.push_back(byte(C[CI[i][3]].A)); |
229 |
++ tessFace->rgba_vertices.push_back(to_byte(C[CI[i][3]].A)); |
230 |
+ } |
231 |
+@@ -1912,7 +1912,7 @@ |
232 |
+ { |
233 |
+- tess->rgba_vertices.push_back(byte(C[CI[i]].R)); |
234 |
+- tess->rgba_vertices.push_back(byte(C[CI[i]].G)); |
235 |
+- tess->rgba_vertices.push_back(byte(C[CI[i]].B)); |
236 |
++ tess->rgba_vertices.push_back(to_byte(C[CI[i]].R)); |
237 |
++ tess->rgba_vertices.push_back(to_byte(C[CI[i]].G)); |
238 |
++ tess->rgba_vertices.push_back(to_byte(C[CI[i]].B)); |
239 |
+ if(tess->is_rgba) |
240 |
+- tess->rgba_vertices.push_back(byte(C[CI[i]].A)); |
241 |
++ tess->rgba_vertices.push_back(to_byte(C[CI[i]].A)); |
242 |
+ } |
243 |
|
244 |
diff --git a/app-office/scribus/scribus-1.5.7.ebuild b/app-office/scribus/scribus-1.5.7.ebuild |
245 |
index 5f63eeb1aa19..2d3e677154da 100644 |
246 |
--- a/app-office/scribus/scribus-1.5.7.ebuild |
247 |
+++ b/app-office/scribus/scribus-1.5.7.ebuild |
248 |
@@ -78,6 +78,7 @@ PATCHES=( |
249 |
"${FILESDIR}"/${PN}-1.5.6-findhyphen.patch |
250 |
# upstream |
251 |
"${FILESDIR}"/${PN}-1.5.8-harfbuzz-3.patch |
252 |
+ "${FILESDIR}"/${PN}-1.5.7-osg-cpp17.patch |
253 |
) |
254 |
|
255 |
CMAKE_BUILD_TYPE="Release" |