diff options
author | Diego Elio Pettenò <flameeyes@gentoo.org> | 2006-07-30 14:38:01 +0000 |
---|---|---|
committer | Diego Elio Pettenò <flameeyes@gentoo.org> | 2006-07-30 14:38:01 +0000 |
commit | df214753529e639db7d180191695ade177a9d21e (patch) | |
tree | 170e85f5dd3589b688580e018d3c185e8c12ae06 /media-libs/libtheora | |
parent | Don't block libjingle, remove relayserver and stunserver. (diff) | |
download | historical-df214753529e639db7d180191695ade177a9d21e.tar.gz historical-df214753529e639db7d180191695ade177a9d21e.tar.bz2 historical-df214753529e639db7d180191695ade177a9d21e.zip |
Apply patch for PIC compatibility on x86 architecture, thanks to PaX Team. Closes bug #142182.
Package-Manager: portage-2.1.1_pre4
Diffstat (limited to 'media-libs/libtheora')
-rw-r--r-- | media-libs/libtheora/ChangeLog | 10 | ||||
-rw-r--r-- | media-libs/libtheora/Manifest | 27 | ||||
-rw-r--r-- | media-libs/libtheora/files/digest-libtheora-1.0_alpha6-r1 | 3 | ||||
-rw-r--r-- | media-libs/libtheora/files/libtheora-1.0_alpha6-pic-fix.patch | 166 | ||||
-rw-r--r-- | media-libs/libtheora/libtheora-1.0_alpha6-r1.ebuild | 70 |
5 files changed, 267 insertions, 9 deletions
diff --git a/media-libs/libtheora/ChangeLog b/media-libs/libtheora/ChangeLog index 8acc44631e66..5416b5eed475 100644 --- a/media-libs/libtheora/ChangeLog +++ b/media-libs/libtheora/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for media-libs/libtheora # Copyright 2000-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/libtheora/ChangeLog,v 1.40 2006/06/08 17:54:34 flameeyes Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-libs/libtheora/ChangeLog,v 1.41 2006/07/30 14:38:01 flameeyes Exp $ + +*libtheora-1.0_alpha6-r1 (30 Jul 2006) + + 30 Jul 2006; Diego Pettenò <flameeyes@gentoo.org> + +files/libtheora-1.0_alpha6-pic-fix.patch, + +libtheora-1.0_alpha6-r1.ebuild: + Apply patch for PIC compatibility on x86 architecture, thanks to PaX Team. + Closes bug #142182. 08 Jun 2006; Diego Pettenò <flameeyes@gentoo.org> libtheora-1.0_alpha6.ebuild: diff --git a/media-libs/libtheora/Manifest b/media-libs/libtheora/Manifest index c8bcb5b5e4d6..73c266efeaaa 100644 --- a/media-libs/libtheora/Manifest +++ b/media-libs/libtheora/Manifest @@ -5,6 +5,10 @@ AUX libtheora-1.0_alpha4-enable-flags.patch 876 RMD160 e108485b2129f52f18b316162 MD5 e0d4279bd99d241bd9414fcab198c847 files/libtheora-1.0_alpha4-enable-flags.patch 876 RMD160 e108485b2129f52f18b31616276dcc9d6a1ac3be files/libtheora-1.0_alpha4-enable-flags.patch 876 SHA256 387a6725b488717bcc0738cd4a0707193aba5e271e8cde20a63840157ef6562c files/libtheora-1.0_alpha4-enable-flags.patch 876 +AUX libtheora-1.0_alpha6-pic-fix.patch 10712 RMD160 bb24bd1268ea4bbce8bdfc4ae21c7d5a463067ff SHA1 8654476589b44ecf0eea17204189c7b76c7c812b SHA256 1c5e77d55fe186f61cdde878d4f06333a7c4382ddea14a02b82c7e2395b1c4cd +MD5 5ee6df083131befd1d185acff813aa77 files/libtheora-1.0_alpha6-pic-fix.patch 10712 +RMD160 bb24bd1268ea4bbce8bdfc4ae21c7d5a463067ff files/libtheora-1.0_alpha6-pic-fix.patch 10712 +SHA256 1c5e77d55fe186f61cdde878d4f06333a7c4382ddea14a02b82c7e2395b1c4cd files/libtheora-1.0_alpha6-pic-fix.patch 10712 AUX libtheora-1.0alpha6-buildfixes.patch 3977 RMD160 58061a155a4fbdb35ec87288d332001906ba457e SHA1 972fd0c16c2ac9fa15996cd54ad2b34034ee27ed SHA256 d2770fadcef32f8c4ea585865974ad82b8e55b4c6b874168d258b5c65e5d2701 MD5 1eb2cfa449ce65cb36b04b1d8c93933f files/libtheora-1.0alpha6-buildfixes.patch 3977 RMD160 58061a155a4fbdb35ec87288d332001906ba457e files/libtheora-1.0alpha6-buildfixes.patch 3977 @@ -25,14 +29,18 @@ EBUILD libtheora-1.0_alpha5.ebuild 1240 RMD160 32bb1624140b5b3719bee6fde37f7ccc7 MD5 ec899c4e644f4fad96d375d369d6d05e libtheora-1.0_alpha5.ebuild 1240 RMD160 32bb1624140b5b3719bee6fde37f7ccc7a38d556 libtheora-1.0_alpha5.ebuild 1240 SHA256 81ed04561ac6d5132610964694ea187a65cf58b17bc9df3d779f53c981935630 libtheora-1.0_alpha5.ebuild 1240 +EBUILD libtheora-1.0_alpha6-r1.ebuild 1703 RMD160 20bad8f81a482f58b155b7a7f923d4eab0505973 SHA1 32ff23b9548923588c5015254e379aae009aec7e SHA256 61627de774872240d6b9379b1767d2ce95675db564161ff883f00f42f5fa178e +MD5 4acfa6755f8790779299c85e34bccad2 libtheora-1.0_alpha6-r1.ebuild 1703 +RMD160 20bad8f81a482f58b155b7a7f923d4eab0505973 libtheora-1.0_alpha6-r1.ebuild 1703 +SHA256 61627de774872240d6b9379b1767d2ce95675db564161ff883f00f42f5fa178e libtheora-1.0_alpha6-r1.ebuild 1703 EBUILD libtheora-1.0_alpha6.ebuild 1594 RMD160 33ee8188956bf2e2975ab3d1eaef48ae69ce815f SHA1 562e8256a8cd3a56a55cacedd822795812bc9a0b SHA256 e7c192f0f60b1db3fc0be2398828f9047547ad05ab0544b13fd8f9833971eac5 MD5 1b2ce35bb8bbcf35d6134e2fce387faa libtheora-1.0_alpha6.ebuild 1594 RMD160 33ee8188956bf2e2975ab3d1eaef48ae69ce815f libtheora-1.0_alpha6.ebuild 1594 SHA256 e7c192f0f60b1db3fc0be2398828f9047547ad05ab0544b13fd8f9833971eac5 libtheora-1.0_alpha6.ebuild 1594 -MISC ChangeLog 5397 RMD160 dca1aaf9284304ae187b043f8deb20fd8d4ccdaf SHA1 07b1c4d4066c25b390787433aa27927898112f78 SHA256 2556591bf9cb49d405ec5b13e33e10548f29ba7465653bf47c86a642cdb26ded -MD5 c12c52dbc0f961c22b53221bd73f1261 ChangeLog 5397 -RMD160 dca1aaf9284304ae187b043f8deb20fd8d4ccdaf ChangeLog 5397 -SHA256 2556591bf9cb49d405ec5b13e33e10548f29ba7465653bf47c86a642cdb26ded ChangeLog 5397 +MISC ChangeLog 5670 RMD160 d24d36dee6578e37ecd23949f8274836aaef8a92 SHA1 81e339db61ce30ca64530c2f73900deca399cd91 SHA256 3dcebfb296d9dea92e840f832ccbfff06bf9556445239b7d0ca20caf53c17fbb +MD5 c64a55e165b4daf40dd227ab8eeed9ec ChangeLog 5670 +RMD160 d24d36dee6578e37ecd23949f8274836aaef8a92 ChangeLog 5670 +SHA256 3dcebfb296d9dea92e840f832ccbfff06bf9556445239b7d0ca20caf53c17fbb ChangeLog 5670 MISC metadata.xml 225 RMD160 6e3fccd1ae62f02a0cb28d319aa185af0020822d SHA1 1b8ccc849053361ac907dc9b652796defd1ce906 SHA256 1a7f3e805478b42bc379b2a36944579d34d7e66ba5bf418a651e1cd58ad0a7f5 MD5 9ef4af14dad87b03fde8e43f19e08d26 metadata.xml 225 RMD160 6e3fccd1ae62f02a0cb28d319aa185af0020822d metadata.xml 225 @@ -49,10 +57,13 @@ SHA256 5ac9fa8a611d5eacdc5313b206a352e754b075de1b10d2322479ebbea3f4a35d files/di MD5 06ec218ca2c06cddc319fb505528640c files/digest-libtheora-1.0_alpha6 265 RMD160 dd56d04d82b9c5e471a4908d09e50f9af736acf8 files/digest-libtheora-1.0_alpha6 265 SHA256 749c39f8feedca85f21af8969bc98c8c33c3d786faf52a5ed656dd7c063f1c00 files/digest-libtheora-1.0_alpha6 265 +MD5 06ec218ca2c06cddc319fb505528640c files/digest-libtheora-1.0_alpha6-r1 265 +RMD160 dd56d04d82b9c5e471a4908d09e50f9af736acf8 files/digest-libtheora-1.0_alpha6-r1 265 +SHA256 749c39f8feedca85f21af8969bc98c8c33c3d786faf52a5ed656dd7c063f1c00 files/digest-libtheora-1.0_alpha6-r1 265 -----BEGIN PGP SIGNATURE----- -Version: GnuPG v1.4.3 (GNU/Linux) +Version: GnuPG v1.4.4 (GNU/Linux) -iD8DBQFEiGRhAiZjviIA2XgRAvP9AJ93PGZbt8Tigpl/eW4ytkDa8sXJewCgihur -LCyPMPLv8KhHHg8H1y0Dxgg= -=7h0t +iD8DBQFEzMRQAiZjviIA2XgRArHzAKC0AB34yqQ5GX+0XVq8mc3HHLQWvgCgusrL +oYJJjCHUz8+AlQq3HIXabLI= +=hZv9 -----END PGP SIGNATURE----- diff --git a/media-libs/libtheora/files/digest-libtheora-1.0_alpha6-r1 b/media-libs/libtheora/files/digest-libtheora-1.0_alpha6-r1 new file mode 100644 index 000000000000..5beb4076a158 --- /dev/null +++ b/media-libs/libtheora/files/digest-libtheora-1.0_alpha6-r1 @@ -0,0 +1,3 @@ +MD5 ff8d0c112fdab66930acf42c423d2536 libtheora-1.0alpha6.tar.bz2 1559318 +RMD160 b0d81dab81ec96d51e2d6a4c047beff807de6077 libtheora-1.0alpha6.tar.bz2 1559318 +SHA256 4e6044cb24d2cdb42e5d9402c709644886e8761f7b166781469ffda44240da92 libtheora-1.0alpha6.tar.bz2 1559318 diff --git a/media-libs/libtheora/files/libtheora-1.0_alpha6-pic-fix.patch b/media-libs/libtheora/files/libtheora-1.0_alpha6-pic-fix.patch new file mode 100644 index 000000000000..d79d67afe38d --- /dev/null +++ b/media-libs/libtheora/files/libtheora-1.0_alpha6-pic-fix.patch @@ -0,0 +1,166 @@ +diff -urp libtheora-1.0alpha6-old/lib/x86_32/dsp_mmx.c libtheora-1.0alpha6/lib/x86_32/dsp_mmx.c +--- libtheora-1.0alpha6-old/lib/x86_32/dsp_mmx.c 2006-05-27 19:09:12.000000000 +0200 ++++ libtheora-1.0alpha6/lib/x86_32/dsp_mmx.c 2006-07-29 17:37:35.000000000 +0200 +@@ -79,7 +79,7 @@ static void sub8x8_128__mmx (unsigned ch + " .balign 16 \n\t" + + " pxor %%mm7, %%mm7 \n\t" +- " movq "M(V128)", %%mm1 \n\t" ++ " movq %3, %%mm1 \n\t" + + ".rept 8 \n\t" + " movq (%0), %%mm0 \n\t" /* mm0 = FiltPtr */ +@@ -99,7 +99,8 @@ static void sub8x8_128__mmx (unsigned ch + + : "+r" (FiltPtr), + "+r" (DctInputPtr) +- : "m" (PixelsPerLine) ++ : "m" (PixelsPerLine), ++ "m" (V128) + : "memory" + ); + } +diff -urp libtheora-1.0alpha6-old/lib/x86_32/fdct_mmx.c libtheora-1.0alpha6/lib/x86_32/fdct_mmx.c +--- libtheora-1.0alpha6-old/lib/x86_32/fdct_mmx.c 2006-05-27 19:09:12.000000000 +0200 ++++ libtheora-1.0alpha6/lib/x86_32/fdct_mmx.c 2006-07-29 17:52:20.000000000 +0200 +@@ -74,7 +74,7 @@ static const __attribute__ ((aligned(8), + " movq %%mm2, %%mm0 \n\t" /* make a copy */ \ + " paddsw %%mm2, %%mm3 \n\t" /* mm3 = is0734 + is1256 */ \ + \ +- " pmulhw "M(xC4S4)", %%mm0 \n\t" /* mm0 = xC4S4 * ( is0734 - is1256 ) - ( is0734 - is1256 ) */ \ ++ " pmulhw %6, %%mm0 \n\t" /* mm0 = xC4S4 * ( is0734 - is1256 ) - ( is0734 - is1256 ) */ \ + " paddw %%mm2, %%mm0 \n\t" /* mm0 = xC4S4 * ( is0734 - is1256 ) */ \ + " psrlw $15, %%mm2 \n\t" \ + " paddw %%mm2, %%mm0 \n\t" /* Truncate mm0, now it is op[4] */ \ +@@ -83,7 +83,7 @@ static const __attribute__ ((aligned(8), + " movq %%mm0," #ip4 " \n\t" /* save ip4, now mm0,mm2 are free */ \ + \ + " movq %%mm3, %%mm0 \n\t" \ +- " pmulhw "M(xC4S4)", %%mm3 \n\t" /* mm3 = xC4S4 * ( is0734 +is1256 ) - ( is0734 +is1256 ) */ \ ++ " pmulhw %6, %%mm3 \n\t" /* mm3 = xC4S4 * ( is0734 +is1256 ) - ( is0734 +is1256 ) */ \ + \ + " psrlw $15, %%mm2 \n\t" \ + " paddw %%mm0, %%mm3 \n\t" /* mm3 = xC4S4 * ( is0734 +is1256 ) */ \ +@@ -92,7 +92,7 @@ static const __attribute__ ((aligned(8), + " movq %%mm3," #ip0 " \n\t" \ + /* ------------------------------------------------------------------- */ \ + " movq " #temp ", %%mm3 \n\t" /* mm3 = irot_input_y */ \ +- " pmulhw "M(xC2S6)", %%mm3 \n\t" /* mm3 = xC2S6 * irot_input_y - irot_input_y */ \ ++ " pmulhw %4, %%mm3 \n\t" /* mm3 = xC2S6 * irot_input_y - irot_input_y */ \ + \ + " movq " #temp ", %%mm2 \n\t" \ + " movq %%mm2, %%mm0 \n\t" \ +@@ -104,7 +104,7 @@ static const __attribute__ ((aligned(8), + " movq %%mm5, %%mm0 \n\t" \ + \ + " movq %%mm5, %%mm2 \n\t" \ +- " pmulhw "M(xC6S2)", %%mm0 \n\t" /* mm0 = xC6S2 * irot_input_x */ \ ++ " pmulhw %8, %%mm0 \n\t" /* mm0 = xC6S2 * irot_input_x */ \ + \ + " psrlw $15, %%mm2 \n\t" \ + " paddw %%mm2, %%mm0 \n\t" /* Truncated */ \ +@@ -115,7 +115,7 @@ static const __attribute__ ((aligned(8), + " movq %%mm5, %%mm0 \n\t" \ + " movq %%mm5, %%mm2 \n\t" \ + \ +- " pmulhw "M(xC2S6)", %%mm5 \n\t" /* mm5 = xC2S6 * irot_input_x - irot_input_x */ \ ++ " pmulhw %4, %%mm5 \n\t" /* mm5 = xC2S6 * irot_input_x - irot_input_x */ \ + " psrlw $15, %%mm2 \n\t" \ + \ + " movq " #temp ", %%mm3 \n\t" \ +@@ -124,7 +124,7 @@ static const __attribute__ ((aligned(8), + " paddw %%mm2, %%mm5 \n\t" /* Truncated */ \ + " movq %%mm3, %%mm2 \n\t" \ + \ +- " pmulhw "M(xC6S2)", %%mm3 \n\t" /* mm3 = xC6S2 * irot_input_y */ \ ++ " pmulhw %8, %%mm3 \n\t" /* mm3 = xC6S2 * irot_input_y */ \ + " psrlw $15, %%mm2 \n\t" \ + \ + " paddw %%mm2, %%mm3 \n\t" /* Truncated */ \ +@@ -132,7 +132,7 @@ static const __attribute__ ((aligned(8), + \ + " movq %%mm3," #ip6 " \n\t" \ + /* ------------------------------------------------------------------- */ \ +- " movq "M(xC4S4)", %%mm0 \n\t" \ ++ " movq %6, %%mm0 \n\t" \ + " movq %%mm1, %%mm2 \n\t" \ + " movq %%mm1, %%mm3 \n\t" \ + \ +@@ -162,13 +162,13 @@ static const __attribute__ ((aligned(8), + " paddsw %%mm1, %%mm1 \n\t" \ + " paddsw %%mm4, %%mm1 \n\t" /* mm1 = id07 + icommon_product1 */ \ + /* ------------------------------------------------------------------- */ \ +- " movq "M(xC1S7)", %%mm7 \n\t" \ ++ " movq %3, %%mm7 \n\t" \ + " movq %%mm1, %%mm2 \n\t" \ + \ + " movq %%mm1, %%mm3 \n\t" \ + " pmulhw %%mm7, %%mm1 \n\t" /* mm1 = xC1S7 * irot_input_x - irot_input_x */ \ + \ +- " movq "M(xC7S1)", %%mm7 \n\t" \ ++ " movq %9, %%mm7 \n\t" \ + " psrlw $15, %%mm2 \n\t" \ + \ + " paddw %%mm3, %%mm1 \n\t" /* mm1 = xC1S7 * irot_input_x */ \ +@@ -180,10 +180,10 @@ static const __attribute__ ((aligned(8), + " movq %%mm0, %%mm5 \n\t" \ + " movq %%mm0, %%mm2 \n\t" \ + \ +- " movq "M(xC1S7)", %%mm7 \n\t" \ ++ " movq %3, %%mm7 \n\t" \ + " pmulhw %%mm7, %%mm0 \n\t" /* mm0 = xC1S7 * irot_input_y - irot_input_y */ \ + \ +- " movq "M(xC7S1)", %%mm7 \n\t" \ ++ " movq %9, %%mm7 \n\t" \ + " psrlw $15, %%mm2 \n\t" \ + \ + " paddw %%mm5, %%mm0 \n\t" /* mm0 = xC1S7 * irot_input_y */ \ +@@ -198,8 +198,8 @@ static const __attribute__ ((aligned(8), + " movq %%mm1," #ip1 " \n\t" \ + " movq %%mm3," #ip7 " \n\t" \ + /* ------------------------------------------------------------------- */ \ +- " movq "M(xC3S5)", %%mm0 \n\t" \ +- " movq "M(xC5S3)", %%mm1 \n\t" \ ++ " movq %5, %%mm0 \n\t" \ ++ " movq %7, %%mm1 \n\t" \ + \ + " movq %%mm6, %%mm5 \n\t" \ + " movq %%mm6, %%mm7 \n\t" \ +@@ -320,7 +320,14 @@ static void fdct_short__mmx ( ogg_int16_ + + : "+r" (InputData), + "+r" (OutputData) +- : "r" (temp) ++ : "r" (temp), ++ "m" (xC1S7), ++ "m" (xC2S6), ++ "m" (xC3S5), ++ "m" (xC4S4), ++ "m" (xC5S3), ++ "m" (xC6S2), ++ "m" (xC7S1) + : "memory" + ); + } +diff -urp libtheora-1.0alpha6-old/lib/x86_32/recon_mmx.c libtheora-1.0alpha6/lib/x86_32/recon_mmx.c +--- libtheora-1.0alpha6-old/lib/x86_32/recon_mmx.c 2006-05-27 19:09:12.000000000 +0200 ++++ libtheora-1.0alpha6/lib/x86_32/recon_mmx.c 2006-07-29 17:39:05.000000000 +0200 +@@ -71,7 +71,7 @@ static void recon_intra8x8__mmx (unsigne + __asm__ __volatile__ ( + " .balign 16 \n\t" + +- " movq "M(V128)", %%mm0 \n\t" /* Set mm0 to 0x8080808080808080 */ ++ " movq %3, %%mm0 \n\t" /* Set mm0 to 0x8080808080808080 */ + + " lea 128(%1), %%edi \n\t" /* Endpoint in input buffer */ + "1: \n\t" +@@ -89,7 +89,8 @@ static void recon_intra8x8__mmx (unsigne + " jc 1b \n\t" /* Loop back if we are not done */ + : "+r" (ReconPtr) + : "r" (ChangePtr), +- "r" (LineStep) ++ "r" (LineStep), ++ "m" (V128) + : "memory", "edi" + ); + } diff --git a/media-libs/libtheora/libtheora-1.0_alpha6-r1.ebuild b/media-libs/libtheora/libtheora-1.0_alpha6-r1.ebuild new file mode 100644 index 000000000000..604bfdcede0b --- /dev/null +++ b/media-libs/libtheora/libtheora-1.0_alpha6-r1.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-libs/libtheora/libtheora-1.0_alpha6-r1.ebuild,v 1.1 2006/07/30 14:38:01 flameeyes Exp $ + +inherit flag-o-matic libtool autotools + +DESCRIPTION="The Theora Video Compression Codec" +HOMEPAGE="http://www.theora.org/" +SRC_URI="http://downloads.xiph.org/releases/theora/${P/_}.tar.bz2" + +LICENSE="xiph" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc-macos ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="encode doc examples" + +RDEPEND=">=media-libs/libogg-1.1.0 + encode? ( >=media-libs/libvorbis-1.0.1 )" +DEPEND="${RDEPEND} + doc? ( app-doc/doxygen )" + +S=${WORKDIR}/${P/_} + +src_unpack() { + unpack ${A} + cd "${S}" + sed -i -e 's:SUBDIRS = .*:SUBDIRS = lib include doc:' Makefile.am + + epatch "${FILESDIR}/${P/_/}-buildfixes.patch" + epatch "${FILESDIR}/${P}-pic-fix.patch" + + # Force automake 1.9 for newer autoconf + WANT_AUTOMAKE="1.9" \ + AT_M4DIR="m4" eautoreconf + + elibtoolize + + if use examples; then + # This creates a clean copy of examples sources + cp -R "${S}/examples" "${WORKDIR}" + rm -f "${WORKDIR}/examples/Makefile"* + fi +} + +src_compile() { + # bug #75403, -O3 needs to be filtered to -O2 + replace-flags -O3 -O2 + + use doc || export ac_cv_prog_HAVE_DOXYGEN="false" + + econf \ + $(use_enable encode) \ + --enable-shared \ + --disable-dependency-tracking \ + || die "configure failed" + emake || die "make failed" +} + +src_install() { + emake \ + DESTDIR="${D}" \ + docdir="usr/share/doc/${PF}" \ + install || die "make install failed" + + if use examples; then + insinto "/usr/share/doc/${PF}/examples" + doins "${WORKDIR}/examples/"* + fi + + dodoc README +} |