pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/x11/pixman Update to pixman-0.12.0 from 0.11.10.
details: https://anonhg.NetBSD.org/pkgsrc/rev/e9fc0b635b33
branches: trunk
changeset: 548423:e9fc0b635b33
user: bjs <bjs%pkgsrc.org@localhost>
date: Wed Oct 15 00:56:45 2008 +0000
description:
Update to pixman-0.12.0 from 0.11.10.
In addition to many bug fixes, new features [since approximately 0.10.0]
include:
- New image formats with 10 bits per channel
- SSE2 optimizations for many operations
- Opacity based optimizations for operators
- Altivec optimizations for many operations
- A 32 bit region implementation
diffstat:
x11/pixman/Makefile | 23 +++++------------------
x11/pixman/distinfo | 12 ++++++------
x11/pixman/patches/patch-af | 19 -------------------
x11/pixman/patches/patch-ag | 23 -----------------------
x11/pixman/patches/patch-ah | 32 ++++++++++++++++++++++++++++++++
x11/pixman/patches/patch-ai | 30 ++++++++++++++++++++++++++++++
6 files changed, 73 insertions(+), 66 deletions(-)
diffs (192 lines):
diff -r 74dc277b118f -r e9fc0b635b33 x11/pixman/Makefile
--- a/x11/pixman/Makefile Wed Oct 15 00:01:44 2008 +0000
+++ b/x11/pixman/Makefile Wed Oct 15 00:56:45 2008 +0000
@@ -1,8 +1,7 @@
-# $NetBSD: Makefile,v 1.20 2008/09/16 21:22:34 bjs Exp $
+# $NetBSD: Makefile,v 1.21 2008/10/15 00:56:45 bjs Exp $
#
-DISTNAME= pixman-0.11.10
-PKGREVISION= 1
+DISTNAME= pixman-0.12.0
CATEGORIES= x11
MASTER_SITES= ${MASTER_SITE_XORG:=lib/}
EXTRACT_SUFX= .tar.bz2
@@ -15,7 +14,7 @@
GNU_CONFIGURE= yes
USE_LIBTOOL= yes
-USE_TOOLS+= pkg-config perl diff
+USE_TOOLS+= pkg-config perl
###
### XXX Quiet, please!
###
@@ -34,24 +33,12 @@
### tradition of portability, we'll opt to use libtool to export
### the desired symbols, hiding the rest.
###
-### To regenerate the libtool symfile, invoke the 'gen-symfile'
-### target, making sure to define PKG_DEVELOPER. This target
-### requires nm, awk, and tee. The new symfile will be in
-### ${WRKDIR}.
-###
+### Please, do not forget to ensure the currency of this file!
+
MAKE_ENV+= PIXMAN_SYMFILE=${PIXMAN_SYMFILE:Q}
PIXMAN_SYMFILE= ${WRKDIR}/pixman.sym
post-extract:
${CP} ${FILESDIR}/pixman.sym ${WRKDIR}
-.if defined(NM) && defined(PKG_DEVELOPER)
-.PHONY: gen-symfile
-gen-symfile: build
- ${NM} -DP ${WRKSRC}/pixman/.libs/libpixman-1.so | \
- ${AWK} '/^pixman/ { print $$1 }' | \
- ${TOOLS_PLATFORM.tee} > ${WRKDIR}/pixman.sym && \
- ${DIFF} ${FILESDIR}/pixman.sym ${WRKDIR}/pixman.sym
-.endif
-
.include "../../mk/bsd.pkg.mk"
diff -r 74dc277b118f -r e9fc0b635b33 x11/pixman/distinfo
--- a/x11/pixman/distinfo Wed Oct 15 00:01:44 2008 +0000
+++ b/x11/pixman/distinfo Wed Oct 15 00:56:45 2008 +0000
@@ -1,12 +1,12 @@
-$NetBSD: distinfo,v 1.20 2008/09/16 21:22:34 bjs Exp $
+$NetBSD: distinfo,v 1.21 2008/10/15 00:56:45 bjs Exp $
-SHA1 (pixman-0.11.10.tar.bz2) = d4468ac46056185b2d0a0fe94bc9a2e496d44365
-RMD160 (pixman-0.11.10.tar.bz2) = 8d7350e8d9e995a1f977e03e7a66cdd19e851cb0
-Size (pixman-0.11.10.tar.bz2) = 364132 bytes
+SHA1 (pixman-0.12.0.tar.bz2) = 0c57c6c7e21e2545257068f52517c460e6e51ae4
+RMD160 (pixman-0.12.0.tar.bz2) = 7881189a1de21ec5d2e27936c65369f121dcb15f
+Size (pixman-0.12.0.tar.bz2) = 364262 bytes
SHA1 (patch-aa) = 5129f82ee9907ed179315a4790667f0b825175bb
SHA1 (patch-ab) = e76a306cbf2975dec3020cd7a310941b3085782d
SHA1 (patch-ac) = c798e52ecd8fc2a5788552df0a0842f524705126
SHA1 (patch-ad) = b2fa221652bc5f8bec000e071417b0180816a451
SHA1 (patch-ae) = 5690db2799e3750d54cf1cb20bd5734a245f8eb8
-SHA1 (patch-af) = cbd2be6b3f5ae398c38255b974542ab2e4546f52
-SHA1 (patch-ag) = 61b5714db4e849fa7d40279f606e86e261270975
+SHA1 (patch-ah) = 88a444f4ed0bc12387c22751b4cd4ef7cf5a5126
+SHA1 (patch-ai) = 5af5d1287b73ae35d6bc5a6adb5ae4709bf57e67
diff -r 74dc277b118f -r e9fc0b635b33 x11/pixman/patches/patch-af
--- a/x11/pixman/patches/patch-af Wed Oct 15 00:01:44 2008 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-$NetBSD: patch-af,v 1.4 2008/09/16 21:22:34 bjs Exp $
-
-git ref:00f3d6ef22b5a062323208fd540a17ca65dca42b (to vers 0.11.10)
-
-Fix bug in pixman_image_is_opaque().
-
---- pixman/pixman-image.c.orig 2008-06-13 15:51:00.000000000 -0400
-+++ pixman/pixman-image.c
-@@ -818,6 +818,10 @@ pixman_image_is_opaque(pixman_image_t *i
-
- if (image->common.transform)
- return FALSE;
-+
-+ /* Gradients do not necessarily cover the entire compositing area */
-+ if (image->type == LINEAR || image->type == CONICAL || image->type == RADIAL)
-+ return FALSE;
- }
-
- return TRUE;
diff -r 74dc277b118f -r e9fc0b635b33 x11/pixman/patches/patch-ag
--- a/x11/pixman/patches/patch-ag Wed Oct 15 00:01:44 2008 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
-$NetBSD: patch-ag,v 1.1 2008/09/16 21:22:34 bjs Exp $
-
-Fix for bug 17477.
-
-over_2x128 was changing the alphaLo and alphaHi arguments, causing
-stripes.
-
---- pixman/pixman-sse2.c.orig 2008-09-03 19:29:40.000000000 -0400
-+++ pixman/pixman-sse2.c
-@@ -244,9 +244,11 @@ invertColors_2x128 (__m128i dataLo, __m1
- static inline void
- over_2x128 (__m128i* srcLo, __m128i* srcHi, __m128i* alphaLo, __m128i* alphaHi, __m128i* dstLo, __m128i* dstHi)
- {
-- negate_2x128 (*alphaLo, *alphaHi, alphaLo, alphaHi);
-+ __m128i t1, t2;
-
-- pixMultiply_2x128 (dstLo, dstHi, alphaLo, alphaHi, dstLo, dstHi);
-+ negate_2x128 (*alphaLo, *alphaHi, &t1, &t2);
-+
-+ pixMultiply_2x128 (dstLo, dstHi, &t1, &t2, dstLo, dstHi);
-
- *dstLo = _mm_adds_epu8 (*srcLo, *dstLo);
- *dstHi = _mm_adds_epu8 (*srcHi, *dstHi);
diff -r 74dc277b118f -r e9fc0b635b33 x11/pixman/patches/patch-ah
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/x11/pixman/patches/patch-ah Wed Oct 15 00:56:45 2008 +0000
@@ -0,0 +1,32 @@
+$NetBSD: patch-ah,v 1.1 2008/10/15 00:56:45 bjs Exp $
+
+
+1c5de7b05831b3d66821707276b71974a232f5c7
+
+Move _mm_empty() to correct place
+
+The "fbComposeSetupSSE2()" function is guarding most of its code
+depending on the capabilities of the CPU, but unfortunately the call
+to "_mm_empty()" is not part of this code path but executed
+unconditionally. This results in a "illegal instruction" crash on
+non-MMX / non-SSE capable CPUs caused by the the "emms" instruction
+(embedded in "_mm_empty()").
+
+Fix bug 17729.
+
+--- pixman/pixman-sse2.c.orig 2008-09-17 09:50:49.000000000 -0400
++++ pixman/pixman-sse2.c
+@@ -2357,11 +2357,11 @@ fbComposeSetupSSE2(void)
+ pixman_composeFunctions.combineC[PIXMAN_OP_ADD] = sse2CombineAddC;
+
+ pixman_composeFunctions.combineMaskU = sse2CombineMaskU;
++
++ _mm_empty();
+ }
+
+ initialized = TRUE;
+-
+- _mm_empty();
+ }
+
+
diff -r 74dc277b118f -r e9fc0b635b33 x11/pixman/patches/patch-ai
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/x11/pixman/patches/patch-ai Wed Oct 15 00:56:45 2008 +0000
@@ -0,0 +1,30 @@
+$NetBSD: patch-ai,v 1.1 2008/10/15 00:56:45 bjs Exp $
+
+69dadf231283fadcb117b4d9e799e8633a0e4dab
+
+force alignment of arg pointer in potential SSE users
+
+Fix for bug 17824
+
+--- pixman/pixman-utils.c.orig 2008-09-09 08:28:23.000000000 -0400
++++ pixman/pixman-utils.c
+@@ -62,6 +62,9 @@ pixman_transform_point_3d (pixman_transf
+ return TRUE;
+ }
+
++#if defined(USE_SSE2) && defined(__GNUC__) && !defined(__x86_64__) && !defined(__amd64__)
++__attribute__((__force_align_arg_pointer__))
++#endif
+ PIXMAN_EXPORT pixman_bool_t
+ pixman_blt (uint32_t *src_bits,
+ uint32_t *dst_bits,
+@@ -156,6 +159,9 @@ pixman_fill32 (uint32_t *bits,
+ }
+ }
+
++#if defined(USE_SSE2) && defined(__GNUC__) && !defined(__x86_64__) && !defined(__amd64__)
++__attribute__((__force_align_arg_pointer__))
++#endif
+ PIXMAN_EXPORT pixman_bool_t
+ pixman_fill (uint32_t *bits,
+ int stride,
Home |
Main Index |
Thread Index |
Old Index