diff options
Diffstat (limited to 'media-libs/libvpx')
-rw-r--r-- | media-libs/libvpx/Manifest | 2 | ||||
-rw-r--r-- | media-libs/libvpx/libvpx-1.8.0.ebuild | 127 |
2 files changed, 129 insertions, 0 deletions
diff --git a/media-libs/libvpx/Manifest b/media-libs/libvpx/Manifest index 0cf9742727b4..f391ad1d7265 100644 --- a/media-libs/libvpx/Manifest +++ b/media-libs/libvpx/Manifest @@ -2,7 +2,9 @@ DIST libvpx-1.5.0.tar.bz2 1906571 BLAKE2B 1e4e2d7ac6ae046d733361d644a9c36b84f033 DIST libvpx-1.6.0.tar.bz2 1943026 BLAKE2B 1fbea27d73b2120ed807108b8ba09c4118e2d8381fdcbbf8661c5fd664e6272d6c14b73c7b8317b97fa51b212d3ea2429819e0e17adf6afcb8d0f5fb6dd9a68a SHA512 dd753372a156bbf7ceb4090276e5fb32b4c8581c93925dded93efee74153b5eb24ee8c3d8ee6339a6878482f0ecf178a2befeeb36e17eada6c440b48c60e9162 DIST libvpx-1.6.1.tar.bz2 1959534 BLAKE2B 67f73ffd2569bde46db98e7fcb36f7b37d33927fad8c3916ebe1810e63e7aae963bd39ba1f399be079ea4c9f52736f98a603c810f9412643a91166dfb09ed895 SHA512 1a4b009fe1737715c6563a79848126a5859394a5074b1e9cca9bc2e213df90890c15e708040d5f2c96c7c21e268f51e1352ac6911514bf891a4bf3eea154159d DIST libvpx-1.7.0.tar.gz 2679797 BLAKE2B de7992adb517e375c5be2a9facf2b4a73174adcaef11185ed6d3102c2f6b73f378b0d415c5e3a4d915b3a6889bd8b31ba3e8c007a87a433a345ef7696a1dd899 SHA512 8b3b766b550f8d86907628d7ed88035f9a2612aac21542e0fd5ad35b905eb82cbe1be02a1a24afce7a3bcc4766f62611971f72724761996b392136c40a1e7ff0 +DIST libvpx-1.8.0.tar.gz 2879302 BLAKE2B a6113115b4d3668951b084250ca3e9bafeb1a4c54cb0c5516d6d24a88105f13b5b458dd0b57088eddb64deb0096a2023968588cc7dc69aa0cd0799caa71f9fc0 SHA512 77477ec7059de1d90f048c10783b4adce463a84c9c828f125686e533f5bc8c9eeab8a1747df5c928e0869ccf855a9af5608199c8c376a75d35659f719ee870ef DIST libvpx-testdata-1.5.0.tar.bz2 117022525 BLAKE2B d0b5e96694d84d825b874df208dc3b3156ab0d5e9d567e1e05cdc7b88f47126917b84178748f0971ce14d58ee031906b72070bec622983ec56244159b8b759ee SHA512 58abcea159d1f709c2b9b52e8ae381481ed0ee1f43972f5e52d628754844ed23f5f77180a9c3f950a19fd8e2eaec406288d9ec65a42c9d6d080a6948827698bb DIST libvpx-testdata-1.6.0.tar.bz2 121020858 BLAKE2B 93bbaa4514e46b762fbf86d66394b228d62c19906dc79c5c661feedf088d09d4b6c2ac908dc8b1ac4236a801047d5d608b17a8bc0fa5bd5ca0c992cd0729fc7a SHA512 639e229bd97e7a92a29e636f548234a87dbe63673d968cdfbec1faf9ccb0ee2087ad00b0a5bfb1581bea6b17e70bb449e9a046da4d9891f59ec79773ece4294e DIST libvpx-testdata-1.6.1.tar.bz2 158774682 BLAKE2B 0ba1897e015c69cbf98b645cc634f98fdaf58aa814ad2cf93ee1812a38d279a570b856017822db0b21215c0e6d2d069c3f40692317c885ffbc3b59c236a754ba SHA512 9038774a6955cb6664ea664b4d8e08b0e7a2acba85429da9fd84f522bc7a03d57f6d9f1302481136a718507113babbe4786ff7a648130298ad2c0b3cbe8e82ab DIST libvpx-testdata-1.7.0.tar.xz 238790100 BLAKE2B 1d14e794341d35402eaf54d398ebed56b0983908e397ae677737e0f313ea0bfc9c4a39be91765b02a07a8eb9b55529d5f998efcc87b1b493b0e326e02193d982 SHA512 1556345e41674f0846a7419828972ec27c3c37fe270fa1deb45e03665f60ec088d79134aee0d2e27003b130636eeed4a15ea3f701c9d7014f3ca2785467767a8 +DIST libvpx-testdata-1.8.0.tar.xz 418337232 BLAKE2B 1336e522f18a8f7812b4e7e4de7b27d32778c38fe902c62a4415a17e857868bfcdcbdcab528617db89e9f57449a486333feccffc4a250bfe79fc460c790071ed SHA512 991066467121614106455522b3651f194b45a37125c1b4e6bade59044756f26d914c95388e3c0bd3dc22159525aa6478df36801767bb7506fa7e77b93c6c2ede diff --git a/media-libs/libvpx/libvpx-1.8.0.ebuild b/media-libs/libvpx/libvpx-1.8.0.ebuild new file mode 100644 index 000000000000..73214ce5133d --- /dev/null +++ b/media-libs/libvpx/libvpx-1.8.0.ebuild @@ -0,0 +1,127 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" +inherit toolchain-funcs multilib-minimal + +# To create a new testdata tarball: +# 1. Unpack source tarbll or checkout git tag +# 2. export LIBVPX_TEST_DATA_PATH=libvpx-testdata +# 3. configure --enable-unit-tests --enable-vp9-highbitdepth +# 4. make testdata +# 5. tar -cjf libvpx-testdata-${MY_PV}.tar.xz libvpx-testdata + +LIBVPX_TESTDATA_VER=1.8.0 + +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? ( mirror://gentoo/${PN}-testdata-${LIBVPX_TESTDATA_VER}.tar.xz )" + +LICENSE="BSD" +SLOT="0/6" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~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" + +REQUIRED_USE=" + cpu_flags_x86_sse2? ( cpu_flags_x86_mmx ) + cpu_flags_x86_ssse3? ( cpu_flags_x86_sse2 ) + test? ( threads ) +" + +# Disable test phase when USE="-test" +RESTRICT="!test? ( test )" + +RDEPEND="" +DEPEND="abi_x86_32? ( dev-lang/yasm ) + abi_x86_64? ( dev-lang/yasm ) + abi_x86_x32? ( dev-lang/yasm ) + x86-fbsd? ( dev-lang/yasm ) + amd64-fbsd? ( dev-lang/yasm ) + doc? ( + app-doc/doxygen + dev-lang/php + ) +" + +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() { + unset CODECS #357487 + + # #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 + --extra-cflags="${CFLAGS}" + $(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 svc experimental) + $(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...) #345161 + tc-export AS + case "${CHOST}" in + i?86*) export AS=yasm;; + x86_64*) export AS=yasm;; + esac + + # 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}" + + if multilib_is_native_abi; then + myconfargs+=( $(use_enable doc install-docs) $(use_enable doc docs) ) + else + # not needed for multilib and will be overwritten anyway. + myconfargs+=( --disable-examples --disable-install-docs --disable-docs ) + fi + + "${S}"/configure "${myconfargs[@]}" +} + +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() { + local -x LD_LIBRARY_PATH="${BUILD_DIR}" + local -x LIBVPX_TEST_DATA_PATH="${WORKDIR}/${PN}-testdata" + emake verbose=yes GEN_EXAMPLES= test +} + +multilib_src_install() { + emake verbose=yes GEN_EXAMPLES= DESTDIR="${D}" install + multilib_is_native_abi && use doc && dodoc -r docs/html +} |