[gentoo-commits] repo/gentoo:master commit in: media-libs/libvpx/files/, media-libs/libvpx/
commit: 8a9088a028b5c95c944c75d55797852c4d92c722 Author: Sam James gentoo org> AuthorDate: Wed Oct 4 12:08:15 2023 + Commit: Sam James gentoo org> CommitDate: Wed Oct 4 12:09:55 2023 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8a9088a0 media-libs/libvpx: allow _FORTIFY_SOURCE Upstream have been disabling this for years, since 2011(!), for a (IMO) misguided attempt to preserve ABI which isn't really possible w/ glibc and its use of symbol versioning anyway in a backwards direction. Fedora have also been patching this out for a while: https://src.fedoraproject.org/rpms/libvpx/blob/rawhide/f/libvpx-1.7.0-leave-fortify-source-on.patch This feels especially important given libvpx had an RCE vulnerability only last week. Signed-off-by: Sam James gentoo.org> .../files/libvpx-1.13.1-allow-fortify-source.patch | 17 +++ media-libs/libvpx/libvpx-1.13.1-r1.ebuild | 142 + 2 files changed, 159 insertions(+) diff --git a/media-libs/libvpx/files/libvpx-1.13.1-allow-fortify-source.patch b/media-libs/libvpx/files/libvpx-1.13.1-allow-fortify-source.patch new file mode 100644 index ..5928c4e46723 --- /dev/null +++ b/media-libs/libvpx/files/libvpx-1.13.1-allow-fortify-source.patch @@ -0,0 +1,17 @@ +This was originally added for ABI reasons in a case which barely works / doesn't +work at all for glibc anyway, see https://github.com/webmproject/libvpx/commit/b73a3693e581583e9ec676f4396d0c3d173e2462. + +We want fortification and we definitely don't want it explicitly turned off. +--- a/build/make/configure.sh b/build/make/configure.sh +@@ -1495,10 +1495,6 @@ EOF + # shared objects + enabled gcc && enabled pic && check_add_cflags -fPIC + +- # Work around longjmp interception on glibc >= 2.11, to improve binary +- # compatibility. See http://code.google.com/p/webm/issues/detail?id=166 +- enabled linux && check_add_cflags -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0 +- + # Check for strip utility variant + ${STRIP} -V 2>/dev/null | grep GNU >/dev/null && enable_feature gnu_strip + diff --git a/media-libs/libvpx/libvpx-1.13.1-r1.ebuild b/media-libs/libvpx/libvpx-1.13.1-r1.ebuild new file mode 100644 index ..3ac3d45d048a --- /dev/null +++ b/media-libs/libvpx/libvpx-1.13.1-r1.ebuild @@ -0,0 +1,142 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit edo toolchain-funcs multilib-minimal + +# To create a new testdata tarball: +# 1. Unpack source tarball or checkout git tag +# 2. mkdir libvpx-testdata +# 3. export LIBVPX_TEST_DATA_PATH=libvpx-testdata +# 4. ./configure --enable-unit-tests --enable-vp9-highbitdepth +# 5. make testdata +# 6. tar -caf libvpx-testdata-${MY_PV}.tar.xz libvpx-testdata + +LIBVPX_TESTDATA_VER=1.13.1 + +DESCRIPTION="WebM VP8 and VP9 Codec SDK" +HOMEPAGE="https://www.webmproject.org; +SRC_URI=" + https://github.com/webmproject/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz + test? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-testdata-${LIBVPX_TESTDATA_VER}.tar.xz ) +" + +LICENSE="BSD" +SLOT="0/8" +KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="cpu_flags_ppc_vsx3 doc +highbitdepth postproc static-libs test +threads" +REQUIRED_USE="test? ( threads )" +RESTRICT="!test? ( test )" + +BDEPEND=" + dev-lang/perl + abi_x86_32? ( dev-lang/yasm ) + abi_x86_64? ( dev-lang/yasm ) + abi_x86_x32? ( dev-lang/yasm ) + doc? ( + app-doc/doxygen + dev-lang/php + ) +" + +PATCHES=( + # bug #501010 + "${FILESDIR}/${PN}-1.3.0-sparc-configure.patch" + "${FILESDIR}/${PN}-1.13.1-allow-fortify-source.patch" +) + +src_configure() { + # bug #384585, bug #465988 + # copied from php-pear-r1.eclass + addpredict /usr/share/snmp/mibs/.index + addpredict /var/lib/net-snmp/ + addpredict /var/lib/net-snmp/mib_indexes + addpredict /session_mm_cli0.sem + multilib-minimal_src_configure +} + +multilib_src_configure() { + # bug #357487 + unset CODECS + # bug #905986 + unset DIST_DIR + + # bug #498364: sse doesn't work without sse2 enabled, + local myconfargs=( + --prefix="${EPREFIX}"/usr + --libdir="${EPREFIX}"/usr/$(get_libdir) + --enable-pic + --enable-vp8 + --enable-vp9 + --enable-shared + --disable-optimizations + $(use_enable postproc) + $(use_enable static-libs static) + $(use_enable test unit-tests) + $(use_enable threads multithread) + $(use_enable highbitdepth vp9-highbitdepth) + ) + + # let the build system decide which AS to use (it honours $AS but + # then feeds it with yasm flags without checking...), bug
[gentoo-commits] repo/gentoo:master commit in: media-libs/libvpx/files/, media-libs/libvpx/
commit: 4e33ebf94469ab30c5878d789081e6e8e6fcc732 Author: Sam James gentoo org> AuthorDate: Thu Sep 28 05:10:29 2023 + Commit: Sam James gentoo org> CommitDate: Thu Sep 28 05:11:08 2023 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4e33ebf9 media-libs/libvpx: backport CVE-2023-5217 fix Bug: https://bugs.gentoo.org/914871 Bug: https://bugs.gentoo.org/914875 Closes: https://github.com/gentoo/gentoo/pull/33095 Signed-off-by: Sam James gentoo.org> ...-1.13.0-VP8-disallow-thread-count-changes.patch | 53 ...pi_test-add-ConfigResizeChangeThreadCount.patch | 94 + media-libs/libvpx/libvpx-1.13.0-r1.ebuild | 145 + 3 files changed, 292 insertions(+) diff --git a/media-libs/libvpx/files/libvpx-1.13.0-VP8-disallow-thread-count-changes.patch b/media-libs/libvpx/files/libvpx-1.13.0-VP8-disallow-thread-count-changes.patch new file mode 100644 index ..bdaea724f817 --- /dev/null +++ b/media-libs/libvpx/files/libvpx-1.13.0-VP8-disallow-thread-count-changes.patch @@ -0,0 +1,53 @@ +https://bugs.gentoo.org/914875 + +From 4e4bbfbd414d738b7114194c5d06b45b415486b8 Mon Sep 17 00:00:00 2001 +From: James Zern +Date: Mon, 25 Sep 2023 18:55:59 -0700 +Subject: [PATCH 2/2] VP8: disallow thread count changes + +Currently allocations are done at encoder creation time. Going from +threaded to non-threaded would cause a crash. + +Bug: chromium:1486441 +Change-Id: Ie301c2a70847dff2f0daae408fbef1e4d42e73d4 +(cherry picked from commit 3fbd1dca6a4d2dad332a2110d646e4ffef36d590) +(cherry picked from commit 7aaffe2df4c9426ab204a272ca5ca52286ca86d4) +--- + test/encode_api_test.cc | 4 + vp8/encoder/onyx_if.c | 5 + + 2 files changed, 5 insertions(+), 4 deletions(-) + +diff --git a/test/encode_api_test.cc b/test/encode_api_test.cc +index 02aedc057..e0e793b15 100644 +--- a/test/encode_api_test.cc b/test/encode_api_test.cc +@@ -366,10 +366,6 @@ TEST(EncodeAPI, ConfigResizeChangeThreadCount) { + + for (const auto *iface : kCodecIfaces) { + SCOPED_TRACE(vpx_codec_iface_name(iface)); +-if (!IsVP9(iface)) { +- GTEST_SKIP() << "TODO(https://crbug.com/1486441) remove this condition " +- "after VP8 is fixed."; +-} + for (int i = 0; i < (IsVP9(iface) ? 2 : 1); ++i) { + vpx_codec_enc_cfg_t cfg = {}; + struct Encoder { +diff --git a/vp8/encoder/onyx_if.c b/vp8/encoder/onyx_if.c +index 4bbeadef0..148a16cc4 100644 +--- a/vp8/encoder/onyx_if.c b/vp8/encoder/onyx_if.c +@@ -1443,6 +1443,11 @@ void vp8_change_config(VP8_COMP *cpi, VP8_CONFIG *oxcf) { + last_h = cpi->oxcf.Height; + prev_number_of_layers = cpi->oxcf.number_of_layers; + ++ if (cpi->initial_width) { ++// TODO(https://crbug.com/1486441): Allow changing thread counts; the ++// allocation is done once in vp8_create_compressor(). ++oxcf->multi_threaded = cpi->oxcf.multi_threaded; ++ } + cpi->oxcf = *oxcf; + + switch (cpi->oxcf.Mode) { +-- +2.42.0 + diff --git a/media-libs/libvpx/files/libvpx-1.13.0-encode_api_test-add-ConfigResizeChangeThreadCount.patch b/media-libs/libvpx/files/libvpx-1.13.0-encode_api_test-add-ConfigResizeChangeThreadCount.patch new file mode 100644 index ..17aa33567cc3 --- /dev/null +++ b/media-libs/libvpx/files/libvpx-1.13.0-encode_api_test-add-ConfigResizeChangeThreadCount.patch @@ -0,0 +1,94 @@ +https://bugs.gentoo.org/914875 + +From 2f6c3a33e89e504ab3bef0aa847dc053f3355093 Mon Sep 17 00:00:00 2001 +From: James Zern +Date: Mon, 25 Sep 2023 18:53:41 -0700 +Subject: [PATCH 1/2] encode_api_test: add ConfigResizeChangeThreadCount + +Update thread counts and resolution to ensure allocations are updated +correctly. VP8 is disabled to avoid a crash. + +Bug: chromium:1486441 +Change-Id: Ie89776d9818d27dc351eff298a44c699e850761b +(cherry picked from commit af6dedd715f4307669366944cca6e0417b290282) +(cherry picked from commit 972691e9af302f0bc14998e78a6d54f7861c92e5) +--- + test/encode_api_test.cc | 50 - + 1 file changed, 49 insertions(+), 1 deletion(-) + +diff --git a/test/encode_api_test.cc b/test/encode_api_test.cc +index ecdf92834..02aedc057 100644 +--- a/test/encode_api_test.cc b/test/encode_api_test.cc +@@ -304,7 +304,6 @@ TEST(EncodeAPI, SetRoi) { + + void InitCodec(const vpx_codec_iface_t , int width, int height, +vpx_codec_ctx_t *enc, vpx_codec_enc_cfg_t *cfg) { +- ASSERT_EQ(vpx_codec_enc_config_default(, cfg, 0), VPX_CODEC_OK); + cfg->g_w = width; + cfg->g_h = height; + cfg->g_lag_in_frames = 0; +@@ -342,6 +341,7 @@ TEST(EncodeAPI, ConfigChangeThreadCount) { + vpx_codec_ctx_t ctx = {}; + } enc; + ++ ASSERT_EQ(vpx_codec_enc_config_default(iface, , 0), VPX_CODEC_OK); + EXPECT_NO_FATAL_FAILURE( + InitCodec(*iface, kWidth, kHeight, , )); + if (IsVP9(iface)) { +@@ -360,4 +360,52 @@ TEST(EncodeAPI, ConfigChangeThreadCount) { + } + } +
[gentoo-commits] repo/gentoo:master commit in: media-libs/libvpx/files/, media-libs/libvpx/
commit: 339c27e5232302f2b7219741fc4b3920e4332322 Author: Sam James gentoo org> AuthorDate: Sun Apr 17 19:23:42 2022 + Commit: Sam James gentoo org> CommitDate: Sun Apr 17 19:23:42 2022 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=339c27e5 media-libs/libvpx: drop 1.7.0-r1, 1.10.0 Signed-off-by: Sam James gentoo.org> media-libs/libvpx/Manifest | 4 - ...libvpx-1.7.0-CVE-2019-9232_9325_9371_9433.patch | 211 - media-libs/libvpx/libvpx-1.10.0.ebuild | 119 media-libs/libvpx/libvpx-1.7.0-r1.ebuild | 129 - 4 files changed, 463 deletions(-) diff --git a/media-libs/libvpx/Manifest b/media-libs/libvpx/Manifest index cb0494a1bad1..09a825a81ef6 100644 --- a/media-libs/libvpx/Manifest +++ b/media-libs/libvpx/Manifest @@ -1,8 +1,4 @@ -DIST libvpx-1.10.0.tar.gz 5340421 BLAKE2B 25ef346b9dce92d37cc4f4612ed351d0f93a60c9021ed5f9145a9128efa8b0af7cf30b6279c40481ab043b9922b93f6b502cdffc3feedaf4bca310fdaf8b1502 SHA512 f88c588145b5164e98531b75215e119056cd806a9dbe6599bb9dab35c0af0ecd4b3daabee7d795e412a58aeb543d5c7dc0107457c4bd8f4d434e966e8e22a32d DIST libvpx-1.11.0.tar.gz 5347256 BLAKE2B 2c350e14fc3b8a3c10a71e230e893fbb9a68e6eeb6a413cc359bdbfddda21cc5c15d0de4b6110889845f88f8a946ef1266980c0a1b26aaf55b52330fe038e261 SHA512 7aa5d30afa956dccda60917fd82f6f9992944ca893437c8cd53a04d1b7a94e0210431954aa136594dc400340123cc166dcc855753e493c8d929667f4c42b65a5 -DIST libvpx-1.7.0.tar.gz 2679797 BLAKE2B de7992adb517e375c5be2a9facf2b4a73174adcaef11185ed6d3102c2f6b73f378b0d415c5e3a4d915b3a6889bd8b31ba3e8c007a87a433a345ef7696a1dd899 SHA512 8b3b766b550f8d86907628d7ed88035f9a2612aac21542e0fd5ad35b905eb82cbe1be02a1a24afce7a3bcc4766f62611971f72724761996b392136c40a1e7ff0 DIST libvpx-1.9.0.tar.gz 5326239 BLAKE2B 6403a5d8326235a8d27ca3727f45398556cbe72cd125ae358c22f729cc01d6a81917cca8a6e97ad0ed01e7fc04ca4212baf21f371323b93ccc8830c4a11acf91 SHA512 8d544552b35000ea5712aec220b78bb5f7dc210704b2f609365214cb95a4f5a0e343b362723d829cb4a9ac203b10d5443700ba84b28fd6b2fefbabb40663e298 -DIST libvpx-testdata-1.10.0.tar.xz 448090752 BLAKE2B 88391427d35c538d114df188a899f8de7247dcd861d8438a32530909430feceef48c2c35a53c5a57268dccd85bcd40ec92bb053cfc2b4588bde6447747e10803 SHA512 6d4f0d08f32b34e95c1a75a4340e0340c83b26008852fac4293f1f3c4b9e9ce0f8e2290de678e2f2c9e1309f6995857add4e98796e1a3f474ce1402c9cc862f4 DIST libvpx-testdata-1.11.0.tar.xz 444614504 BLAKE2B ab6de4c46a771dc1c0dfb19326e580a492768c629eebbfb276db7da02e13256b2a66fdaadf76e5856879e871c7a17fcff657139582b1a3a84ad39c6018b912be SHA512 772e9d69dc9fc8e5a9411e1a532d908e86d90b03019e958349115a74697dcb35972ce71325312193d3a84030c3ff1d9bdbd09ed58918fffcba39c120ce4be868 -DIST libvpx-testdata-1.7.0.tar.xz 238790100 BLAKE2B 1d14e794341d35402eaf54d398ebed56b0983908e397ae677737e0f313ea0bfc9c4a39be91765b02a07a8eb9b55529d5f998efcc87b1b493b0e326e02193d982 SHA512 1556345e41674f0846a7419828972ec27c3c37fe270fa1deb45e03665f60ec088d79134aee0d2e27003b130636eeed4a15ea3f701c9d7014f3ca2785467767a8 DIST libvpx-testdata-1.9.0.tar.xz 450868860 BLAKE2B aaed7f2ef4f70ff352e39be2630e3a5cd803e8d2408c4fd5c3e06e040a75d2f593a10bc267a497aa91eaceb64286e81f69e86ca0940160e4f34b62c08e91df7b SHA512 bcc89062a436d652d15d5852a842cb4985c4783855b943ab11667c022b5082887129fd9579b8da3af209a3031f95ff8dc625c380f79559db160501cd676736ea diff --git a/media-libs/libvpx/files/libvpx-1.7.0-CVE-2019-9232_9325_9371_9433.patch b/media-libs/libvpx/files/libvpx-1.7.0-CVE-2019-9232_9325_9371_9433.patch deleted file mode 100644 index 623eccda902d.. --- a/media-libs/libvpx/files/libvpx-1.7.0-CVE-2019-9232_9325_9371_9433.patch +++ /dev/null @@ -1,211 +0,0 @@ -Backports of - -From 46e17f0cb4a80b36755c84b8bf15731d3386c08f Mon Sep 17 00:00:00 2001 -From: kyslov -Date: Fri, 4 Jan 2019 17:04:09 -0800 -Subject: [PATCH] Fix OOB memory access on fuzzed data - -From 0681cff1ad36b3ef8ec242f59b5a6c4234ccfb88 Mon Sep 17 00:00:00 2001 -From: James Zern -Date: Tue, 24 Jul 2018 21:36:50 -0700 -Subject: [PATCH] vp9: fix OOB read in decoder_peek_si_internal - -From f00890eecdf8365ea125ac16769a83aa6b68792d Mon Sep 17 00:00:00 2001 -From: James Zern -Date: Tue, 11 Dec 2018 18:06:20 -0800 -Subject: [PATCH] update libwebm to libwebm-1.0.0.27-352-g6ab9fcf - -From 34d54b04e98dd0bac32e9aab0fbda0bf501bc742 Mon Sep 17 00:00:00 2001 -From: James Zern -Date: Tue, 9 Apr 2019 18:37:44 -0700 -Subject: [PATCH] update libwebm to libwebm-1.0.0.27-358-gdbf1d10 - -From 52add5896661d186dec284ed646a4b33b607d2c7 Mon Sep 17 00:00:00 2001 -From: Jerome Jiang -Date: Wed, 23 May 2018 15:43:00 -0700 -Subject: [PATCH] VP8: Fix use-after-free in postproc. - -to address CVE-2019-9232 CVE-2019-9325 CVE-2019-9371 CVE-2019-9433 - - a/test/decode_api_test.cc -+++ b/test/decode_api_test.cc -@@ -138,8 +138,30 @@ TEST(DecodeAPI, Vp9InvalidDecode) { - EXPECT_EQ(VPX_CODEC_OK, vpx_codec_destroy()); - } - --TEST(DecodeAPI, Vp9PeekSI) {
[gentoo-commits] repo/gentoo:master commit in: media-libs/libvpx/files/, media-libs/libvpx/
commit: 73388d195c967accd3e9e7330a546bd9a81401da Author: Georgy Yakovlev gentoo org> AuthorDate: Wed Aug 7 18:44:36 2019 + Commit: Georgy Yakovlev gentoo org> CommitDate: Wed Aug 7 18:49:03 2019 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=73388d19 media-libs/libvpx: add ppc64le patch for 1.8.0 Closes: https://bugs.gentoo.org/688138 Acked-by: Mike Gilbert gentoo.org> Package-Manager: Portage-2.3.69, Repoman-2.3.16 Signed-off-by: Georgy Yakovlev gentoo.org> .../files/libvpx-1.8.0-ppc64le-disable-vsx.patch | 28 ++ media-libs/libvpx/libvpx-1.8.0-r1.ebuild | 1 + media-libs/libvpx/libvpx-1.8.0.ebuild | 1 + 3 files changed, 30 insertions(+) diff --git a/media-libs/libvpx/files/libvpx-1.8.0-ppc64le-disable-vsx.patch b/media-libs/libvpx/files/libvpx-1.8.0-ppc64le-disable-vsx.patch new file mode 100644 index 000..5c6a36ca867 --- /dev/null +++ b/media-libs/libvpx/files/libvpx-1.8.0-ppc64le-disable-vsx.patch @@ -0,0 +1,28 @@ +From 7bf48f92e884fc01c28a4652ea0883b28744519d Mon Sep 17 00:00:00 2001 +From: Johann +Date: Mon, 10 Jun 2019 14:35:03 -0700 +Subject: [PATCH] ppc: disable vsx optimizations with hbd + +vsx optimizations do not support 32 bit tran_low_t values. + +BUG=webm:1563 + +Change-Id: I9e6348078f6e4855acfd381133eb840a435b7f81 +--- + +diff --git a/build/make/configure.sh b/build/make/configure.sh +index e950353..4a874f1 100644 +--- a/build/make/configure.sh b/build/make/configure.sh +@@ -1239,7 +1239,10 @@ + ppc64le*) + link_with_cc=gcc + setup_gnu_toolchain +- check_gcc_machine_option "vsx" ++ # Only enable vsx optimizations when vp9_highbitdepth is not enabled. ++ # https://bugs.chromium.org/p/webm/issues/detail?id=1538 ++ enabled vp9_highbitdepth || check_gcc_machine_option "vsx" ++ enabled vsx || RTCD_OPTIONS="${RTCD_OPTIONS}--disable-vsx " + if [ -n "${tune_cpu}" ]; then + case ${tune_cpu} in + power?) diff --git a/media-libs/libvpx/libvpx-1.8.0-r1.ebuild b/media-libs/libvpx/libvpx-1.8.0-r1.ebuild index b75c00c5ca4..c45449b70d2 100644 --- a/media-libs/libvpx/libvpx-1.8.0-r1.ebuild +++ b/media-libs/libvpx/libvpx-1.8.0-r1.ebuild @@ -42,6 +42,7 @@ DEPEND="abi_x86_32? ( dev-lang/yasm ) PATCHES=( "${FILESDIR}/libvpx-1.3.0-sparc-configure.patch" # 501010 + "${FILESDIR}/libvpx-1.8.0-ppc64le-disable-vsx.patch" #688138 ) src_configure() { diff --git a/media-libs/libvpx/libvpx-1.8.0.ebuild b/media-libs/libvpx/libvpx-1.8.0.ebuild index 73214ce5133..cc1164e1ea8 100644 --- a/media-libs/libvpx/libvpx-1.8.0.ebuild +++ b/media-libs/libvpx/libvpx-1.8.0.ebuild @@ -46,6 +46,7 @@ DEPEND="abi_x86_32? ( dev-lang/yasm ) PATCHES=( "${FILESDIR}/libvpx-1.3.0-sparc-configure.patch" # 501010 + "${FILESDIR}/libvpx-1.8.0-ppc64le-disable-vsx.patch" #688138 ) src_configure() {
[gentoo-commits] repo/gentoo:master commit in: media-libs/libvpx/files/, media-libs/libvpx/
commit: acbdb2218f946d8114130f209aecdeb7c627e942 Author: Mike Gilbert gentoo org> AuthorDate: Fri Sep 23 16:25:51 2016 + Commit: Mike Gilbert gentoo org> CommitDate: Fri Sep 23 16:26:55 2016 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=acbdb221 media-libs/libvpx: port to EAPI 6 Package-Manager: portage-2.3.0_p43 .../files/libvpx-1.3.0-sparc-configure.patch | 4 +- media-libs/libvpx/libvpx-1.6.0-r1.ebuild | 49 +- 2 files changed, 22 insertions(+), 31 deletions(-) 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 index dc3f6c9..2ddea4d 100644 --- a/media-libs/libvpx/files/libvpx-1.3.0-sparc-configure.patch +++ b/media-libs/libvpx/files/libvpx-1.3.0-sparc-configure.patch @@ -1,5 +1,5 @@ configure~ 2014-01-10 21:12:42.0 +0100 -+++ configure 2014-04-05 12:51:51.794638686 +0200 +--- a/configure b/configure @@ -109,6 +109,7 @@ all_platforms="${all_platforms} ppc64-darwin9-gcc" all_platforms="${all_platforms} ppc64-linux-gcc" diff --git a/media-libs/libvpx/libvpx-1.6.0-r1.ebuild b/media-libs/libvpx/libvpx-1.6.0-r1.ebuild index 659cbb7..7986feb 100644 --- a/media-libs/libvpx/libvpx-1.6.0-r1.ebuild +++ b/media-libs/libvpx/libvpx-1.6.0-r1.ebuild @@ -2,31 +2,19 @@ # Distributed under the terms of the GNU General Public License v2 # $Id$ -EAPI=5 -inherit eutils multilib toolchain-funcs multilib-minimal +EAPI=6 +inherit toolchain-funcs multilib-minimal LIBVPX_TESTDATA_VER=1.6.0 -if [[ ${PV} == ** ]]; 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 ~arm64 ~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 ~arm64 ~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 and VP9 Codec SDK" HOMEPAGE="http://www.webmproject.org; +SRC_URI="http://storage.googleapis.com/downloads.webmproject.org/releases/webm/${P}.tar.bz2 + test? ( mirror://gentoo/${PN}-testdata-${LIBVPX_TESTDATA_VER}.tar.bz2 )" LICENSE="BSD" SLOT="0/4" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux" IUSE="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 +highbitdepth static-libs svc test +threads" RDEPEND="abi_x86_32? ( !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)] )" @@ -46,8 +34,19 @@ REQUIRED_USE=" cpu_flags_x86_ssse3? ( cpu_flags_x86_sse2 ) " -src_prepare() { - epatch "${FILESDIR}/libvpx-1.3.0-sparc-configure.patch" # 501010 +PATCHES=( + "${FILESDIR}/libvpx-1.3.0-sparc-configure.patch" # 501010 +) + +src_configure() { + # https://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 + addpredict /var/lib/net-snmp/ + addpredict /var/lib/net-snmp/mib_indexes + addpredict /session_mm_cli0.sem + multilib-minimal_src_configure } multilib_src_configure() { @@ -61,21 +60,13 @@ multilib_src_configure() { x86_64*) export AS=yasm;; esac - # https://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 - addpredict /var/lib/net-snmp/ - addpredict /var/lib/net-snmp/mib_indexes - 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 + if multilib_is_native_abi; then myconf+=" $(use_enable doc install-docs) $(use_enable doc docs)" else # not needed for multilib and will be overwritten anyway. @@ -121,5 +112,5 @@ multilib_src_test() { multilib_src_install() { emake verbose=yes GEN_EXAMPLES= DESTDIR="${D}" install - [ "${ABI}" = "${DEFAULT_ABI}" ] && use doc && dohtml docs/html/* + multilib_is_native_abi && use doc && dodoc -r docs/html }