1 |
commit: 44f2c3d7518d1468f1fdd4fc3b25307fbdaffaf5 |
2 |
Author: Andreas K. Huettel (dilfridge) <dilfridge <AT> gentoo <DOT> org> |
3 |
AuthorDate: Tue Jan 3 22:44:27 2012 +0000 |
4 |
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org> |
5 |
CommitDate: Tue Jan 3 22:44:27 2012 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=dev/dilfridge.git;a=commit;h=44f2c3d7 |
7 |
|
8 |
[x11-libs/cairo] Not needed here anymore |
9 |
|
10 |
--- |
11 |
x11-libs/cairo/Manifest | 29 -- |
12 |
x11-libs/cairo/cairo-1.10.2-r2.ebuild | 159 ----------- |
13 |
.../cairo/files/cairo-1.10.0-buggy_gradients.patch | 17 -- |
14 |
x11-libs/cairo/files/cairo-1.10.2-interix.patch | 36 --- |
15 |
x11-libs/cairo/files/cairo-1.10.2-qt-surface.patch | 55 ---- |
16 |
.../files/cairo-1.2.4-lcd-cleartype-like.diff | 275 -------------------- |
17 |
x11-libs/cairo/files/cairo-1.8.10-libpng14.patch | 11 - |
18 |
x11-libs/cairo/files/cairo-1.8.8-interix.patch | 16 -- |
19 |
x11-libs/cairo/metadata.xml | 27 -- |
20 |
9 files changed, 0 insertions(+), 625 deletions(-) |
21 |
|
22 |
diff --git a/x11-libs/cairo/Manifest b/x11-libs/cairo/Manifest |
23 |
deleted file mode 100644 |
24 |
index a598954..0000000 |
25 |
--- a/x11-libs/cairo/Manifest |
26 |
+++ /dev/null |
27 |
@@ -1,29 +0,0 @@ |
28 |
------BEGIN PGP SIGNED MESSAGE----- |
29 |
-Hash: SHA512 |
30 |
- |
31 |
-AUX cairo-1.10.0-buggy_gradients.patch 581 RMD160 077fb7a18c2840c0d637d2161ca9d244cb69608b SHA1 45f4b6a834cb9f1c153f092fba18416d257d71c7 SHA256 3b622bb250b996ea5f5adc5c899af343e0efba5c477fa0e51fdbb720a8dd1b18 |
32 |
-AUX cairo-1.10.2-interix.patch 1235 RMD160 83803df650e8381649b11bd3c81dd0c6ee5f8e53 SHA1 d6b731fc8aa0c9461e62a9afc1431782d3af433b SHA256 d915d69e2eb96f6a4bef1de0c493ed9face7b5d6a79194ab9f2a7f3d85b799ea |
33 |
-AUX cairo-1.10.2-qt-surface.patch 2687 RMD160 9ffc2924070a7dfa917a2b05b11de1fcca571dab SHA1 6ce6a6047d6f8420ea3044d036e7d10c6ac98c61 SHA256 fb96199ec7a4cf8527726be8d0333ed883183b56960832218eca1c9ef2e05dbd |
34 |
-AUX cairo-1.2.4-lcd-cleartype-like.diff 7244 RMD160 e50d5bf17cbead688a8b808a78fe4104c09af52e SHA1 f63131fd75bb496db59e3ce6bc755bbfb70baacb SHA256 4926d20d2b6b5071a5bf9ee9a12a36fef69510ebebd717c1dab151fe650f173a |
35 |
-AUX cairo-1.8.10-libpng14.patch 426 RMD160 f97e4f2d1e65e2c6a90c5fddbce66caeb4337bba SHA1 bb029f710432af7b24175aa941fc7cd3187ef767 SHA256 b090f829d3b9fb69b83bfa094552335b8382988d60ce7e46558c4069b8bca532 |
36 |
-AUX cairo-1.8.8-interix.patch 619 RMD160 9bb28c5a88aa1f2776d32ac7020aef4ba93872b5 SHA1 857a4d2be0118a6d2d0d80388b5963a5f768341d SHA256 505be82a1a0b7f963cb49ff85ecf1fa1389a4e43621df76b91fc1529616b2299 |
37 |
-DIST cairo-1.10.2.tar.gz 23558405 RMD160 8c8de00120398fe2b3a60a08ff59a464b2eebf47 SHA1 ccce5ae03f99c505db97c286a0c9a90a926d3c6e SHA256 32018c7998358eebc2ad578ff8d8559d34fc80252095f110a572ed23d989fc41 |
38 |
-EBUILD cairo-1.10.2-r2.ebuild 4198 RMD160 fd014de4730fe58f96f223e67b69f7488a1f4129 SHA1 2007dcd723dd78071998cc9baeafbaa88908bed2 SHA256 4adaba8bace8c0b4058c1136a58b9a832bf0fe7b30d12491632456f5e3cd8e1a |
39 |
-MISC metadata.xml 998 RMD160 2a4f5df13bc9d39c91e12e80924465450d758e32 SHA1 f4e943a00531a6f6a5ca2945a05ab95233b63e3b SHA256 325e1f55131748f3840ed1cfec421fe27aa6a621568135e4f6ce1d517b5d3cd8 |
40 |
------BEGIN PGP SIGNATURE----- |
41 |
-Version: GnuPG v2.0.17 (GNU/Linux) |
42 |
- |
43 |
-iQIcBAEBCgAGBQJO8aD7AAoJENwGBM22xffe17gP+gJhHkBahmisQx69En53miQU |
44 |
-1WSNx3gjiRvA6nnMoHsrGvhMZSkvfOACxfy0COp2w8+pojDHVyBJ/alJdw65Y2sn |
45 |
-UfklPT5EgrV90b4P8dkCgq7/3C1O84yjDviroDayODjhjz5Lp2oASTYqrOQtm+yt |
46 |
-cWUgdTOmtCYaEt/+TBUta1xnLM0qEkKxwIvHzgjY9c79ifwFkxvoV/vIsPJw9IAp |
47 |
-rgXhd/nyLvEHQHADrBfoYtGgMnXYci4nNmnqXpVE2+PLWRdox4o8q0oqlHTK8Sey |
48 |
-3+suF1FJPWHUD37vQUU2oNSi/bbvEePFlaBlHwfGe7ux2RQxYfvBc0KLLQHXFL9b |
49 |
-dfH0eCZEuk3qlYHHR4jKpCIwJUXH7UBByi4O7H27lACxwH3usoy+tMMG2Btvgugm |
50 |
-4E5+fIvt+v1Oohf2p8HjOPJ92hFzef6VdJ10MKNpx8gzR+5QlxKMAp1W5R7vZSoh |
51 |
-8pG7mWG3EzQrXB4DXOM4LD+JtRTPts3e4NWo4G17kZS0tNIyDkd+GmObQaoZ97iz |
52 |
-WMJmxrKN2zGamtowCiK0G/Iq7Lba+qQtGQ8qdKJkj0vLkFVjBNeEp3OcfXAcTKeP |
53 |
-2k/Arnuu6elD4NNGCmPO3q0/aJQNebmQ4YxXjvHc1ZkTD16tO5i1Y2qAEligb00G |
54 |
-UBHv7gStQeSAiy18YdKi |
55 |
-=MPY2 |
56 |
------END PGP SIGNATURE----- |
57 |
|
58 |
diff --git a/x11-libs/cairo/cairo-1.10.2-r2.ebuild b/x11-libs/cairo/cairo-1.10.2-r2.ebuild |
59 |
deleted file mode 100644 |
60 |
index cc6fdae..0000000 |
61 |
--- a/x11-libs/cairo/cairo-1.10.2-r2.ebuild |
62 |
+++ /dev/null |
63 |
@@ -1,159 +0,0 @@ |
64 |
-# Copyright 1999-2011 Gentoo Foundation |
65 |
-# Distributed under the terms of the GNU General Public License v2 |
66 |
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/cairo/cairo-1.10.2-r1.ebuild,v 1.13 2011/07/13 09:05:48 mduft Exp $ |
67 |
- |
68 |
-EAPI=3 |
69 |
- |
70 |
-EGIT_REPO_URI="git://anongit.freedesktop.org/git/cairo" |
71 |
-[[ ${PV} == *9999 ]] && GIT_ECLASS="git" |
72 |
- |
73 |
-inherit eutils flag-o-matic autotools ${GIT_ECLASS} |
74 |
- |
75 |
-DESCRIPTION="A vector graphics library with cross-device output support" |
76 |
-HOMEPAGE="http://cairographics.org/" |
77 |
-[[ ${PV} == *9999 ]] || SRC_URI="http://cairographics.org/releases/${P}.tar.gz" |
78 |
- |
79 |
-LICENSE="|| ( LGPL-2.1 MPL-1.1 )" |
80 |
-SLOT="0" |
81 |
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" |
82 |
-IUSE="X aqua debug directfb doc drm gallium +glib opengl openvg qt4 static-libs +svg xcb" |
83 |
- |
84 |
-# Test causes a circular depend on gtk+... since gtk+ needs cairo but test needs gtk+ so we need to block it |
85 |
-RESTRICT="test" |
86 |
- |
87 |
-RDEPEND="media-libs/fontconfig |
88 |
- media-libs/freetype:2 |
89 |
- media-libs/libpng:0 |
90 |
- sys-libs/zlib |
91 |
- >=x11-libs/pixman-0.18.4 |
92 |
- directfb? ( dev-libs/DirectFB ) |
93 |
- glib? ( dev-libs/glib:2 ) |
94 |
- opengl? ( virtual/opengl ) |
95 |
- openvg? ( media-libs/mesa[gallium] ) |
96 |
- qt4? ( >=x11-libs/qt-gui-4.4:4 ) |
97 |
- svg? ( dev-libs/libxml2 ) |
98 |
- X? ( |
99 |
- >=x11-libs/libXrender-0.6 |
100 |
- x11-libs/libXext |
101 |
- x11-libs/libX11 |
102 |
- x11-libs/libXft |
103 |
- drm? ( |
104 |
- >=sys-fs/udev-136 |
105 |
- gallium? ( media-libs/mesa[gallium] ) |
106 |
- ) |
107 |
- ) |
108 |
- xcb? ( |
109 |
- x11-libs/libxcb |
110 |
- x11-libs/xcb-util |
111 |
- )" |
112 |
-DEPEND="${RDEPEND} |
113 |
- dev-util/pkgconfig |
114 |
- >=sys-devel/libtool-2 |
115 |
- doc? ( |
116 |
- >=dev-util/gtk-doc-1.6 |
117 |
- ~app-text/docbook-xml-dtd-4.2 |
118 |
- ) |
119 |
- X? ( |
120 |
- x11-proto/renderproto |
121 |
- drm? ( |
122 |
- x11-proto/xproto |
123 |
- >=x11-proto/xextproto-7.1 |
124 |
- ) |
125 |
- )" |
126 |
- |
127 |
-src_prepare() { |
128 |
- epatch "${FILESDIR}"/${PN}-1.8.8-interix.patch |
129 |
- epatch "${FILESDIR}"/${PN}-1.10.0-buggy_gradients.patch |
130 |
- epatch "${FILESDIR}"/${P}-interix.patch |
131 |
- epatch "${FILESDIR}"/${P}-qt-surface.patch |
132 |
- |
133 |
- # Slightly messed build system YAY |
134 |
- if [[ ${PV} == *9999* ]]; then |
135 |
- touch boilerplate/Makefile.am.features |
136 |
- touch src/Makefile.am.features |
137 |
- touch ChangeLog |
138 |
- fi |
139 |
- |
140 |
- # We need to run elibtoolize to ensure correct so versioning on FreeBSD |
141 |
- # upgraded to an eautoreconf for the above interix patch. |
142 |
- eautoreconf |
143 |
-} |
144 |
- |
145 |
-src_configure() { |
146 |
- local myopts |
147 |
- |
148 |
- # SuperH doesn't have native atomics yet |
149 |
- use sh && myopts+=" --disable-atomic" |
150 |
- |
151 |
- [[ ${CHOST} == *-interix* ]] && append-flags -D_REENTRANT |
152 |
- |
153 |
- # tracing fails to compile, because Solaris' libelf doesn't do large files |
154 |
- [[ ${CHOST} == *-solaris* ]] && myopts+=" --disable-trace" |
155 |
- |
156 |
- # 128-bits long arithemetic functions are missing |
157 |
- [[ ${CHOST} == powerpc*-*-darwin* ]] && filter-flags -mcpu=* |
158 |
- |
159 |
- #gets rid of fbmmx.c inlining warnings |
160 |
- append-flags -finline-limit=1200 |
161 |
- |
162 |
- if use X; then |
163 |
- myopts+=" |
164 |
- --enable-tee=yes |
165 |
- $(use_enable drm) |
166 |
- " |
167 |
- |
168 |
- if use drm; then |
169 |
- myopts+=" |
170 |
- $(use_enable gallium) |
171 |
- $(use_enable xcb xcb-drm) |
172 |
- " |
173 |
- else |
174 |
- use gallium && ewarn "Gallium use requires drm use enabled. So disabling for now." |
175 |
- myopts+=" |
176 |
- --disable-gallium |
177 |
- --disable-xcb-drm |
178 |
- " |
179 |
- fi |
180 |
- else |
181 |
- use drm && ewarn "drm use requires X use enabled. So disabling for now." |
182 |
- myopts+=" |
183 |
- --disable-drm |
184 |
- --disable-gallium |
185 |
- --disable-xcb-drm |
186 |
- " |
187 |
- fi |
188 |
- |
189 |
- # --disable-xcb-lib: |
190 |
- # do not override good xlib backed by hardforcing rendering over xcb |
191 |
- econf \ |
192 |
- --disable-dependency-tracking \ |
193 |
- $(use_with X x) \ |
194 |
- $(use_enable X xlib) \ |
195 |
- $(use_enable X xlib-xrender) \ |
196 |
- $(use_enable aqua quartz) \ |
197 |
- $(use_enable aqua quartz-image) \ |
198 |
- $(use_enable debug test-surfaces) \ |
199 |
- $(use_enable directfb) \ |
200 |
- $(use_enable glib gobject) \ |
201 |
- $(use_enable doc gtk-doc) \ |
202 |
- $(use_enable openvg vg) \ |
203 |
- $(use_enable opengl gl) \ |
204 |
- $(use_enable qt4 qt) \ |
205 |
- $(use_enable static-libs static) \ |
206 |
- $(use_enable svg) \ |
207 |
- $(use_enable xcb) \ |
208 |
- $(use_enable xcb xcb-shm) \ |
209 |
- --enable-ft \ |
210 |
- --enable-pdf \ |
211 |
- --enable-png \ |
212 |
- --enable-ps \ |
213 |
- --disable-xlib-xcb \ |
214 |
- ${myopts} |
215 |
-} |
216 |
- |
217 |
-src_install() { |
218 |
- # parallel make install fails |
219 |
- emake -j1 DESTDIR="${D}" install || die |
220 |
- find "${ED}" -name '*.la' -exec rm -f {} + |
221 |
- dodoc AUTHORS ChangeLog NEWS README || die |
222 |
-} |
223 |
|
224 |
diff --git a/x11-libs/cairo/files/cairo-1.10.0-buggy_gradients.patch b/x11-libs/cairo/files/cairo-1.10.0-buggy_gradients.patch |
225 |
deleted file mode 100644 |
226 |
index a58c2f8..0000000 |
227 |
--- a/x11-libs/cairo/files/cairo-1.10.0-buggy_gradients.patch |
228 |
+++ /dev/null |
229 |
@@ -1,17 +0,0 @@ |
230 |
-http://repos.archlinux.org/wsvn/packages/cairo/trunk/cairo-1.10.0-buggy_gradients.patch |
231 |
-http://bugs.gentoo.org/336696 |
232 |
- |
233 |
---- src/cairo-xlib-display.c |
234 |
-+++ src/cairo-xlib-display.c |
235 |
-@@ -353,11 +353,7 @@ |
236 |
- /* Prior to Render 0.10, there is no protocol support for gradients and |
237 |
- * we call function stubs instead, which would silently consume the drawing. |
238 |
- */ |
239 |
--#if RENDER_MAJOR == 0 && RENDER_MINOR < 10 |
240 |
- display->buggy_gradients = TRUE; |
241 |
--#else |
242 |
-- display->buggy_gradients = FALSE; |
243 |
--#endif |
244 |
- display->buggy_pad_reflect = FALSE; |
245 |
- display->buggy_repeat = FALSE; |
246 |
- |
247 |
|
248 |
diff --git a/x11-libs/cairo/files/cairo-1.10.2-interix.patch b/x11-libs/cairo/files/cairo-1.10.2-interix.patch |
249 |
deleted file mode 100644 |
250 |
index 3333e3e..0000000 |
251 |
--- a/x11-libs/cairo/files/cairo-1.10.2-interix.patch |
252 |
+++ /dev/null |
253 |
@@ -1,36 +0,0 @@ |
254 |
-commit 95f6f7a174ca096a3d3dbe84ff220d166d1e2baa |
255 |
-Author: Uli Schlachter <psychon@×××.in> |
256 |
-Date: Fri Oct 22 11:54:57 2010 +0200 |
257 |
- |
258 |
- Make both versions of _cairo_lround consistent again |
259 |
- |
260 |
- Commit c0008242b0f made cairo use libm's lround instead of its own _cairo_lround |
261 |
- by default. However, since commit ce58f874 from 2006, _cairo_lround does |
262 |
- arithmetic rounding instead of away-from-zero rounding (before said commit, it |
263 |
- was using baker's rounding). |
264 |
- |
265 |
- So to make the rounding of _cairo_lround be independent from |
266 |
- DISABLE_SOME_FLOATING_POINT, we have to use another function. Turns out that |
267 |
- _cairo_round already does the same thing that _cairo_lround does. Their only |
268 |
- difference is the return type. |
269 |
- |
270 |
- Signed-off-by: Uli Schlachter <psychon@×××.in> |
271 |
- Signed-off-by: Chris Wilson <chris@×××××××××××××××.uk> |
272 |
- |
273 |
-diff --git a/src/cairoint.h b/src/cairoint.h |
274 |
-index 53c87e5..539d92e 100644 |
275 |
---- a/src/cairoint.h |
276 |
-+++ b/src/cairoint.h |
277 |
-@@ -968,7 +968,11 @@ _cairo_round (double r) |
278 |
- cairo_private int |
279 |
- _cairo_lround (double d) cairo_const; |
280 |
- #else |
281 |
--#define _cairo_lround lround |
282 |
-+static inline int cairo_const |
283 |
-+_cairo_lround (double r) |
284 |
-+{ |
285 |
-+ return _cairo_round (r); |
286 |
-+} |
287 |
- #endif |
288 |
- |
289 |
- cairo_private uint16_t |
290 |
|
291 |
diff --git a/x11-libs/cairo/files/cairo-1.10.2-qt-surface.patch b/x11-libs/cairo/files/cairo-1.10.2-qt-surface.patch |
292 |
deleted file mode 100644 |
293 |
index cf0b57a..0000000 |
294 |
--- a/x11-libs/cairo/files/cairo-1.10.2-qt-surface.patch |
295 |
+++ /dev/null |
296 |
@@ -1,55 +0,0 @@ |
297 |
-diff -ruN cairo-1.10.2-0-vanilla/src/cairo-qt-surface.cpp cairo-1.10.2/src/cairo-qt-surface.cpp |
298 |
---- cairo-1.10.2-0-vanilla/src/cairo-qt-surface.cpp 2010-12-25 15:21:34.000000000 +0100 |
299 |
-+++ cairo-1.10.2/src/cairo-qt-surface.cpp 2011-12-20 22:59:30.000000000 +0100 |
300 |
-@@ -61,7 +61,9 @@ |
301 |
- #include <QtGui/QX11Info> |
302 |
- #include <QtCore/QVarLengthArray> |
303 |
- |
304 |
--#if (QT_VERSION >= QT_VERSION_CHECK(4, 7, 0)) || defined(QT_GLYPHS_API_BACKPORT) |
305 |
-+#if (QT_VERSION >= QT_VERSION_CHECK(4, 8, 0)) |
306 |
-+#include <QtGui/QGlyphRun> |
307 |
-+#elif (QT_VERSION >= QT_VERSION_CHECK(4, 7, 0)) || defined(QT_GLYPHS_API_BACKPORT) |
308 |
- extern void qt_draw_glyphs(QPainter *, const quint32 *glyphs, const QPointF *positions, int count); |
309 |
- #endif |
310 |
- |
311 |
-@@ -1370,7 +1372,39 @@ |
312 |
- cairo_clip_t *clip, |
313 |
- int *remaining_glyphs) |
314 |
- { |
315 |
--#if (QT_VERSION >= QT_VERSION_CHECK(4, 7, 0)) || defined(QT_GLYPHS_API_BACKPORT) |
316 |
-+#if (QT_VERSION >= QT_VERSION_CHECK(4, 8, 0)) && !defined(QT_NO_RAWFONT) |
317 |
-+ cairo_qt_surface_t *qs = (cairo_qt_surface_t *) abstract_surface; |
318 |
-+ |
319 |
-+ // pick out the colour to use from the cairo source |
320 |
-+ cairo_solid_pattern_t *solid = (cairo_solid_pattern_t*) source; |
321 |
-+ // documentation says you have to freeze the cache, but I don't believe it |
322 |
-+ _cairo_scaled_font_freeze_cache(scaled_font); |
323 |
-+ |
324 |
-+ QColor tempColour(solid->color.red * 255, solid->color.green * 255, solid->color.blue * 255); |
325 |
-+ QVector<QPointF> positions(num_glyphs); |
326 |
-+ QVector<unsigned int> glyphss(num_glyphs); |
327 |
-+ FT_Face face = cairo_ft_scaled_font_lock_face (scaled_font); |
328 |
-+ const FT_Size_Metrics& ftMetrics = face->size->metrics; |
329 |
-+ QFont font(face->family_name); |
330 |
-+ font.setStyleStrategy(QFont::NoFontMerging); |
331 |
-+ font.setBold(face->style_flags & FT_STYLE_FLAG_BOLD); |
332 |
-+ font.setItalic(face->style_flags & FT_STYLE_FLAG_ITALIC); |
333 |
-+ font.setKerning(face->face_flags & FT_FACE_FLAG_KERNING); |
334 |
-+ font.setPixelSize(ftMetrics.y_ppem); |
335 |
-+ cairo_ft_scaled_font_unlock_face(scaled_font); |
336 |
-+ qs->p->setFont(font); |
337 |
-+ qs->p->setPen(tempColour); |
338 |
-+ for (int currentGlyph = 0; currentGlyph < num_glyphs; currentGlyph++) { |
339 |
-+ positions.append(QPointF(glyphs[currentGlyph].x, glyphs[currentGlyph].y)); |
340 |
-+ glyphss.append(glyphs[currentGlyph].index); |
341 |
-+ } |
342 |
-+ QGlyphRun qglyphs; |
343 |
-+ qglyphs.setGlyphIndexes(glyphss); |
344 |
-+ qglyphs.setPositions(positions); |
345 |
-+ qs->p->drawGlyphRun(QPointF(), qglyphs); |
346 |
-+ _cairo_scaled_font_thaw_cache(scaled_font); |
347 |
-+ return CAIRO_INT_STATUS_SUCCESS; |
348 |
-+#elif (QT_VERSION >= QT_VERSION_CHECK(4, 7, 0)) || defined(QT_GLYPHS_API_BACKPORT) |
349 |
- cairo_qt_surface_t *qs = (cairo_qt_surface_t *) abstract_surface; |
350 |
- |
351 |
- // pick out the colour to use from the cairo source |
352 |
|
353 |
diff --git a/x11-libs/cairo/files/cairo-1.2.4-lcd-cleartype-like.diff b/x11-libs/cairo/files/cairo-1.2.4-lcd-cleartype-like.diff |
354 |
deleted file mode 100644 |
355 |
index 2f908b8..0000000 |
356 |
--- a/x11-libs/cairo/files/cairo-1.2.4-lcd-cleartype-like.diff |
357 |
+++ /dev/null |
358 |
@@ -1,275 +0,0 @@ |
359 |
-diff -rup libcairo-1.2.4.orig/src/cairo-ft-font.c libcairo-1.2.4/src/cairo-ft-font.c |
360 |
---- libcairo-1.2.4.orig/src/cairo-ft-font.c 2006-08-22 21:40:02.802247352 +0800 |
361 |
-+++ libcairo-1.2.4/src/cairo-ft-font.c 2006-08-22 21:40:39.443677008 +0800 |
362 |
-@@ -53,6 +53,8 @@ |
363 |
- #include FT_SYNTHESIS_H |
364 |
- #endif |
365 |
- |
366 |
-+#define FIR_FILTER 1 |
367 |
-+ |
368 |
- #define DOUBLE_TO_26_6(d) ((FT_F26Dot6)((d) * 64.0)) |
369 |
- #define DOUBLE_FROM_26_6(t) ((double)(t) / 64.0) |
370 |
- #define DOUBLE_TO_16_16(d) ((FT_Fixed)((d) * 65536.0)) |
371 |
-@@ -492,6 +494,8 @@ _cairo_ft_unscaled_font_destroy (void *a |
372 |
- } |
373 |
- } |
374 |
- |
375 |
-+static const int fir_filter[5] = { 0x1C, 0x38, 0x55, 0x38, 0x1C }; |
376 |
-+ |
377 |
- static cairo_bool_t |
378 |
- _has_unlocked_face (void *entry) |
379 |
- { |
380 |
-@@ -779,7 +783,220 @@ _get_bitmap_surface (FT_Bitmap *bi |
381 |
- } |
382 |
- format = CAIRO_FORMAT_A8; |
383 |
- break; |
384 |
-- case CAIRO_ANTIALIAS_SUBPIXEL: { |
385 |
-+ case CAIRO_ANTIALIAS_SUBPIXEL: |
386 |
-+#ifdef FIR_FILTER |
387 |
-+ { |
388 |
-+ unsigned char* line; |
389 |
-+ unsigned char* bufBitmap; |
390 |
-+ int pitch; |
391 |
-+ unsigned char *data_rgba; |
392 |
-+ unsigned int width_rgba, stride_rgba; |
393 |
-+ int vmul = 1; |
394 |
-+ int hmul = 1; |
395 |
-+ |
396 |
-+ switch (font_options->subpixel_order) { |
397 |
-+ case CAIRO_SUBPIXEL_ORDER_DEFAULT: |
398 |
-+ case CAIRO_SUBPIXEL_ORDER_RGB: |
399 |
-+ case CAIRO_SUBPIXEL_ORDER_BGR: |
400 |
-+ default: |
401 |
-+ width /= 3; |
402 |
-+ hmul = 3; |
403 |
-+ break; |
404 |
-+ case CAIRO_SUBPIXEL_ORDER_VRGB: |
405 |
-+ case CAIRO_SUBPIXEL_ORDER_VBGR: |
406 |
-+ vmul = 3; |
407 |
-+ height /= 3; |
408 |
-+ break; |
409 |
-+ } |
410 |
-+ /* |
411 |
-+ * Filter the glyph to soften the color fringes |
412 |
-+ */ |
413 |
-+ width_rgba = width; |
414 |
-+ stride = bitmap->pitch; |
415 |
-+ stride_rgba = (width_rgba * 4 + 3) & ~3; |
416 |
-+ data_rgba = calloc (1, stride_rgba * height); |
417 |
-+ |
418 |
-+ /* perform in-place FIR filtering in either the horizontal or |
419 |
-+ * vertical direction. We're going to modify the RGB graymap, |
420 |
-+ * but that's ok, because we either own it, or its part of |
421 |
-+ * the FreeType glyph slot, which will not be used anymore. |
422 |
-+ */ |
423 |
-+ pitch = bitmap->pitch; |
424 |
-+ line = (unsigned char*)bitmap->buffer; |
425 |
-+ if ( pitch < 0 ) |
426 |
-+ line -= pitch*(height-1); |
427 |
-+ |
428 |
-+ bufBitmap = line; |
429 |
-+ |
430 |
-+ switch (font_options->subpixel_order) { |
431 |
-+ case CAIRO_SUBPIXEL_ORDER_DEFAULT: |
432 |
-+ case CAIRO_SUBPIXEL_ORDER_RGB: |
433 |
-+ case CAIRO_SUBPIXEL_ORDER_BGR: |
434 |
-+ { |
435 |
-+ int h; |
436 |
-+ |
437 |
-+ for ( h = height; h > 0; h--, line += pitch ) { |
438 |
-+ int pix[6] = { 0, 0, 0, 0, 0, 0 }; |
439 |
-+ unsigned char* p = line; |
440 |
-+ unsigned char* limit = line + width*3; |
441 |
-+ int nn, val, val2; |
442 |
-+ |
443 |
-+ val = p[0]; |
444 |
-+ for (nn = 0; nn < 3; nn++) |
445 |
-+ pix[2 + nn] += val * fir_filter[nn]; |
446 |
-+ |
447 |
-+ val = p[1]; |
448 |
-+ for (nn = 0; nn < 4; nn++) |
449 |
-+ pix[1 + nn] += val * fir_filter[nn]; |
450 |
-+ |
451 |
-+ p += 2; |
452 |
-+ |
453 |
-+ for ( ; p < limit; p++ ) { |
454 |
-+ val = p[0]; |
455 |
-+ for (nn = 0; nn < 5; nn++) |
456 |
-+ pix[nn] += val * fir_filter[nn]; |
457 |
-+ |
458 |
-+ val2 = pix[0] / 256; |
459 |
-+ val2 |= -(val2 >> 8); |
460 |
-+ p[-2] = (unsigned char)val2; |
461 |
-+ |
462 |
-+ for (nn = 0; nn < 5; nn++) |
463 |
-+ pix[nn] = pix[nn + 1]; |
464 |
-+ } |
465 |
-+ for (nn = 0; nn < 2; nn++ ) { |
466 |
-+ val2 = pix[nn] / 256; |
467 |
-+ val2 |= -(val2 >> 8); |
468 |
-+ p[nn - 2] = (unsigned char)val2; |
469 |
-+ } |
470 |
-+ } |
471 |
-+ } |
472 |
-+ break; |
473 |
-+ case CAIRO_SUBPIXEL_ORDER_VRGB: |
474 |
-+ case CAIRO_SUBPIXEL_ORDER_VBGR: |
475 |
-+ { |
476 |
-+ int w; |
477 |
-+ |
478 |
-+ for (w = 0; w < width; w++ ) { |
479 |
-+ int pix[6] = { 0, 0, 0, 0, 0, 0 }; |
480 |
-+ unsigned char* p = bufBitmap + w; |
481 |
-+ unsigned char* limit = bufBitmap + w + height*3*pitch; |
482 |
-+ int nn, val, val2; |
483 |
-+ |
484 |
-+ val = p[0]; |
485 |
-+ for (nn = 0; nn < 3; nn++) |
486 |
-+ pix[2 + nn] += val*fir_filter[nn]; |
487 |
-+ |
488 |
-+ val = p[pitch]; |
489 |
-+ for (nn = 0; nn < 4; nn++ ) |
490 |
-+ pix[1 + nn] += val * fir_filter[nn]; |
491 |
-+ |
492 |
-+ p += 2*pitch; |
493 |
-+ for ( ; p < limit; p += pitch ) { |
494 |
-+ val = p[0]; |
495 |
-+ for (nn = 0; nn < 5; nn++ ) |
496 |
-+ pix[nn] += val * fir_filter[nn]; |
497 |
-+ |
498 |
-+ val2 = pix[0] / 256; |
499 |
-+ val2 |= -(val2 >> 8); |
500 |
-+ p[-2 * pitch] = (unsigned char)val2; |
501 |
-+ |
502 |
-+ for (nn = 0; nn < 5; nn++) |
503 |
-+ pix[nn] = pix[nn+1]; |
504 |
-+ } |
505 |
-+ |
506 |
-+ for (nn = 0; nn < 2; nn++) { |
507 |
-+ val2 = pix[nn] / 256; |
508 |
-+ val2 |= -(val2 >> 8); |
509 |
-+ p[(nn - 2) * pitch] = (unsigned char)val2; |
510 |
-+ } |
511 |
-+ } |
512 |
-+ } |
513 |
-+ break; |
514 |
-+ default: /* shouldn't happen */ |
515 |
-+ break; |
516 |
-+ } |
517 |
-+ |
518 |
-+ /* now copy the resulting graymap into an ARGB32 image */ |
519 |
-+ { |
520 |
-+ unsigned char* in_line = bufBitmap; |
521 |
-+ unsigned char* out_line = data_rgba; |
522 |
-+ int h = height; |
523 |
-+ |
524 |
-+ switch (font_options->subpixel_order) { |
525 |
-+ case CAIRO_SUBPIXEL_ORDER_DEFAULT: |
526 |
-+ case CAIRO_SUBPIXEL_ORDER_RGB: |
527 |
-+ for ( ; h > 0; h--, in_line += pitch, out_line += stride_rgba) { |
528 |
-+ unsigned char* in = in_line; |
529 |
-+ int* out = (int*)out_line; |
530 |
-+ int w; |
531 |
-+ |
532 |
-+ for (w = width; w > 0; w--, in += 3, out += 1) { |
533 |
-+ int r = in[0]; |
534 |
-+ int g = in[1]; |
535 |
-+ int b = in[2]; |
536 |
-+ |
537 |
-+ out[0] = (g << 24) | (r << 16) | (g << 8) | b; |
538 |
-+ } |
539 |
-+ } |
540 |
-+ break; |
541 |
-+ case CAIRO_SUBPIXEL_ORDER_BGR: |
542 |
-+ for ( ; h > 0; h--, in_line += pitch, out_line += stride_rgba) { |
543 |
-+ unsigned char* in = in_line; |
544 |
-+ int* out = (int*)out_line; |
545 |
-+ int w; |
546 |
-+ |
547 |
-+ for (w = width; w > 0; w--, in += 3, out += 1) { |
548 |
-+ int r = in[2]; |
549 |
-+ int g = in[1]; |
550 |
-+ int b = in[0]; |
551 |
-+ |
552 |
-+ out[0] = (g << 24) | (r << 16) | (g << 8) | b; |
553 |
-+ } |
554 |
-+ } |
555 |
-+ break; |
556 |
-+ case CAIRO_SUBPIXEL_ORDER_VRGB: |
557 |
-+ for ( ; h > 0; h--, in_line += pitch*3, out_line += stride_rgba) { |
558 |
-+ unsigned char* in = in_line; |
559 |
-+ int* out = (int*)out_line; |
560 |
-+ int w; |
561 |
-+ |
562 |
-+ for (w = width; w > 0; w--, in += 1, out += 1) { |
563 |
-+ int r = in[0]; |
564 |
-+ int g = in[pitch]; |
565 |
-+ int b = in[pitch*2]; |
566 |
-+ |
567 |
-+ out[0] = (g << 24) | (r << 16) | (g << 8) | b; |
568 |
-+ } |
569 |
-+ } |
570 |
-+ break; |
571 |
-+ case CAIRO_SUBPIXEL_ORDER_VBGR: |
572 |
-+ for ( ; h > 0; h--, in_line += pitch*3, out_line += stride_rgba) { |
573 |
-+ unsigned char* in = in_line; |
574 |
-+ int* out = (int*)out_line; |
575 |
-+ int w; |
576 |
-+ |
577 |
-+ for (w = width; w > 0; w--, in += 1, out += 1) { |
578 |
-+ int r = in[2*pitch]; |
579 |
-+ int g = in[pitch]; |
580 |
-+ int b = in[0]; |
581 |
-+ |
582 |
-+ out[0] = (g << 24) | (r << 16) | (g << 8) | b; |
583 |
-+ } |
584 |
-+ } |
585 |
-+ break; |
586 |
-+ } |
587 |
-+ } |
588 |
-+ |
589 |
-+ if (own_buffer) |
590 |
-+ free (bitmap->buffer); |
591 |
-+ data = data_rgba; |
592 |
-+ stride = stride_rgba; |
593 |
-+ format = CAIRO_FORMAT_ARGB32; |
594 |
-+ subpixel = TRUE; |
595 |
-+ break; |
596 |
-+ } |
597 |
-+#else /* !FIR_FILTER */ |
598 |
-+ { |
599 |
- int x, y; |
600 |
- unsigned char *in_line, *out_line, *in; |
601 |
- unsigned int *out; |
602 |
-@@ -871,6 +1088,7 @@ _get_bitmap_surface (FT_Bitmap *bi |
603 |
- subpixel = TRUE; |
604 |
- break; |
605 |
- } |
606 |
-+#endif /* !FIR_FILTER */ |
607 |
- } |
608 |
- break; |
609 |
- case FT_PIXEL_MODE_GRAY2: |
610 |
-@@ -986,12 +1204,22 @@ _render_glyph_outline (FT_Face |
611 |
- matrix.xx *= 3; |
612 |
- hmul = 3; |
613 |
- subpixel = TRUE; |
614 |
-+#ifdef FIR_FILTER |
615 |
-+ cbox.xMin -= 64; |
616 |
-+ cbox.xMax += 64; |
617 |
-+ width += 2; |
618 |
-+#endif |
619 |
- break; |
620 |
- case CAIRO_SUBPIXEL_ORDER_VRGB: |
621 |
- case CAIRO_SUBPIXEL_ORDER_VBGR: |
622 |
- matrix.yy *= 3; |
623 |
- vmul = 3; |
624 |
- subpixel = TRUE; |
625 |
-+#ifdef FIR_FILTER |
626 |
-+ cbox.yMin -= 64; |
627 |
-+ cbox.yMax += 64; |
628 |
-+ height += 2; |
629 |
-+#endif |
630 |
- break; |
631 |
- } |
632 |
- FT_Outline_Transform (outline, &matrix); |
633 |
-Only in libcairo-1.2.4/src: cairo-ft-font.c.orig |
634 |
|
635 |
diff --git a/x11-libs/cairo/files/cairo-1.8.10-libpng14.patch b/x11-libs/cairo/files/cairo-1.8.10-libpng14.patch |
636 |
deleted file mode 100644 |
637 |
index 1872367..0000000 |
638 |
--- a/x11-libs/cairo/files/cairo-1.8.10-libpng14.patch |
639 |
+++ /dev/null |
640 |
@@ -1,11 +0,0 @@ |
641 |
---- configure.ac |
642 |
-+++ configure.ac |
643 |
-@@ -161,7 +161,7 @@ |
644 |
- AC_ARG_VAR([png_REQUIRES], [module name for libpng to search for using pkg-config]) |
645 |
- if test "x$png_REQUIRES" = x; then |
646 |
- # libpng13 is GnuWin32's libpng-1.2.8 :-( |
647 |
-- for l in libpng12 libpng13 libpng10 libpng; do |
648 |
-+ for l in libpng14 libpng12 libpng13 libpng10 libpng; do |
649 |
- if $PKG_CONFIG --exists $l ; then |
650 |
- png_REQUIRES=$l |
651 |
- use_png=yes |
652 |
|
653 |
diff --git a/x11-libs/cairo/files/cairo-1.8.8-interix.patch b/x11-libs/cairo/files/cairo-1.8.8-interix.patch |
654 |
deleted file mode 100644 |
655 |
index dc20714..0000000 |
656 |
--- a/x11-libs/cairo/files/cairo-1.8.8-interix.patch |
657 |
+++ /dev/null |
658 |
@@ -1,16 +0,0 @@ |
659 |
-diff -ru cairo-1.8.8.orig/build/configure.ac.tools cairo-1.8.8/build/configure.ac.tools |
660 |
---- cairo-1.8.8.orig/build/configure.ac.tools 2009-09-30 13:36:42 +0200 |
661 |
-+++ cairo-1.8.8/build/configure.ac.tools 2009-09-30 13:50:50 +0200 |
662 |
-@@ -21,5 +21,12 @@ |
663 |
- *) PKGCONFIG_REQUIRES="Requires.private"; ;; |
664 |
- esac |
665 |
- |
666 |
-+dnl hmm... on interix, things go really bad with Requires.private, since libpng12 |
667 |
-+dnl is missing on the final link commands, so gtk+'s configure checks for cairo |
668 |
-+dnl fail miserably with unresolved symbols to it. |
669 |
-+case "$host_os" in |
670 |
-+interix*) PKGCONFIG_REQUIRES="Requires" ;; |
671 |
-+esac |
672 |
-+ |
673 |
- AC_SUBST(PKGCONFIG_REQUIRES) |
674 |
- |
675 |
|
676 |
diff --git a/x11-libs/cairo/metadata.xml b/x11-libs/cairo/metadata.xml |
677 |
deleted file mode 100644 |
678 |
index a842180..0000000 |
679 |
--- a/x11-libs/cairo/metadata.xml |
680 |
+++ /dev/null |
681 |
@@ -1,27 +0,0 @@ |
682 |
-<?xml version="1.0" encoding="UTF-8"?> |
683 |
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
684 |
-<pkgmetadata> |
685 |
-<herd>x11</herd> |
686 |
-<maintainer> |
687 |
- <email>cardoe@g.o</email> |
688 |
- <name>Doug Goldstein</name> |
689 |
-</maintainer> |
690 |
-<maintainer> |
691 |
- <email>spatz@g.o</email> |
692 |
- <name>Dror Levin</name> |
693 |
-</maintainer> |
694 |
-<use> |
695 |
- <flag name='cleartype'>Add ClearType-style behavior for sub-pixel hinting. |
696 |
- Patch taken from Arch Linux</flag> |
697 |
- <flag name='lcdfilter'>Add FreeType LCD filtering, ClearType-style behavior |
698 |
- for sub-pixel-hinting. Overrides cleartype USE flag. Patch taken from |
699 |
- Ubuntu</flag> |
700 |
- <flag name='opengl' restrict=">=x11-libs/cairo-1.10.0"> |
701 |
- Use Mesa backend for acceleration |
702 |
- </flag> |
703 |
- <flag name='drm'>Use Linux DRM for backend acceleration</flag> |
704 |
- <flag name='gallium'>Use Mesa's Gallium backend for acceleration</flag> |
705 |
- <flag name='glib'>Compile with GLib Object System support</flag> |
706 |
- <flag name='openvg'>Use OpenVG for backend acceleration</flag> |
707 |
-</use> |
708 |
-</pkgmetadata> |