aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs/libvpx')
-rw-r--r--media-libs/libvpx/Manifest19
-rw-r--r--media-libs/libvpx/files/libvpx-1.1.0-arm.patch38
-rw-r--r--media-libs/libvpx/files/libvpx-1.1.0-chost.patch36
-rw-r--r--media-libs/libvpx/files/libvpx-1.1.0-generic-gnu-shared.patch39
-rw-r--r--media-libs/libvpx/files/libvpx-1.1.0-x32.patch64
-rw-r--r--media-libs/libvpx/files/libvpx-1.2.0_pre20130625-armv7.patch41
-rw-r--r--media-libs/libvpx/files/libvpx-1.3.0-dash.patch16
-rw-r--r--media-libs/libvpx/files/libvpx-1.3.0-sparc-configure.patch10
-rw-r--r--media-libs/libvpx/libvpx-1.1.0.ebuild110
-rw-r--r--media-libs/libvpx/libvpx-1.2.0_pre20130625.ebuild125
-rw-r--r--media-libs/libvpx/libvpx-1.3.0.ebuild129
-rw-r--r--media-libs/libvpx/libvpx-1.4.0.ebuild127
-rw-r--r--media-libs/libvpx/libvpx-9999.ebuild124
13 files changed, 878 insertions, 0 deletions
diff --git a/media-libs/libvpx/Manifest b/media-libs/libvpx/Manifest
new file mode 100644
index 00000000..5c604a17
--- /dev/null
+++ b/media-libs/libvpx/Manifest
@@ -0,0 +1,19 @@
+AUX libvpx-1.1.0-arm.patch 1159 SHA256 173d50ecf7806683f5729db95bf204430d7bd791d9a72840744a091b1ccfb0e6 SHA512 e8543709874ce1602f63161e7a75776e95bdc6321a66d19908b2d4664d715158e26808f658a33be859c0b234a889088cb7b9dc0c616437cc6aa7331c55834cdd WHIRLPOOL 310cd3b346ab864f22cbe88a462deaa9ace87d732ad031d90ca3180eff633bb5e14e99dfeaf55313c6e28a9b86149947af6cbfe673057e3bb73f17ae7e704697
+AUX libvpx-1.1.0-chost.patch 1441 SHA256 ad4f06433f403bffbe6e72809cae7d63545bb19a034bf87d8a6c0d09b183546e SHA512 3591bcbf4535c608eab2ff51befe60b492e0f1b738aaa864a02c463b89abebb38dde6e683fb92f47f6d5f6139cbc1feced6464c5f4501bdbeb91cc5b39ac9f3e WHIRLPOOL ecac0141e9688a12854813dbe7c57746e4ba096c91e38435fcb3e9d5a289b9c1b9cfb2498f42b4def899997e86fcd7441771a4c9d0514f9e49447711a423a8be
+AUX libvpx-1.1.0-generic-gnu-shared.patch 1466 SHA256 411335557d7b8f04f53c971dc7654fa04a5beaeab8114b6222cbf23c8f33958d SHA512 82d78a5c8acdd16bbecb250d049446d8a0804094311feec0ffb85865e1a90d5895833a410d88d036dc653971b43b69fbe947ceb21f8b82d3a79e0325e31daf68 WHIRLPOOL a500811c5560846930d3781558e0079b2fbbb7c98e646e930782f37ce67571e49c37fe549aee0aea72a36e522a9d8ecaf21c421c72ad9d020ff60b0b57f9eb34
+AUX libvpx-1.1.0-x32.patch 1768 SHA256 931c23ed8d45c878943c6c7d9c647295962ab81d4b71a737063da95fd105b45e SHA512 87fa2fe4e7e47df1fe5eabc852937be1d893585b21d0533f80e33fcdacfa45edb66755ff31276d9d42d2922d2cb086c69a0c00c598df52fc171deaf5f5138373 WHIRLPOOL 9dce21ca3d1602c6ecc657eb2aa145c5a2dabfb360107f881a6668b1549194b3c24aab6bb8c6c0d1906f1b51fc6f97860629ebcc2fae175b9555e1606829c2bc
+AUX libvpx-1.2.0_pre20130625-armv7.patch 1480 SHA256 80518bcba1f7e8dce0a89cf4c6933669be2090f5bd86230b6bf88ae7938ad6f9 SHA512 abe70c9adce2a95aafa7fba296247c5c006bb99765b657b674be83f8feb2df118710eaaed7ba0b68c196273b585552d7f085c889525acde226164ce24064905b WHIRLPOOL b4cd4065d403e87a3a31ab63b4c899cda68e3c6174238bab84209e5a4e6e1f47ed5e0b28cd5ee642d56b7fa6a6a8e7cd56450af3fa1adf744684bfb123f45f83
+AUX libvpx-1.3.0-dash.patch 387 SHA256 2cc615c50ea4eefad81757ee23342802b30da504ee573a8167e1d7cfac83fc2b SHA512 577a24f76e90b18a1e933cd31a20d99bc41728c2cdb8301ec260e0df643664fba65fc90d279e1fd54b1330bff6a297f5d2517184004568776807d38ab10cca60 WHIRLPOOL ab7b44552ca0f604d202309f4783226c333a4990ecafaa0e3310d43875ab78a098f6c93a17494d746d7b3f5e308a5b65c4e29991d9f8457663bb1ba01b23c1c0
+AUX libvpx-1.3.0-sparc-configure.patch 475 SHA256 0854c8886cd3b2e74fc284db5f17984ebbc4afbfd96a64f90aa9d5390c1c688e SHA512 39b3e5563db9410ec2cf39bc72276b0ccb8ac0ffff479b3896bc4243981d7d59a96523baac067823126b2dde88211a87b7f615ff7a021b774449cb00b01d5c64 WHIRLPOOL f074ce8a4790caf67091f03edcfcb657fb2cd830331926bffe6355811362f39abb6148302c99c45e96c50a507dcd3bef66ac5a8b04d3153ab72a7c0149ad5b72
+DIST libvpx-1.2.0_pre20130625.tar.bz2 1726341 SHA256 61e7a3b0e0587ed899fb5cc8240324a4f578489abf06c8916abcb59d322f6b58 SHA512 198575c2adec26e7772f59eb4915dda2fb0de04ca5980b51057557ba6a15f0fb6ca9a0db583866fcbe2585939b8cc09500642a0aea46ac2b696ec1ae54cf6c7f WHIRLPOOL 194df8c550a302e678aaf0959ea395185aea004206d24b969263ffedf77adfc76f04f5bc89cbbd66e9d7d925e07cedceb698507c92afba8d4096839b6575ae1f
+DIST libvpx-1.4.0.tar.bz2 1807989 SHA256 f582d9b2d60a592a4a3d8c32965ca2d2167e9ade38c6c30bac8801ff66a118e4 SHA512 70234220e0ed64db000689ec8bea02dadef938a4f4dea96e5781d361c15245456212c1b6aec2b698d32ed423e73917d2303009e49224a2237669cab416dd6984 WHIRLPOOL 309055669aea96f8ed051ae33d2b86c4aac2096be43ac7140812d2b42e0b1b6e609d86206a01268137f18769f967cbd074beb75fe5b059ced71a1caefb8dcb05
+DIST libvpx-testdata-1.2.0.tar.bz2 43521881 SHA256 41dc3eb8ad0b24177ccc43f7dd6ec7946f78e6aaa5ff94d0883487e02eb4da2c SHA512 77d909435137965d2d13d5bbd053e658664caa035dfc60b2ba91d075a37624ed27d75cac53f013c8043624fc9b56219ad0b0dd20dd4eecc471935b2757110637 WHIRLPOOL 19c3d8d27e03407098f9e9f3120c242b25bea442aa1fb1755b63fce875662ec00942949af3c5e499f6e18ccfef67f18e1403c226b288e925786ef6fc64e112e0
+DIST libvpx-testdata-1.3.0.tar.bz2 45380954 SHA256 0956429f629f068b734d760f6af49bbb679ee65f8d860bbf2cb4e2c574c03550 SHA512 fe96c16c8aea352dd145ee73058404024b13b9bee1d3431ac2513e3636d13880d1fa0eb9eeaea2805fbc2ec8dc6e2be381c6d50baac472a0de835b0563d63c94 WHIRLPOOL 0cc5a39405a0de6238beb7f3da5b01845e4bc39a3b9858b13c73dd69bed275964c13d62468c7fb3a1af33fb7bc5d65ddc5abfe87a71b21c5d3575924e29734da
+DIST libvpx-testdata-1.4.0.tar.bz2 113132379 SHA256 8458297dfe6ecc168a6bb3b41260aeef5c35296b99ced888767f70af40a50046 SHA512 5a0402ce1943fcd1a0e954a42728a409a512c9382883c227adea399f4ca4ff8b7d72d0247dce842c3e929dce86ca2bdad935fc82d3ee58ea72291c8fcdeca393 WHIRLPOOL b4b451be2074a1af1e36c757ac14dc41c764a32eeb4b4fed2bbb38030e51a18d0c37afd71db3118dc4af4546e212946fabc6e1cf453ebee88e66a43045c938be
+DIST libvpx-v1.1.0.tar.bz2 1653485 SHA256 9ce074cf4b3bcd9a49ff93e05485b71c273bfc3685a305e55a0e7fa51beb72c5 SHA512 5c165a1a171143f7c406ef899914a353d35f6dec0e3c49eec9a4f3311fd4072dea2e0da8ceb80651ad23e24cdbf2d6da328805bda8be042bbea2c65c9e53eaaa WHIRLPOOL 2dc8164e3f812903a1b52901438857bcdf172cb1d979f1ced45933fc12ffbb0c49e2a6c02b0c6f3360f48b146e1e5c6ea25c1613abafc3089030f6c1e7af92ed
+DIST libvpx-v1.3.0.tar.bz2 2084229 SHA256 d3dcc8d84af51c6c382b214397c62402e37a799e8ebcda6f4217aef0010451a9 SHA512 af26766a3336155c5bc7b8cce7c23228de054287b990f9cacdc35273384a7af4999c01bb623d12143f40107036308a8b3207081efe67936748503c30c985fd6b WHIRLPOOL 03de78d6701daab8847c453317d8cc0a22e4a332994b7e1f55c5d6953b7f3acf94f3c623943dd8588bb1a174df4f7d9a8b8bc889f50823d92767c40c96fc5e68
+EBUILD libvpx-1.1.0.ebuild 3063 SHA256 c2fbf3d729b57b6d73184419d0a3b1cb6a00eba5397ee95ddc0744b29630b3ad SHA512 150612ab729c30994a1737e8f5017584d971327c3625b8674f7632cc36f80bfc3aff03def4299a1a94adfb9c4a6c228d48cee4794c10b7a929d110554842459a WHIRLPOOL 8e2bad4611b668f86cf87b42d727156dd305c9efc62d96db8b5a10355a4f7d4ed2222a6786ece3f7f72bf6fe7f3f89b89eb0220a03856b9a7bfa42d1225a2901
+EBUILD libvpx-1.2.0_pre20130625.ebuild 3847 SHA256 17e8c5310a37f5ab090f7dc50123eb1cf82f034fd037e0eb62a94a7f0d789960 SHA512 d96803ef1246518b33b6aff8247b52f4d29c7446d62e16c95ed6c11c88c6d59602a5c9a1d1f55d9f2d2af51acfa2c2ad6b56c53356754b475c573148460da463 WHIRLPOOL f7295fd345bbb7a3046164933cf075235a6d4cc0ec04098034348b26c8a2871da01699d1127f6103c10ba805ef9c26a4273b83c0f66b12e0bee1cafd310d92d7
+EBUILD libvpx-1.3.0.ebuild 4138 SHA256 1f2ddd63f7f553ddefdcf532e770abe8b691c6c0bbf803f6587c9d77dd14597d SHA512 0ded9976f4e64a94f94055f5b2d9228bcb0606d234f3890b162d84bcc0c960be5e7aa4a21cd0f40b0186f1267faa4357acb769c004a6d0b69f9c4e8f5a04c28e WHIRLPOOL 5ab1f61ffe5ad46290e013cf472930dae4d67a2fc20204d40244c06a136c3f7a10144d515f1bbba55954007e174a9ae62b63a5b57192a4963106385a1f916f49
+EBUILD libvpx-1.4.0.ebuild 4113 SHA256 cd399e37f78be1a4f5126a7da8bd8fb0602321618f28e2788818db61924a6b7a SHA512 82a000356812c1e6117e45badda27adde6e393ff3c0f2773dde390698765be681f94a7ce7b1b2cfd17463127cbad8d8fac54212287054f82ecef39b7b467f9d5 WHIRLPOOL 320732320b9f2b0891898f674b1041aed5f963c1017a1e2f7276ef1ce785d66dbd5428f78923520a37d14571247c7f8182257f6d3ede43903f19fefa8e7bb6cc
+EBUILD libvpx-9999.ebuild 3991 SHA256 58641ada58bd4b9e80605a1d459e56254c6a379a01be42b5f5def34356224d75 SHA512 2410803ea4b77640003d87eb32b43d54840faffd4bb84ea3b5f8476f1217dc21645227123b694b6942212512caed8a6fc43db540d146cb7844ac6ba43f46ba5f WHIRLPOOL 486bdf0f67e9b571cfb0be674c0a5e678bcdde8575ed83571a242fa5e100a8c7c700b30fee6314b22cc8fb9babf48965a32f8c1db9b16dae25f8e41af88fa4b5
diff --git a/media-libs/libvpx/files/libvpx-1.1.0-arm.patch b/media-libs/libvpx/files/libvpx-1.1.0-arm.patch
new file mode 100644
index 00000000..698e65a2
--- /dev/null
+++ b/media-libs/libvpx/files/libvpx-1.1.0-arm.patch
@@ -0,0 +1,38 @@
+From 2b59e14a0023be9d084349d58ee156a49cc674bb Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@chromium.org>
+Date: Wed, 15 Aug 2012 11:55:31 -0400
+Subject: [PATCH] Parse out arm isa targets from dumpmachine
+
+The current parsing logic of the dumpmachine tuple lacks any arm
+cases which means tgt_isa never gets set, so for all arm targets,
+we get detected as generic-gnu. Add some basic arm checks here
+so the automatic detection logic works.
+
+Change-Id: Ie5e98142876025c6708604236bc519c0bdb09319
+---
+ build/make/configure.sh | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/build/make/configure.sh b/build/make/configure.sh
+index 26eb864..eeb959a 100755
+--- a/build/make/configure.sh
++++ b/build/make/configure.sh
+@@ -593,6 +593,15 @@ process_common_toolchain() {
+
+ # detect tgt_isa
+ case "$gcctarget" in
++ armv6*)
++ tgt_isa=armv6
++ ;;
++ armv7*)
++ tgt_isa=armv7
++ ;;
++ armv5te*)
++ tgt_isa=armv5te
++ ;;
+ *x86_64*|*amd64*)
+ tgt_isa=x86_64
+ ;;
+--
+1.7.9.7
+
diff --git a/media-libs/libvpx/files/libvpx-1.1.0-chost.patch b/media-libs/libvpx/files/libvpx-1.1.0-chost.patch
new file mode 100644
index 00000000..eb6b286c
--- /dev/null
+++ b/media-libs/libvpx/files/libvpx-1.1.0-chost.patch
@@ -0,0 +1,36 @@
+commit 871bd23e4c41bb0fb94b72832b270766de540dea
+Author: Alexis Ballier <alexis.ballier@gmail.com>
+Date: Sat May 12 15:45:13 2012 -0400
+
+ Allow target autodetection to work when cross-compiling.
+
+ Allow CHOST to override the gcc -dumpmachine output. This allows to
+ use the target autodetection code when cross compiling by setting the
+ CHOST variable.
+
+ On Gentoo, we would like to support easy cross-compilation, and for
+ libvpx this would basically mean copying the code in
+ build/make/configure.sh to setup the right --target option. It seems a
+ lot easier to let it guess by itself.
+
+ Another option I considered was using CROSS-gcc instead but this would
+ not work for our multilib setups: They use gcc -m32 to build 32bits
+ binaries and gcc -m32 -dumpmachine will output the 64bits version,
+ which would then make libvpx wrongly believe it is building for a
+ 64bits architecture.
+
+ Change-Id: I05a19be402228f749e23be7473ca53ae74fd2186
+
+diff --git a/build/make/configure.sh b/build/make/configure.sh
+index 3c772e5..3118c0a 100755
+--- a/build/make/configure.sh
++++ b/build/make/configure.sh
+@@ -549,7 +549,7 @@ setup_gnu_toolchain() {
+
+ process_common_toolchain() {
+ if [ -z "$toolchain" ]; then
+- gcctarget="$(gcc -dumpmachine 2> /dev/null)"
++ gcctarget="${CHOST:-$(gcc -dumpmachine 2> /dev/null)}"
+
+ # detect tgt_isa
+ case "$gcctarget" in
diff --git a/media-libs/libvpx/files/libvpx-1.1.0-generic-gnu-shared.patch b/media-libs/libvpx/files/libvpx-1.1.0-generic-gnu-shared.patch
new file mode 100644
index 00000000..84d536f5
--- /dev/null
+++ b/media-libs/libvpx/files/libvpx-1.1.0-generic-gnu-shared.patch
@@ -0,0 +1,39 @@
+From b4ab43f12cc44a24e8161eb2d0857b78c756b18c Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@chromium.org>
+Date: Tue, 14 Aug 2012 14:24:28 -0400
+Subject: [PATCH] do not error out on generic-gnu + --enable-shared
+
+If you build with --enabled-shared on a Linux arch not explicitly
+listed, the configure script will abort because it didn't detect
+"linux" in the fallback generic-gnu tuple.
+
+Since this is the fallback tuple and people are passing
+--enable-shared, assume the user knows what they're in for.
+
+Change-Id: Ia35b657e7247c8855e3a94fca424c9884d4241e3
+---
+ configure | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/configure b/configure
+index 2e19e5b..dde215f 100755
+--- a/configure
++++ b/configure
+@@ -454,7 +454,13 @@ process_detect() {
+ # Can only build shared libs on a subset of platforms. Doing this check
+ # here rather than at option parse time because the target auto-detect
+ # magic happens after the command line has been parsed.
+- enabled linux || die "--enable-shared only supported on ELF for now"
++ if ! enabled linux; then
++ if enabled gnu; then
++ echo "--enable-shared is only supported on ELF; assuming this is OK"
++ else
++ die "--enable-shared only supported on ELF for now"
++ fi
++ fi
+ fi
+ if [ -z "$CC" ]; then
+ echo "Bypassing toolchain for environment detection."
+--
+1.7.9.7
+
diff --git a/media-libs/libvpx/files/libvpx-1.1.0-x32.patch b/media-libs/libvpx/files/libvpx-1.1.0-x32.patch
new file mode 100644
index 00000000..bcacdbf4
--- /dev/null
+++ b/media-libs/libvpx/files/libvpx-1.1.0-x32.patch
@@ -0,0 +1,64 @@
+https://bugs.gentoo.org/426248
+
+From c769945318b84b5c823091213634a4db0cdc5be5 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Tue, 25 Sep 2012 00:37:11 -0400
+Subject: [PATCH] check for x32 targets
+
+Add configure detection of the new x32 ABI.
+---
+ build/make/configure.sh | 5 +++++
+ vpx_ports/x86_abi_support.asm | 10 ++++++++++
+ 2 files changed, 15 insertions(+)
+
+diff --git a/build/make/configure.sh b/build/make/configure.sh
+index eeb959a..05bbabe 100755
+--- a/build/make/configure.sh
++++ b/build/make/configure.sh
+@@ -989,6 +989,11 @@ process_common_toolchain() {
+ x86*)
+ bits=32
+ enabled x86_64 && bits=64
++ check_cpp <<EOF && bits=x32
++#ifndef __ILP32__
++#error "not x32"
++#endif
++EOF
+ soft_enable runtime_cpu_detect
+ soft_enable mmx
+ soft_enable sse
+diff --git a/vpx_ports/x86_abi_support.asm b/vpx_ports/x86_abi_support.asm
+index e1a540c..0c9fe37 100644
+--- a/vpx_ports/x86_abi_support.asm
++++ b/vpx_ports/x86_abi_support.asm
+@@ -88,6 +88,8 @@
+ %define sym(x) x
+ %elifidn __OUTPUT_FORMAT__,elf64
+ %define sym(x) x
++%elifidn __OUTPUT_FORMAT__,elfx32
++%define sym(x) x
+ %elifidn __OUTPUT_FORMAT__,x64
+ %define sym(x) x
+ %else
+@@ -223,6 +227,9 @@
+ %ifidn __OUTPUT_FORMAT__,elf64
+ %define WRT_PLT wrt ..plt
+ %define HIDDEN_DATA(x) x:data hidden
++ %elifidn __OUTPUT_FORMAT__,elfx32
++ %define WRT_PLT wrt ..plt
++ %define HIDDEN_DATA(x) x:data hidden
+ %else
+ %define HIDDEN_DATA(x) x
+ %endif
+@@ -364,5 +371,8 @@ section .text
+ %elifidn __OUTPUT_FORMAT__,elf64
+ section .note.GNU-stack noalloc noexec nowrite progbits
+ section .text
++%elifidn __OUTPUT_FORMAT__,elfx32
++section .note.GNU-stack noalloc noexec nowrite progbits
++section .text
+ %endif
+
+--
+1.7.12
+
diff --git a/media-libs/libvpx/files/libvpx-1.2.0_pre20130625-armv7.patch b/media-libs/libvpx/files/libvpx-1.2.0_pre20130625-armv7.patch
new file mode 100644
index 00000000..6e8eba90
--- /dev/null
+++ b/media-libs/libvpx/files/libvpx-1.2.0_pre20130625-armv7.patch
@@ -0,0 +1,41 @@
+commit af9dd50e42e0a7558d0d555ee12a1eb60e87a458
+Author: Luca Barbato <lu_zero@gentoo.org>
+Date: Thu Jan 10 05:13:57 2013 +0100
+
+ configure: support hardfloat armv7 CHOSTS
+
+ Many linux distribution for arm switched to armhf/hardfloat, support
+ them.
+
+ Change-Id: I8ab39d34782b4f24b7028ac76342118166fd5905
+
+diff --git a/build/make/configure.sh b/build/make/configure.sh
+index e27af96..f69b6d7 100755
+--- a/build/make/configure.sh
++++ b/build/make/configure.sh
+@@ -597,8 +597,13 @@ process_common_toolchain() {
+ armv6*)
+ tgt_isa=armv6
+ ;;
++ armv7*-hardfloat*)
++ tgt_isa=armv7
++ float_abi=hard
++ ;;
+ armv7*)
+ tgt_isa=armv7
++ float_abi=softfp
+ ;;
+ armv5te*)
+ tgt_isa=armv5te
+@@ -784,8 +789,9 @@ process_common_toolchain() {
+ check_add_asflags --defsym ARCHITECTURE=${arch_int}
+ tune_cflags="-mtune="
+ if [ ${tgt_isa} == "armv7" ]; then
+- check_add_cflags -march=armv7-a -mfloat-abi=softfp
+- check_add_asflags -march=armv7-a -mfloat-abi=softfp
++ [ -z "${float_abi}" ] && float_abi=softfp
++ check_add_cflags -march=armv7-a -mfloat-abi=${float_abi}
++ check_add_asflags -march=armv7-a -mfloat-abi=${float_abi}
+
+ if enabled neon
+ then
diff --git a/media-libs/libvpx/files/libvpx-1.3.0-dash.patch b/media-libs/libvpx/files/libvpx-1.3.0-dash.patch
new file mode 100644
index 00000000..fa021b65
--- /dev/null
+++ b/media-libs/libvpx/files/libvpx-1.3.0-dash.patch
@@ -0,0 +1,16 @@
+dash compat
+https://bugs.gentoo.org/show_bug.cgi?id=498136
+
+--- a/build/make/configure.sh
++++ b/build/make/configure.sh
+@@ -405,8 +405,8 @@
+ }
+
+ write_common_target_config_mk() {
+- local CC=${CC}
+- local CXX=${CXX}
++ local CC="${CC}"
++ local CXX="${CXX}"
+ enabled ccache && CC="ccache ${CC}"
+ enabled ccache && CXX="ccache ${CXX}"
+ print_webm_license $1 "##" ""
diff --git a/media-libs/libvpx/files/libvpx-1.3.0-sparc-configure.patch b/media-libs/libvpx/files/libvpx-1.3.0-sparc-configure.patch
new file mode 100644
index 00000000..dc3f6c93
--- /dev/null
+++ b/media-libs/libvpx/files/libvpx-1.3.0-sparc-configure.patch
@@ -0,0 +1,10 @@
+--- configure~ 2014-01-10 21:12:42.000000000 +0100
++++ configure 2014-04-05 12:51:51.794638686 +0200
+@@ -109,6 +109,7 @@
+ all_platforms="${all_platforms} ppc64-darwin9-gcc"
+ all_platforms="${all_platforms} ppc64-linux-gcc"
+ all_platforms="${all_platforms} sparc-solaris-gcc"
++all_platforms="${all_platforms} sparc-linux-gcc"
+ all_platforms="${all_platforms} x86-android-gcc"
+ all_platforms="${all_platforms} x86-darwin8-gcc"
+ all_platforms="${all_platforms} x86-darwin8-icc"
diff --git a/media-libs/libvpx/libvpx-1.1.0.ebuild b/media-libs/libvpx/libvpx-1.1.0.ebuild
new file mode 100644
index 00000000..429ab909
--- /dev/null
+++ b/media-libs/libvpx/libvpx-1.1.0.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/libvpx/libvpx-1.1.0.ebuild,v 1.32 2015/02/02 14:27:33 jer Exp $
+
+EAPI=4
+inherit multilib toolchain-funcs base flag-o-matic
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-2
+ EGIT_REPO_URI="https://chromium.googlesource.com/webm/${PN}.git"
+elif [[ ${PV} == *pre* ]]; then
+ SRC_URI="mirror://gentoo/${P}.tar.bz2"
+ KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+else
+ SRC_URI="http://webm.googlecode.com/files/${PN}-v${PV}.tar.bz2"
+ KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+ S="${WORKDIR}/${PN}-v${PV}"
+fi
+
+DESCRIPTION="WebM VP8 Codec SDK"
+HOMEPAGE="http://www.webmproject.org"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="altivec debug doc cpu_flags_x86_mmx postproc cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 static-libs +threads"
+
+RDEPEND=""
+DEPEND="amd64? ( dev-lang/yasm )
+ x86? ( dev-lang/yasm )
+ x86-fbsd? ( dev-lang/yasm )
+ doc? (
+ app-doc/doxygen
+ dev-lang/php
+ )
+"
+
+REQUIRED_USE="
+ cpu_flags_x86_sse2? ( cpu_flags_x86_mmx )
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-chost.patch"
+ "${FILESDIR}/${P}-generic-gnu-shared.patch"
+ "${FILESDIR}/${P}-arm.patch"
+ "${FILESDIR}/${P}-x32.patch"
+)
+
+src_configure() {
+ replace-flags -ggdb3 -g #402825
+
+ unset CODECS #357487
+
+ # let the build system decide which AS to use (it honours $AS but
+ # then feeds it with yasm flags without checking...) #345161
+ local a
+ tc-export AS
+ for a in {amd64,x86}{,-{fbsd,linux}} ; do
+ use ${a} && unset AS
+ done
+
+ # build verbose by default
+ MAKEOPTS="${MAKEOPTS} verbose=yes"
+
+ # http://bugs.gentoo.org/show_bug.cgi?id=384585
+ # https://bugs.gentoo.org/show_bug.cgi?id=465988
+ # copied from php-pear-r1.eclass
+ addpredict /usr/share/snmp/mibs/.index
+ local varlib="/var/lib"
+ if [[ -L "${varlib}" ]]; then
+ varlib="$( readlink -e "${varlib}" )"
+ fi
+ addpredict "${varlib}"/net-snmp/
+ addpredict "${varlib}"/net-snmp/mib_indexes
+ unset varlib
+ addpredict /session_mm_cli0.sem
+
+ # Build with correct toolchain.
+ tc-export CC AR NM
+ # Link with gcc by default, the build system should override this if needed.
+ export LD="${CC}"
+
+ set -- \
+ ./configure \
+ --prefix="${EPREFIX}"/usr \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --enable-pic \
+ --enable-vp8 \
+ --enable-shared \
+ --extra-cflags="${CFLAGS}" \
+ $(use_enable altivec) \
+ $(use_enable debug debug-libs) \
+ $(use_enable debug) \
+ $(use_enable doc install-docs) \
+ $(use_enable cpu_flags_x86_mmx mmx) \
+ $(use_enable postproc) \
+ $(use_enable cpu_flags_x86_sse sse) \
+ $(use_enable cpu_flags_x86_sse2 sse2) \
+ $(use_enable cpu_flags_x86_sse3 sse3) \
+ $(use_enable cpu_flags_x86_sse4_1 sse4_1) \
+ $(use_enable cpu_flags_x86_ssse3 ssse3) \
+ $(use_enable static-libs static ) \
+ $(use_enable threads multithread)
+ echo "$@"
+ "$@" || die
+}
+
+src_install() {
+ # Override base.eclass's src_install.
+ default
+}
diff --git a/media-libs/libvpx/libvpx-1.2.0_pre20130625.ebuild b/media-libs/libvpx/libvpx-1.2.0_pre20130625.ebuild
new file mode 100644
index 00000000..762f909e
--- /dev/null
+++ b/media-libs/libvpx/libvpx-1.2.0_pre20130625.ebuild
@@ -0,0 +1,125 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/libvpx/libvpx-1.2.0_pre20130625.ebuild,v 1.7 2015/02/02 14:27:33 jer Exp $
+
+EAPI=4
+inherit multilib toolchain-funcs multilib-minimal eutils
+
+LIBVPX_TESTDATA_VER=1.2.0
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-2
+ EGIT_REPO_URI="https://chromium.googlesource.com/webm/${PN}.git"
+elif [[ ${PV} == *pre* ]]; then
+ SRC_URI="mirror://gentoo/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+else
+ SRC_URI="http://webm.googlecode.com/files/${PN}-v${PV}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+ S="${WORKDIR}/${PN}-v${PV}"
+fi
+# generated by: make LIBVPX_TEST_DATA_PATH=libvpx-testdata testdata + tar'ing
+# it.
+SRC_URI="${SRC_URI}
+ test? ( mirror://gentoo/${PN}-testdata-${LIBVPX_TESTDATA_VER}.tar.bz2 )"
+
+DESCRIPTION="WebM VP8 Codec SDK"
+HOMEPAGE="http://www.webmproject.org"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="altivec doc cpu_flags_x86_mmx postproc cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 static-libs test +threads"
+
+RDEPEND="abi_x86_32? ( !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)] )"
+DEPEND="abi_x86_32? ( dev-lang/yasm )
+ abi_x86_64? ( dev-lang/yasm )
+ x86-fbsd? ( dev-lang/yasm )
+ amd64-fbsd? ( dev-lang/yasm )
+ doc? (
+ app-doc/doxygen
+ dev-lang/php
+ )
+"
+
+REQUIRED_USE="
+ cpu_flags_x86_sse2? ( cpu_flags_x86_mmx )
+ cpu_flags_x86_ssse3? ( cpu_flags_x86_sse2 )
+"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-armv7.patch"
+}
+
+multilib_src_configure() {
+ unset CODECS #357487
+
+ # let the build system decide which AS to use (it honours $AS but
+ # then feeds it with yasm flags without checking...) #345161
+ tc-export AS
+ case "${CHOST}" in
+ i?86*) export AS=yasm;;
+ x86_64*) export AS=yasm;;
+ esac
+
+ # http://bugs.gentoo.org/show_bug.cgi?id=384585
+ # https://bugs.gentoo.org/show_bug.cgi?id=465988
+ # copied from php-pear-r1.eclass
+ addpredict /usr/share/snmp/mibs/.index
+ local varlib="/var/lib"
+ if [[ -L "${varlib}" ]]; then
+ varlib="$( readlink -e "${varlib}" )"
+ fi
+ addpredict "${varlib}"/net-snmp/
+ addpredict "${varlib}"/net-snmp/mib_indexes
+ unset varlib
+ addpredict /session_mm_cli0.sem
+
+ # Build with correct toolchain.
+ tc-export CC CXX AR NM
+ # Link with gcc by default, the build system should override this if needed.
+ export LD="${CC}"
+
+ local myconf
+ if [ "${ABI}" = "${DEFAULT_ABI}" ] ; then
+ myconf+=" $(use_enable doc install-docs) $(use_enable doc docs)"
+ else
+ # not needed for multilib and will be overwritten anyway.
+ myconf+=" --disable-examples --disable-install-docs --disable-docs"
+ fi
+
+ "${S}/configure" \
+ --prefix="${EPREFIX}"/usr \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --enable-pic \
+ --enable-vp8 \
+ --enable-shared \
+ --extra-cflags="${CFLAGS}" \
+ $(use_enable altivec) \
+ $(use_enable cpu_flags_x86_mmx mmx) \
+ $(use_enable postproc) \
+ $(use_enable cpu_flags_x86_sse sse) \
+ $(use_enable cpu_flags_x86_sse2 sse2) \
+ $(use_enable cpu_flags_x86_sse3 sse3) \
+ $(use_enable cpu_flags_x86_sse4_1 sse4_1) \
+ $(use_enable cpu_flags_x86_ssse3 ssse3) \
+ $(use_enable static-libs static) \
+ $(use_enable test unit-tests) \
+ $(use_enable threads multithread) \
+ ${myconf} \
+ || die
+}
+
+multilib_src_compile() {
+ # build verbose by default and do not build examples that will not be installed
+ emake verbose=yes GEN_EXAMPLES=
+}
+
+multilib_src_test() {
+ LD_LIBRARY_PATH="${BUILD_DIR}:${LD_LIBRARY_PATH}" \
+ emake verbose=yes GEN_EXAMPLES= LIBVPX_TEST_DATA_PATH="${WORKDIR}/${PN}-testdata" test
+}
+
+multilib_src_install() {
+ emake verbose=yes GEN_EXAMPLES= DESTDIR="${D}" install
+ [ "${ABI}" = "${DEFAULT_ABI}" ] && use doc && dohtml docs/html/*
+}
diff --git a/media-libs/libvpx/libvpx-1.3.0.ebuild b/media-libs/libvpx/libvpx-1.3.0.ebuild
new file mode 100644
index 00000000..9d4f6f0f
--- /dev/null
+++ b/media-libs/libvpx/libvpx-1.3.0.ebuild
@@ -0,0 +1,129 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/libvpx/libvpx-1.3.0.ebuild,v 1.19 2015/02/05 16:00:23 mgorny Exp $
+
+EAPI=4
+inherit eutils multilib toolchain-funcs multilib-minimal
+
+LIBVPX_TESTDATA_VER=1.3.0
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-2
+ EGIT_REPO_URI="https://chromium.googlesource.com/webm/${PN}.git"
+elif [[ ${PV} == *pre* ]]; then
+ SRC_URI="mirror://gentoo/${P}.tar.bz2"
+ KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+else
+ SRC_URI="http://webm.googlecode.com/files/${PN}-v${PV}.tar.bz2"
+ KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+ S="${WORKDIR}/${PN}-v${PV}"
+fi
+# generated by: make LIBVPX_TEST_DATA_PATH=libvpx-testdata testdata + tar'ing
+# it.
+SRC_URI="${SRC_URI}
+ test? ( mirror://gentoo/${PN}-testdata-${LIBVPX_TESTDATA_VER}.tar.bz2 )"
+
+DESCRIPTION="WebM VP8 Codec SDK"
+HOMEPAGE="http://www.webmproject.org"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="altivec cpu_flags_x86_avx cpu_flags_x86_avx2 doc cpu_flags_x86_mmx postproc cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 static-libs test +threads"
+
+RDEPEND="abi_x86_32? ( !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)] )"
+DEPEND="abi_x86_32? ( dev-lang/yasm )
+ abi_x86_64? ( dev-lang/yasm )
+ x86-fbsd? ( dev-lang/yasm )
+ amd64-fbsd? ( dev-lang/yasm )
+ doc? (
+ app-doc/doxygen
+ dev-lang/php
+ )
+"
+
+REQUIRED_USE="
+ cpu_flags_x86_sse2? ( cpu_flags_x86_mmx )
+ cpu_flags_x86_ssse3? ( cpu_flags_x86_sse2 )
+"
+
+src_prepare() {
+ epatch "${FILESDIR}/libvpx-1.3.0-dash.patch"
+ epatch "${FILESDIR}/libvpx-1.3.0-sparc-configure.patch" # 501010
+}
+
+multilib_src_configure() {
+ unset CODECS #357487
+
+ # let the build system decide which AS to use (it honours $AS but
+ # then feeds it with yasm flags without checking...) #345161
+ tc-export AS
+ case "${CHOST}" in
+ i?86*) export AS=yasm;;
+ x86_64*) export AS=yasm;;
+ esac
+
+ # http://bugs.gentoo.org/show_bug.cgi?id=384585
+ # https://bugs.gentoo.org/show_bug.cgi?id=465988
+ # copied from php-pear-r1.eclass
+ addpredict /usr/share/snmp/mibs/.index
+ local varlib="/var/lib"
+ if [[ -L "${varlib}" ]]; then
+ varlib="$( readlink -e "${varlib}" )"
+ fi
+ addpredict "${varlib}"/net-snmp/
+ addpredict "${varlib}"/net-snmp/mib_indexes
+ unset varlib
+ addpredict /session_mm_cli0.sem
+
+ # Build with correct toolchain.
+ tc-export CC CXX AR NM
+ # Link with gcc by default, the build system should override this if needed.
+ export LD="${CC}"
+
+ local myconf
+ if [ "${ABI}" = "${DEFAULT_ABI}" ] ; then
+ myconf+=" $(use_enable doc install-docs) $(use_enable doc docs)"
+ else
+ # not needed for multilib and will be overwritten anyway.
+ myconf+=" --disable-examples --disable-install-docs --disable-docs"
+ fi
+
+ # #498364: sse doesn't work without sse2 enabled,
+ "${S}/configure" \
+ --prefix="${EPREFIX}"/usr \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --enable-pic \
+ --enable-vp8 \
+ --enable-shared \
+ --extra-cflags="${CFLAGS}" \
+ $(use_enable altivec) \
+ $(use_enable cpu_flags_x86_avx avx) \
+ $(use_enable cpu_flags_x86_avx2 avx2) \
+ $(use_enable cpu_flags_x86_mmx mmx) \
+ $(use_enable postproc) \
+ $(use cpu_flags_x86_sse2 && use_enable cpu_flags_x86_sse sse || echo --disable-sse) \
+ $(use_enable cpu_flags_x86_sse2 sse2) \
+ $(use_enable cpu_flags_x86_sse3 sse3) \
+ $(use_enable cpu_flags_x86_sse4_1 sse4_1) \
+ $(use_enable cpu_flags_x86_ssse3 ssse3) \
+ $(use_enable static-libs static) \
+ $(use_enable test unit-tests) \
+ $(use_enable threads multithread) \
+ ${myconf} \
+ || die
+}
+
+multilib_src_compile() {
+ # build verbose by default and do not build examples that will not be installed
+ emake verbose=yes GEN_EXAMPLES=
+}
+
+multilib_src_test() {
+ LD_LIBRARY_PATH="${BUILD_DIR}:${LD_LIBRARY_PATH}" \
+ emake verbose=yes GEN_EXAMPLES= LIBVPX_TEST_DATA_PATH="${WORKDIR}/${PN}-testdata" test
+}
+
+multilib_src_install() {
+ emake verbose=yes GEN_EXAMPLES= DESTDIR="${D}" install
+ [ "${ABI}" = "${DEFAULT_ABI}" ] && use doc && dohtml docs/html/*
+}
diff --git a/media-libs/libvpx/libvpx-1.4.0.ebuild b/media-libs/libvpx/libvpx-1.4.0.ebuild
new file mode 100644
index 00000000..c6086f8e
--- /dev/null
+++ b/media-libs/libvpx/libvpx-1.4.0.ebuild
@@ -0,0 +1,127 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/libvpx/libvpx-1.4.0.ebuild,v 1.1 2015/04/07 20:34:20 phajdan.jr Exp $
+
+EAPI=5
+inherit eutils multilib toolchain-funcs multilib-minimal
+
+LIBVPX_TESTDATA_VER=1.4.0
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-2
+ EGIT_REPO_URI="https://chromium.googlesource.com/webm/${PN}.git"
+elif [[ ${PV} == *pre* ]]; then
+ SRC_URI="mirror://gentoo/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+else
+ SRC_URI="http://storage.googleapis.com/downloads.webmproject.org/releases/webm/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+fi
+# generated by: make LIBVPX_TEST_DATA_PATH=libvpx-testdata testdata + tar'ing
+# it.
+SRC_URI="${SRC_URI}
+ test? ( mirror://gentoo/${PN}-testdata-${LIBVPX_TESTDATA_VER}.tar.bz2 )"
+
+DESCRIPTION="WebM VP8 Codec SDK"
+HOMEPAGE="http://www.webmproject.org"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="altivec cpu_flags_x86_avx cpu_flags_x86_avx2 doc cpu_flags_x86_mmx postproc cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 static-libs test +threads"
+
+RDEPEND="abi_x86_32? ( !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)] )"
+DEPEND="abi_x86_32? ( dev-lang/yasm )
+ abi_x86_64? ( dev-lang/yasm )
+ x86-fbsd? ( dev-lang/yasm )
+ amd64-fbsd? ( dev-lang/yasm )
+ doc? (
+ app-doc/doxygen
+ dev-lang/php
+ )
+"
+
+REQUIRED_USE="
+ cpu_flags_x86_sse2? ( cpu_flags_x86_mmx )
+ cpu_flags_x86_ssse3? ( cpu_flags_x86_sse2 )
+"
+
+src_prepare() {
+ epatch "${FILESDIR}/libvpx-1.3.0-sparc-configure.patch" # 501010
+}
+
+multilib_src_configure() {
+ unset CODECS #357487
+
+ # let the build system decide which AS to use (it honours $AS but
+ # then feeds it with yasm flags without checking...) #345161
+ tc-export AS
+ case "${CHOST}" in
+ i?86*) export AS=yasm;;
+ x86_64*) export AS=yasm;;
+ esac
+
+ # http://bugs.gentoo.org/show_bug.cgi?id=384585
+ # https://bugs.gentoo.org/show_bug.cgi?id=465988
+ # copied from php-pear-r1.eclass
+ addpredict /usr/share/snmp/mibs/.index
+ local varlib="/var/lib"
+ if [[ -L "${varlib}" ]]; then
+ varlib="$( readlink -e "${varlib}" )"
+ fi
+ addpredict "${varlib}"/net-snmp/
+ addpredict "${varlib}"/net-snmp/mib_indexes
+ unset varlib
+ addpredict /session_mm_cli0.sem
+
+ # Build with correct toolchain.
+ tc-export CC CXX AR NM
+ # Link with gcc by default, the build system should override this if needed.
+ export LD="${CC}"
+
+ local myconf
+ if [ "${ABI}" = "${DEFAULT_ABI}" ] ; then
+ myconf+=" $(use_enable doc install-docs) $(use_enable doc docs)"
+ else
+ # not needed for multilib and will be overwritten anyway.
+ myconf+=" --disable-examples --disable-install-docs --disable-docs"
+ fi
+
+ # #498364: sse doesn't work without sse2 enabled,
+ "${S}/configure" \
+ --prefix="${EPREFIX}"/usr \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --enable-pic \
+ --enable-vp8 \
+ --enable-shared \
+ --extra-cflags="${CFLAGS}" \
+ $(use_enable altivec) \
+ $(use_enable cpu_flags_x86_avx avx) \
+ $(use_enable cpu_flags_x86_avx2 avx2) \
+ $(use_enable cpu_flags_x86_mmx mmx) \
+ $(use_enable postproc) \
+ $(use cpu_flags_x86_sse2 && use_enable cpu_flags_x86_sse sse || echo --disable-sse) \
+ $(use_enable cpu_flags_x86_sse2 sse2) \
+ $(use_enable cpu_flags_x86_sse3 sse3) \
+ $(use_enable cpu_flags_x86_sse4_1 sse4_1) \
+ $(use_enable cpu_flags_x86_ssse3 ssse3) \
+ $(use_enable static-libs static) \
+ $(use_enable test unit-tests) \
+ $(use_enable threads multithread) \
+ ${myconf} \
+ || die
+}
+
+multilib_src_compile() {
+ # build verbose by default and do not build examples that will not be installed
+ emake verbose=yes GEN_EXAMPLES=
+}
+
+multilib_src_test() {
+ LD_LIBRARY_PATH="${BUILD_DIR}:${LD_LIBRARY_PATH}" \
+ emake verbose=yes GEN_EXAMPLES= LIBVPX_TEST_DATA_PATH="${WORKDIR}/${PN}-testdata" test
+}
+
+multilib_src_install() {
+ emake verbose=yes GEN_EXAMPLES= DESTDIR="${D}" install
+ [ "${ABI}" = "${DEFAULT_ABI}" ] && use doc && dohtml docs/html/*
+}
diff --git a/media-libs/libvpx/libvpx-9999.ebuild b/media-libs/libvpx/libvpx-9999.ebuild
new file mode 100644
index 00000000..6cb6d6ce
--- /dev/null
+++ b/media-libs/libvpx/libvpx-9999.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/libvpx/libvpx-9999.ebuild,v 1.53 2015/02/05 16:00:23 mgorny Exp $
+
+EAPI=4
+inherit multilib toolchain-funcs multilib-minimal
+
+LIBVPX_TESTDATA_VER=1.3.0
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-2
+ EGIT_REPO_URI="https://chromium.googlesource.com/webm/${PN}.git"
+elif [[ ${PV} == *pre* ]]; then
+ SRC_URI="mirror://gentoo/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+else
+ SRC_URI="http://webm.googlecode.com/files/${PN}-v${PV}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+ S="${WORKDIR}/${PN}-v${PV}"
+fi
+# generated by: make LIBVPX_TEST_DATA_PATH=libvpx-testdata testdata + tar'ing
+# it.
+SRC_URI="${SRC_URI}
+ test? ( mirror://gentoo/${PN}-testdata-${LIBVPX_TESTDATA_VER}.tar.bz2 )"
+
+DESCRIPTION="WebM VP8 Codec SDK"
+HOMEPAGE="http://www.webmproject.org"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="altivec cpu_flags_x86_avx cpu_flags_x86_avx2 doc cpu_flags_x86_mmx postproc cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_ssse3 cpu_flags_x86_sse4_1 static-libs test +threads"
+
+RDEPEND="abi_x86_32? ( !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)] )"
+DEPEND="abi_x86_32? ( dev-lang/yasm )
+ abi_x86_64? ( dev-lang/yasm )
+ x86-fbsd? ( dev-lang/yasm )
+ amd64-fbsd? ( dev-lang/yasm )
+ doc? (
+ app-doc/doxygen
+ dev-lang/php
+ )
+"
+
+REQUIRED_USE="
+ cpu_flags_x86_sse2? ( cpu_flags_x86_mmx )
+ cpu_flags_x86_ssse3? ( cpu_flags_x86_sse2 )
+"
+
+multilib_src_configure() {
+ unset CODECS #357487
+
+ # let the build system decide which AS to use (it honours $AS but
+ # then feeds it with yasm flags without checking...) #345161
+ tc-export AS
+ case "${CHOST}" in
+ i?86*) export AS=yasm;;
+ x86_64*) export AS=yasm;;
+ esac
+
+ # http://bugs.gentoo.org/show_bug.cgi?id=384585
+ # https://bugs.gentoo.org/show_bug.cgi?id=465988
+ # copied from php-pear-r1.eclass
+ addpredict /usr/share/snmp/mibs/.index
+ local varlib="/var/lib"
+ if [[ -L "${varlib}" ]]; then
+ varlib="$( readlink -e "${varlib}" )"
+ fi
+ addpredict "${varlib}"/net-snmp/
+ addpredict "${varlib}"/net-snmp/mib_indexes
+ unset varlib
+ addpredict /session_mm_cli0.sem
+
+ # Build with correct toolchain.
+ tc-export CC CXX AR NM
+ # Link with gcc by default, the build system should override this if needed.
+ export LD="${CC}"
+
+ local myconf
+ if [ "${ABI}" = "${DEFAULT_ABI}" ] ; then
+ myconf+=" $(use_enable doc install-docs) $(use_enable doc docs)"
+ else
+ # not needed for multilib and will be overwritten anyway.
+ myconf+=" --disable-examples --disable-install-docs --disable-docs"
+ fi
+
+ # #498364: sse doesn't work without sse2 enabled,
+ "${S}/configure" \
+ --prefix="${EPREFIX}"/usr \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --enable-pic \
+ --enable-vp8 \
+ --enable-shared \
+ --extra-cflags="${CFLAGS}" \
+ $(use_enable altivec) \
+ $(use_enable cpu_flags_x86_avx avx) \
+ $(use_enable cpu_flags_x86_avx2 avx2) \
+ $(use_enable cpu_flags_x86_mmx mmx) \
+ $(use_enable postproc) \
+ $(use cpu_flags_x86_sse2 && use_enable cpu_flags_x86_sse sse || echo --disable-sse) \
+ $(use_enable cpu_flags_x86_sse2 sse2) \
+ $(use_enable cpu_flags_x86_sse3 sse3) \
+ $(use_enable cpu_flags_x86_sse4_1 sse4_1) \
+ $(use_enable cpu_flags_x86_ssse3 ssse3) \
+ $(use_enable static-libs static) \
+ $(use_enable test unit-tests) \
+ $(use_enable threads multithread) \
+ ${myconf} \
+ || die
+}
+
+multilib_src_compile() {
+ # build verbose by default and do not build examples that will not be installed
+ emake verbose=yes GEN_EXAMPLES=
+}
+
+multilib_src_test() {
+ LD_LIBRARY_PATH="${BUILD_DIR}:${LD_LIBRARY_PATH}" \
+ emake verbose=yes GEN_EXAMPLES= LIBVPX_TEST_DATA_PATH="${WORKDIR}/${PN}-testdata" test
+}
+
+multilib_src_install() {
+ emake verbose=yes GEN_EXAMPLES= DESTDIR="${D}" install
+ [ "${ABI}" = "${DEFAULT_ABI}" ] && use doc && dohtml docs/html/*
+}