Version bump #75283 by Michele Noberasco.
authorMike Frysinger <vapier@gentoo.org>
Fri, 24 Dec 2004 10:24:31 +0000 (10:24 +0000)
committerMike Frysinger <vapier@gentoo.org>
Fri, 24 Dec 2004 10:24:31 +0000 (10:24 +0000)
dev-libs/DirectFB/ChangeLog
dev-libs/DirectFB/DirectFB-0.9.21.ebuild [new file with mode: 0644]
dev-libs/DirectFB/Manifest
dev-libs/DirectFB/files/0.9.21-simd-amd64.patch [new file with mode: 0644]
dev-libs/DirectFB/files/digest-DirectFB-0.9.21 [new file with mode: 0644]

index 7e5a9420304c838c220810355356ad8160961ed7..4f935c9a74440fb579e05fe28436d620c962f2ec 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for dev-libs/DirectFB
 # Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/DirectFB/ChangeLog,v 1.44 2004/12/05 00:18:36 mr_bones_ Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/DirectFB/ChangeLog,v 1.45 2004/12/24 10:24:31 vapier Exp $
+
+*DirectFB-0.9.21 (24 Dec 2004)
+
+  24 Dec 2004; Mike Frysinger <vapier@gentoo.org>
+  +files/0.9.21-simd-amd64.patch, +DirectFB-0.9.21.ebuild:
+  Version bump #75283 by Michele Noberasco.
 
   04 Dec 2004; Michael Sterrett <mr_bones_@gentoo.org>
   DirectFB-0.9.20-r1.ebuild:
