summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2003-09-10 04:37:59 +0000
committerMike Frysinger <vapier@gentoo.org>2003-09-10 04:37:59 +0000
commit66128a65d284274dda4050ab415e2a6f4dfb1892 (patch)
tree038bae4556a09b0a601b1874b569fd262d17a91d /media-video/SDLcam
parentrepoman: fix leading whitespace; trim commented code (diff)
downloadhistorical-66128a65d284274dda4050ab415e2a6f4dfb1892.tar.gz
historical-66128a65d284274dda4050ab415e2a6f4dfb1892.tar.bz2
historical-66128a65d284274dda4050ab415e2a6f4dfb1892.zip
gcc3 patch #27535
Diffstat (limited to 'media-video/SDLcam')
-rw-r--r--media-video/SDLcam/ChangeLog6
-rw-r--r--media-video/SDLcam/SDLcam-0.7.3.ebuild27
-rw-r--r--media-video/SDLcam/files/0.7.3-gcc3.patch102
3 files changed, 119 insertions, 16 deletions
diff --git a/media-video/SDLcam/ChangeLog b/media-video/SDLcam/ChangeLog
index 05f3c70dab26..a7f2b5ab65e4 100644
--- a/media-video/SDLcam/ChangeLog
+++ b/media-video/SDLcam/ChangeLog
@@ -1,10 +1,12 @@
# ChangeLog for media-video/SDLcam
# Copyright 2002-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/SDLcam/ChangeLog,v 1.2 2003/02/12 07:35:58 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/SDLcam/ChangeLog,v 1.3 2003/09/10 04:37:59 vapier Exp $
*SDLcam-0.7.3 (30 Sep 2002)
- 30 Sep 2002; Matt Keadle <mkeadle@gentoo.org> SDLcam-0.7.3.ebuild :
+ 10 Sep 2003; Mike Frysinger <vapier@gentoo.org> :
+ gcc3 patch #27535.
+ 30 Sep 2002; Matt Keadle <mkeadle@gentoo.org> SDLcam-0.7.3.ebuild :
SDLcam was in portage, then it went missing, now it's back. This
version cures past issues with gcc3.x.
diff --git a/media-video/SDLcam/SDLcam-0.7.3.ebuild b/media-video/SDLcam/SDLcam-0.7.3.ebuild
index 0b2d4a467e5f..cf9e01bf798d 100644
--- a/media-video/SDLcam/SDLcam-0.7.3.ebuild
+++ b/media-video/SDLcam/SDLcam-0.7.3.ebuild
@@ -1,33 +1,32 @@
# Copyright 1999-2003 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/SDLcam/SDLcam-0.7.3.ebuild,v 1.5 2003/02/28 16:55:00 liquidx Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/SDLcam/SDLcam-0.7.3.ebuild,v 1.6 2003/09/10 04:37:59 vapier Exp $
-S="${WORKDIR}/${P}"
DESCRIPTION="Webcam application that uses the SDL library"
HOMEPAGE="http://raph.darktech.org/SDLcam/"
SRC_URI="http://raph.darktech.org/SDLcam/downloads/${P}.tar.gz"
+
LICENSE="GPL-2"
-KEYWORDS="x86"
SLOT="0"
+KEYWORDS="x86"
DEPEND="dev-libs/libxml2
media-libs/libsdl
media-libs/sdl-image
media-libs/sdl-ttf"
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+ epatch ${FILESDIR}/${PV}-gcc3.patch
+ # Don't you love hardcoded vars?
+ sed -i \
+ -e "s:/usr/local/share/SDLcam/:/usr/share/SDLcam/:" \
+ -e "s:/usr/local/lib/SDLcam:/usr/lib/SDLcam:" \
+ configuration.h interface.cpp SDL_v4l_filters.c
+}
src_compile() {
-
- # Don't you love hardcoded vars?
- mv configuration.h configuration.h.orig
- sed "s:/usr/local/share/SDLcam/:/usr/share/SDLcam/:" \
- configuration.h.orig > configuration.h
- mv interface.cpp interface.cpp.orig
- sed "s:/usr/local/share/SDLcam:/usr/share/SDLcam:" \
- interface.cpp.orig > interface.cpp
- mv SDL_v4l_filters.c SDL_v4l_filters.c.orig
- sed "s:/usr/local/lib/SDLcam:/usr/lib/SDLcam:" \
- SDL_v4l_filters.c.orig > SDL_v4l_filters.c
emake || die
}
diff --git a/media-video/SDLcam/files/0.7.3-gcc3.patch b/media-video/SDLcam/files/0.7.3-gcc3.patch
new file mode 100644
index 000000000000..a168263f529b
--- /dev/null
+++ b/media-video/SDLcam/files/0.7.3-gcc3.patch
@@ -0,0 +1,102 @@
+--- filter/Absdiff.c 2002-08-25 17:54:47.000000000 -0400
++++ filter/Absdiff.c?rt=sdlcam&r=1.3&p=1 2003-09-10 00:33:39.213153784 -0400
+@@ -33,53 +33,52 @@
+ #ifdef MMX
+ /* {{{ D = [A-B] OR [B-A] ; [] mean sturated to 0 */
+ if (len < 8) return 0; // image size must be at least 8 bytes
+- asm volatile ("
+- push %%ebx
+- push %%ecx
+- push %%esi
+- push %%edi
+- mov %3, %%ecx
+- mov %2, %%edi
+- mov %1, %%ebx
+- mov %0, %%esi
+- shr $5, %%ecx
+- .align 16
+- .absdiff_MMX:
+- movq (%%esi), %%mm0
+- movq 8(%%esi), %%mm1
+- movq 16(%%esi), %%mm2
+- movq 24(%%esi), %%mm3
+- movq (%%ebx), %%mm4
+- movq 8(%%ebx), %%mm5
+- movq 16(%%ebx), %%mm6
+- movq 24(%%ebx), %%mm7
+- psubusb %%mm4 , %%mm0
+- psubusb %%mm5 , %%mm1
+- psubusb %%mm6 , %%mm2
+- psubusb %%mm7 , %%mm3
+- psubusb (%%esi), %%mm4
+- psubusb 8(%%esi), %%mm5
+- psubusb 16(%%esi), %%mm6
+- psubusb 24(%%esi), %%mm7
+- por %%mm4 , %%mm0
+- por %%mm5 , %%mm1
+- por %%mm6 , %%mm2
+- por %%mm7 , %%mm3
+- movq %%mm0, (%%edi)
+- movq %%mm1, 8(%%edi)
+- movq %%mm2, 16(%%edi)
+- movq %%mm3, 24(%%edi)
+- add $32, %%esi
+- add $32, %%edi
+- add $32, %%ebx
+- dec %%ecx
+- jnz .absdiff_MMX
+- emms
+- pop %%edi
+- pop %%esi
+- pop %%ecx
+- pop %%ebx
+- "
++ asm volatile (
++ " push %%ebx \n"
++ " push %%ecx \n"
++ " push %%esi \n"
++ " push %%edi \n"
++ " mov %3, %%ecx \n"
++ " mov %2, %%edi \n"
++ " mov %1, %%ebx \n"
++ " mov %0, %%esi \n"
++ " shr $5, %%ecx \n"
++ ".align 16 \n"
++ ".absdiff_MMX: \n"
++ " movq (%%esi), %%mm0 \n"
++ " movq 8(%%esi), %%mm1 \n"
++ " movq 16(%%esi), %%mm2 \n"
++ " movq 24(%%esi), %%mm3 \n"
++ " movq (%%ebx), %%mm4 \n"
++ " movq 8(%%ebx), %%mm5 \n"
++ " movq 16(%%ebx), %%mm6 \n"
++ " movq 24(%%ebx), %%mm7 \n"
++ " psubusb %%mm4 , %%mm0 \n"
++ " psubusb %%mm5 , %%mm1 \n"
++ " psubusb %%mm6 , %%mm2 \n"
++ " psubusb %%mm7 , %%mm3 \n"
++ " psubusb (%%esi), %%mm4 \n"
++ " psubusb 8(%%esi), %%mm5 \n"
++ " psubusb 16(%%esi), %%mm6 \n"
++ " psubusb 24(%%esi), %%mm7 \n"
++ " por %%mm4 , %%mm0 \n"
++ " por %%mm5 , %%mm1 \n"
++ " por %%mm6 , %%mm2 \n"
++ " por %%mm7 , %%mm3 \n"
++ " movq %%mm0, (%%edi) \n"
++ " movq %%mm1, 8(%%edi) \n"
++ " movq %%mm2, 16(%%edi) \n"
++ " movq %%mm3, 24(%%edi) \n"
++ " add $32, %%esi \n"
++ " add $32, %%edi \n"
++ " add $32, %%ebx \n"
++ " dec %%ecx \n"
++ " jnz .absdiff_MMX \n"
++ " emms \n"
++ " pop %%edi \n"
++ " pop %%esi \n"
++ " pop %%ecx \n"
++ " pop %%ebx \n"
+ : "=m" (b) // %0
+ :"m" (a), // %1
+ "m" (dst), // %2