diff --git a/dev-libs/DirectFB/DirectFB-0.9.21.ebuild b/dev-libs/DirectFB/DirectFB-0.9.21.ebuild
new file mode 100644 (file)
index 0000000..09c95d0
--- /dev/null
@@ -0,0 +1,105 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/DirectFB/DirectFB-0.9.21.ebuild,v 1.1 2004/12/24 10:24:31 vapier Exp $
+
+inherit eutils 64-bit flag-o-matic gcc
+
+IUSE_VIDEO_CARDS="ati128 cle266 cyber5k i810 mach64 matrox neomagic nsc nvidia radeon savage sis315 tdfx unichrome"
+
+DESCRIPTION="Thin library on top of the Linux framebuffer devices"
+HOMEPAGE="http://www.directfb.org/"
+SRC_URI="http://www.directfb.org/download/DirectFB/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~x86 ~ppc -sparc ~alpha ~hppa ~ia64 -mips ~amd64"
+IUSE="sdl jpeg gif png truetype mpeg mmx sse fusion debug fbcon static"
+
+DEPEND="dev-lang/perl
+       sdl? ( media-libs/libsdl )
+       gif? ( media-libs/giflib )
+       png? ( media-libs/libpng )
+       jpeg? ( media-libs/jpeg )
+       mpeg? ( media-libs/libmpeg3 )
+       truetype? ( >=media-libs/freetype-2.0.1 )"
+
+pkg_setup() {
+       if [ -z "${VIDEO_CARDS}" ] ; then
+               ewarn "All video drivers will be built since you did not specify"
+               ewarn "via the VIDEO_CARDS variable what video card you use."
+               einfo "DirectFB supports: ${IUSE_VIDEO_CARDS} all none"
+       fi
+}
+
+src_unpack() {
+       unpack ${A}
+       cd "${S}"
+
+       #36924
+       sed -i \
+               -e 's:wm97xx_ts=yes:wm97xx_ts=no:' configure \
+               || die "sed configure failed"
+
+
+       # This patch enables simd optimisations for amd64. Since mmx and sse are
+       # masked USE flags on amd64 due to their enabling x86 specific asm more
+       # often than not, we'll just enable them by default. All x86_64 cpus
+       # should support mmx and see. Travis Tilley <lv@gentoo.org>
+       use amd64 && epatch "${FILESDIR}"/${PV}-simd-amd64.patch
+}
+
+src_compile() {
+       local vidcards card
+       for card in ${VIDEO_CARDS} ; do
+               has ${card} ${IUSE_VIDEO_CARDS} && vidcards="${vidcards},${card}"
+       done
+       [ -z "${vidcards}" ] \
+               && vidcards="all" \
+               || vidcards="${vidcards:1}"
+
+       local sdlconf="--disable-sdl"
+       if use sdl ; then
+               # since SDL can link against DirectFB and trigger a
+               # dependency loop, only link against SDL if it isn't
+               # broken #61592
+               echo 'int main(){}' > sdl-test.c
+               $(gcc-getCC) sdl-test.c -lSDL 2>/dev/null \
+                       && sdlconf="--enable-sdl" \
+                       || ewarn "Disabling SDL since libSDL.so is broken"
+       fi
+
+       use mpeg && export CPPFLAGS="${CPPFLAGS} -I/usr/include/libmpeg3"
+       econf \
+               $(use_enable fbcon fbdev) \
+               $(use_enable mmx) \
+               $(use_enable sse) \
+               $(use_enable mpeg libmpeg3) \
+               $(use_enable jpeg) \
+               $(use_enable png) \
+               $(use_enable gif) \
+               $(use_enable truetype freetype) \
+               $(use_enable fusion multi) \
+               $(use_enable debug) \
+               $(use_enable static) \
+               ${sdlconf} \
+               --with-gfxdrivers="${vidcards}" \
+               || die
+       emake || die
+}
+
+src_install() {
+       insinto /etc
+       doins fb.modes
+
+       make DESTDIR="${D}" install || die "make install failed"
+
+       dodoc AUTHORS ChangeLog NEWS README* TODO
+       dohtml -r docs/html/*
+}
+
+pkg_postinst() {
+       ewarn "Each DirectFB update in the 0.9.xx series"
+       ewarn "breaks DirectFB related applications."
+       ewarn "Please run \"revdep-rebuild\" which can be"
+       ewarn "found by emerging the package 'gentoolkit'."
+}
index 2f681c0939f02fee8a06f32d78f69b96c07105d8..096520f3f8bf3f4c796688c4b8036161de95d9c1 100644 (file)
@@ -1,7 +1,20 @@
-MD5 b67b52c9c8ea260a3340bf512ed677b8 ChangeLog 6851
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
+MD5 54e6878a71bec17f13b960affdecfa03 ChangeLog 7034
 MD5 5569f2d9e310ea41182eac8a83cd65d1 DirectFB-0.9.20-r1.ebuild 3546
 MD5 b798773c0060701f402cec4cddc05f5d metadata.xml 754
-MD5 ba5b8492b20c817af4f669c914a4fe04 files/0.9.20-linux-2.6.patch 809
+MD5 cb7846f8d37abc3bc881c1cc639f0e27 DirectFB-0.9.21.ebuild 3052
 MD5 e9dedca8e82842a80fa7bd1507d5f1c6 files/DirectFB-0.9.20-64bit.diff 5060
+MD5 19ec05b9146f1b76d6bc46c937a14500 files/digest-DirectFB-0.9.21 68
+MD5 ba5b8492b20c817af4f669c914a4fe04 files/0.9.20-linux-2.6.patch 809
 MD5 cf391a4bf3d83146b5f6e5e93fdf779d files/DirectFB-0.9.20-simd-amd64.diff 6152
 MD5 938ad0cd729c90ede0f844b39cbeffa5 files/digest-DirectFB-0.9.20-r1 68
+MD5 51cf3c6f205c566235b00a488947f835 files/0.9.21-simd-amd64.patch 6156
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.9.10 (GNU/Linux)
+
+iD8DBQFBy+5nroRuSHgZdywRAvRrAJ45f1jBiyA7kzeSzrJ0BS7HYXLbNACfY9QS
+qT9qEWRSrlxTn69+POb3O5c=
+=FLu1
+-----END PGP SIGNATURE-----
diff --git a/dev-libs/DirectFB/files/0.9.21-simd-amd64.patch b/dev-libs/DirectFB/files/0.9.21-simd-amd64.patch
new file mode 100644 (file)
index 0000000..3ab2a80
--- /dev/null
@@ -0,0 +1,183 @@
+diff -urN DirectFB-0.9.21.orig/src/gfx/generic/generic_mmx.h DirectFB-0.9.21/src/gfx/generic/generic_mmx.h
+--- DirectFB-0.9.21.orig/src/gfx/generic/generic_mmx.h 2003-06-30 23:26:04.000000000 +0200
++++ DirectFB-0.9.21/src/gfx/generic/generic_mmx.h      2004-01-08 23:46:40.000000000 +0100
+@@ -172,15 +172,19 @@
+                "movq     %%mm1, (%1)\n\t"
+                "dec      %2\n\t"
+                "jz       3f\n\t"
+-               "addl     $8, %1\n\t"
+-               "addl     %4, %0\n\t"
+-               "testl    $0xFFFF0000, %0\n\t"
++               "add     $8, %1\n\t"
++               "add     %4, %0\n\t"
++               "test    $0xFFFF0000, %0\n\t"
+                "jz       2b\n\t"
+-               "movl     %0, %%edx\n\t"
+-               "andl     $0xFFFF0000, %%edx\n\t"
+-               "shrl     $14, %%edx\n\t"
++               "mov     %0, %%edx\n\t"
++               "and     $0xFFFF0000, %%edx\n\t"
++               "shr     $14, %%edx\n\t"
++#ifdef __x86_64__
++               "add      %%rbx, %3\n\t"
++#else
+                "add      %%edx, %3\n\t"
+-               "andl     $0xFFFF, %0\n\t"
++#endif
++               "and     $0xFFFF, %0\n\t"
+                "jmp      1b\n"
+                "3:\n\t"
+                "emms"
+@@ -201,8 +205,8 @@
+                "movd     (%2), %%mm1\n\t"
+                "punpcklbw %%mm0, %%mm1\n\t"
+                "movq     %%mm1, (%0)\n\t"
+-               "addl     $4, %2\n\t"
+-               "addl     $8, %0\n\t"
++               "add     $4, %2\n\t"
++               "add     $8, %0\n\t"
+                "dec      %1\n\t"
+                "jnz      1b\n\t"
+                "emms"
+@@ -238,7 +242,7 @@
+                "dec      %1\n\t"
+                "jz       2f\n\t"
+                "psrlq    $16, %%mm0\n\t"
+-             "addl     $8, %0\n\t"
++             "add     $8, %0\n\t"
+                /* 2. Konvertierung nach 24 bit interleaved */
+              "movq     %%mm0, %%mm3\n\t"
+                "punpcklwd %%mm3, %%mm3\n\t"
+@@ -252,7 +256,7 @@
+                "dec      %1\n\t"
+                "jz       2f\n\t"
+                "psrlq    $16, %%mm0\n\t"
+-             "addl     $8, %0\n\t"
++             "add     $8, %0\n\t"
+                /* 3. Konvertierung nach 24 bit interleaved */
+              "movq     %%mm0, %%mm3\n\t"
+                "punpcklwd %%mm3, %%mm3\n\t"
+@@ -266,7 +270,7 @@
+                "dec      %1\n\t"
+                "jz       2f\n\t"
+                "psrlq    $16, %%mm0\n\t"
+-             "addl     $8, %0\n\t"
++             "add     $8, %0\n\t"
+                /* 4. Konvertierung nach 24 bit interleaved */
+              "movq     %%mm0, %%mm3\n\t"
+                "punpcklwd %%mm3, %%mm3\n\t"
+@@ -279,8 +283,8 @@
+                "movq     %%mm3, (%0)\n\t"
+                "dec      %1\n\t"
+                "jz       2f\n\t"
+-             "addl     $8, %0\n\t"
+-             "addl     $8, %2\n\t"
++             "add     $8, %0\n\t"
++             "add     $8, %2\n\t"
+                "jmp      1b\n"
+                "2:\n\t"
+                "emms"
+@@ -304,8 +308,8 @@
+                "punpcklbw %%mm6, %%mm0\n\t"
+                "por      %%mm7, %%mm0\n\t"
+                "movq     %%mm0, (%0)\n\t"
+-             "addl     $4, %2\n\t"
+-             "addl     $8, %0\n\t"
++             "add     $4, %2\n\t"
++             "add     $8, %0\n\t"
+                "dec      %1\n\t"
+                "jnz      1b\n\t"
+                "emms"
+@@ -322,7 +326,7 @@
+ 
+      __asm__ __volatile__ (
+              "movq     %3, %%mm7\n\t"
+-               "cmpl     $0, %2\n\t"
++               "cmp     $0, %2\n\t"
+                "jne      3f\n\t"
+                "movq     %4, %%mm6\n\t"
+                "movd     %5, %%mm0\n\t"
+@@ -341,7 +345,7 @@
+                "psrlw    $8, %%mm0\n\t"
+                "movq     %%mm0, (%0)\n"
+                "1:\n\t"
+-             "addl     $8, %0\n\t"
++             "add     $8, %0\n\t"
+                "dec      %1\n\t"
+                "jnz      4b\n\t"
+                "jmp      2f\n\t"
+@@ -360,8 +364,8 @@
+                "psrlw    $8, %%mm0\n\t"
+                "movq     %%mm0, (%0)\n"
+                "1:\n\t"
+-             "addl     $8, %2\n\t"
+-             "addl     $8, %0\n\t"
++             "add     $8, %2\n\t"
++             "add     $8, %0\n\t"
+                "dec      %1\n\t"
+                "jnz      3b\n\t"
+                "2:\n\t"
+@@ -379,7 +383,7 @@
+ 
+      __asm__ __volatile__ (
+              "movq     %3, %%mm7\n\t"
+-               "cmpl     $0, %2\n\t"
++               "cmp     $0, %2\n\t"
+                "jne      3f\n\t"
+                "movq     %4, %%mm6\n\t"
+                "movd     %5, %%mm0\n\t"
+@@ -397,7 +401,7 @@
+                "psrlw    $8, %%mm1\n\t"
+                "movq     %%mm1, (%0)\n"
+                "1:\n\t"
+-             "addl     $8, %0\n\t"
++             "add     $8, %0\n\t"
+                "dec      %1\n\t"
+                "jnz      4b\n\t"
+                "jmp      2f\n\t"
+@@ -415,8 +419,8 @@
+                "psrlw    $8, %%mm1\n\t"
+                "movq     %%mm1, (%0)\n"
+                "1:\n\t"
+-             "addl     $8, %2\n\t"
+-             "addl     $8, %0\n\t"
++             "add     $8, %2\n\t"
++             "add     $8, %0\n\t"
+                "dec      %1\n\t"
+                "jnz      3b\n\t"
+                "2:\n\t"
+diff -urN DirectFB-0.9.21.orig/src/misc/cpu_accel.c DirectFB-0.9.21/src/misc/cpu_accel.c
+--- DirectFB-0.9.21.orig/lib/direct/cpu_accel.c        2003-08-15 13:32:45.000000000 +0200
++++ DirectFB-0.9.21/lib/direct/cpu_accel.c     2004-01-08 23:48:05.000000000 +0100
+@@ -57,6 +57,13 @@
+ 
+ #include "cpu_accel.h"
+ 
++#ifdef __x86_64__
++static __u32 arch_accel (void)
++{
++      return MM_ACCEL_X86_MMX | MM_ACCEL_X86_SSE | MM_ACCEL_X86_MMXEXT | MM_ACCEL_X86_SSE2 | MM_ACCEL_X86_3DNOW;
++}
++#endif 
++
+ #ifdef ARCH_X86
+ static __u32 arch_accel (void)
+ {
+@@ -175,7 +182,7 @@
+ 
+ __u32 dfb_mm_accel (void)
+ {
+-#if defined (ARCH_X86) || (defined (ARCH_PPC) && defined (ENABLE_ALTIVEC))
++#if defined(__x86_64__) || defined (ARCH_X86) || (defined (ARCH_PPC) && defined (ENABLE_ALTIVEC))
+      static __u32 accel = ~0U;
+ 
+      if (accel != ~0U)
+@@ -183,7 +190,7 @@
+ 
+      accel = arch_accel ();
+ 
+-#ifdef USE_SSE
++#if defined(USE_SSE) && !defined(__x86_64__)
+ 
+      /* test OS support for SSE */
+      if (accel & MM_ACCEL_X86_SSE) {
diff --git a/dev-libs/DirectFB/files/digest-DirectFB-0.9.21 b/dev-libs/DirectFB/files/digest-DirectFB-0.9.21
new file mode 100644 (file)
index 0000000..f99a49d
--- /dev/null
@@ -0,0 +1 @@
+MD5 22699a04f2f618b287aa0ae1b06045b5 DirectFB-0.9.21.tar.gz 1736114