diff options
author | Jan Beich <jbeich@FreeBSD.org> | 2016-09-30 01:15:10 +0000 |
---|---|---|
committer | Jan Beich <jbeich@FreeBSD.org> | 2016-09-30 01:15:10 +0000 |
commit | adb3fa4aa4ea3ceb87d7c9c1fef3cf4bca607559 (patch) | |
tree | 1ba3080df96174204dd370c10f7b3af929e4389e /multimedia/libvpx | |
parent | 602c1c30a7b850778e5ae31866cec1d65f944fb3 (diff) |
Notes
Diffstat (limited to 'multimedia/libvpx')
-rw-r--r-- | multimedia/libvpx/Makefile | 25 | ||||
-rw-r--r-- | multimedia/libvpx/distinfo | 5 | ||||
-rw-r--r-- | multimedia/libvpx/files/patch-build_make_configure.sh | 10 | ||||
-rw-r--r-- | multimedia/libvpx/files/patch-configure | 13 | ||||
-rw-r--r-- | multimedia/libvpx/files/patch-mozilla-bug1224361 | 32 | ||||
-rw-r--r-- | multimedia/libvpx/files/patch-mozilla-bug1224363 | 29 | ||||
-rw-r--r-- | multimedia/libvpx/files/patch-mozilla-bug1224371 | 31 | ||||
-rw-r--r-- | multimedia/libvpx/files/patch-mozilla-bug1237848 | 134 | ||||
-rw-r--r-- | multimedia/libvpx/pkg-plist | 6 |
9 files changed, 17 insertions, 268 deletions
diff --git a/multimedia/libvpx/Makefile b/multimedia/libvpx/Makefile index 9c958b3a454f..fc15e392462f 100644 --- a/multimedia/libvpx/Makefile +++ b/multimedia/libvpx/Makefile @@ -3,8 +3,7 @@ PORTNAME= libvpx DISTVERSIONPREFIX= v -DISTVERSION= 1.5.0 -PORTREVISION= 1 +DISTVERSION= 1.6.0 CATEGORIES= multimedia MAINTAINER= ashish@FreeBSD.org @@ -18,13 +17,13 @@ BUILD_DEPENDS= yasm:devel/yasm USE_GITHUB= yes GH_ACCOUNT= webmproject -USES= compiler cpe gmake perl5 shebangfix tar:bzip2 +USES= compiler:c11 cpe gmake perl5 shebangfix tar:bzip2 CPE_VENDOR= john_koleszar HAS_CONFIGURE= yes USE_PERL5= build USE_LDCONFIG= yes -OPTIONS_DEFINE= DEBUG MULTIRES POSTPROC RUNTIME SHARED SIZE_LIMIT THREADS +OPTIONS_DEFINE= DEBUG MULTIRES POSTPROC RUNTIME SHARED SIZE_LIMIT TEST THREADS OPTIONS_DEFAULT=MULTIRES POSTPROC RUNTIME SHARED SIZE_LIMIT THREADS OPTIONS_EXCLUDE_aarch64=RUNTIME OPTIONS_EXCLUDE_armv6= RUNTIME @@ -54,16 +53,13 @@ RUNTIME_CONFIGURE_ON= --enable-runtime-cpu-detect SHARED_CONFIGURE_ON= --enable-shared SIZE_LIMIT_CONFIGURE_ON=--size-limit=${SIZE_LIMIT} SIZE_LIMIT?= 16384x16384 # Chromium; Firefox has 4000x3000 +TEST_CONFIGURE_OFF= --disable-unit-tests THREADS_CONFIGURE_OFF= --disable-multithread SHEBANG_FILES= build/make/ads2gas.pl .include <bsd.port.options.mk> -.if ${OSVERSION} >= 1000000 -CONFIGURE_ARGS+= --disable-unit-tests -.endif - .if ${ARCH} == "amd64" CONFIGURE_ARGS+= --target=x86_64-linux-gcc .elif ${ARCH} == "i386" @@ -76,7 +72,6 @@ CONFIGURE_ARGS+= --target=ppc32-linux-gcc CONFIGURE_ARGS+= --target=ppc64-linux-gcc .elif ${ARCH} == "sparc64" CONFIGURE_ARGS+= --target=sparc64-linux-gcc -USES:= ${USES:Ncompiler*} compiler:c++11-lib .elif ${ARCH} == "aarch64" CONFIGURE_ARGS+= --target=arm64-linux-gcc .elif ${ARCH} == "armv6" @@ -86,16 +81,6 @@ EXTRA_PATCHES+= ${FILESDIR}/extra-patch-build_make_Makefile IGNORE= no support for ${ARCH} the moment. testing/patches are welcome .endif -.include <bsd.port.pre.mk> - -# Workaround for GCC in 9.x post r260075 -# OSVERSION taken from r260135, the closest OSVERSION -.if ${OPSYS} == FreeBSD && ${OSVERSION} > 902505 -. if ${COMPILER_TYPE} == gcc && ${COMPILER_VERSION} == 42 -CFLAGS+= -flax-vector-conversions -. endif -.endif - post-patch: @${REINPLACE_CMD} 's|\(link_with_cc\)=gcc|\1=$${CC}|' \ ${WRKSRC}/build/make/configure.sh @@ -104,4 +89,4 @@ post-install: @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/vpx* @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libvpx.so.*.*.* -.include <bsd.port.post.mk> +.include <bsd.port.mk> diff --git a/multimedia/libvpx/distinfo b/multimedia/libvpx/distinfo index 445a8f2f4312..a90e0c18772f 100644 --- a/multimedia/libvpx/distinfo +++ b/multimedia/libvpx/distinfo @@ -1,2 +1,3 @@ -SHA256 (webmproject-libvpx-v1.5.0_GH0.tar.gz) = f199b03b67042e8d94a3ae8bc841fb82b6a8430bdf3965aeeaafe8245bcfa699 -SIZE (webmproject-libvpx-v1.5.0_GH0.tar.gz) = 2430835 +TIMESTAMP = 1475172408 +SHA256 (webmproject-libvpx-v1.6.0_GH0.tar.gz) = e2fc00c9f60c76f91a1cde16a2356e33a45b76a5a5a1370df65fd57052a4994a +SIZE (webmproject-libvpx-v1.6.0_GH0.tar.gz) = 2476097 diff --git a/multimedia/libvpx/files/patch-build_make_configure.sh b/multimedia/libvpx/files/patch-build_make_configure.sh deleted file mode 100644 index e5684b67edb8..000000000000 --- a/multimedia/libvpx/files/patch-build_make_configure.sh +++ /dev/null @@ -1,10 +0,0 @@ ---- build/make/configure.sh.orig 2015-04-03 18:49:19 UTC -+++ build/make/configure.sh -@@ -831,7 +832,6 @@ process_common_toolchain() { - - case ${tgt_cc} in - gcc) -- CROSS=${CROSS:-arm-none-linux-gnueabi-} - link_with_cc=gcc - setup_gnu_toolchain - arch_int=${tgt_isa##armv} diff --git a/multimedia/libvpx/files/patch-configure b/multimedia/libvpx/files/patch-configure index 83895cfb0833..bfebfb9b1de3 100644 --- a/multimedia/libvpx/files/patch-configure +++ b/multimedia/libvpx/files/patch-configure @@ -1,10 +1,9 @@ ---- configure.orig +--- configure.orig 2016-07-21 01:15:41 UTC +++ configure -@@ -153,6 +153,11 @@ all_platforms="${all_platforms} x86_64-w +@@ -158,6 +158,10 @@ all_platforms="${all_platforms} x86_64-w all_platforms="${all_platforms} x86_64-win64-vs11" all_platforms="${all_platforms} x86_64-win64-vs12" all_platforms="${all_platforms} x86_64-win64-vs14" -+all_platforms="${all_platforms} arm64-linux-gcc" +all_platforms="${all_platforms} ia64-linux-gcc" +all_platforms="${all_platforms} ppc32-linux-gcc" +all_platforms="${all_platforms} ppc64-linux-gcc" @@ -12,7 +11,7 @@ all_platforms="${all_platforms} generic-gnu" # all_targets is a list of all targets that can be configured -@@ -611,15 +612,14 @@ +@@ -585,15 +589,14 @@ process_toolchain() { check_add_cflags -Wimplicit-function-declaration check_add_cflags -Wuninitialized check_add_cflags -Wunused-variable @@ -33,6 +32,6 @@ + else + check_add_cflags -Wunused-but-set-variable + fi - enabled extra_warnings || check_add_cflags -Wno-unused-function - fi - + if enabled mips || [ -z "${INLINE}" ]; then + enabled extra_warnings || check_add_cflags -Wno-unused-function + else diff --git a/multimedia/libvpx/files/patch-mozilla-bug1224361 b/multimedia/libvpx/files/patch-mozilla-bug1224361 deleted file mode 100644 index f3b90cee21b6..000000000000 --- a/multimedia/libvpx/files/patch-mozilla-bug1224361 +++ /dev/null @@ -1,32 +0,0 @@ -From ff3674a15e5b1a006546e1edc64c3e778eb34ab1 Mon Sep 17 00:00:00 2001 -From: James Zern <jzern@google.com> -Date: Thu, 3 Dec 2015 16:16:28 -0800 -Subject: vp8: fix quantizer clamping - -the quantizer is transmitted as 7-bits + sign so needs to be clamped in -the delta + absolute case. - -BUG=https://bugzilla.mozilla.org/show_bug.cgi?id=1224361 - -Change-Id: I9115f5d1d5cf7e0a1d149d79486d9d17de9b9639 ---- - vp8/decoder/decodeframe.c | 5 ++--- - 1 file changed, 2 insertions(+), 3 deletions(-) - -diff --git vp8/decoder/decodeframe.c vp8/decoder/decodeframe.c -index f0d7603..4bc87eb 100644 ---- vp8/decoder/decodeframe.c -+++ vp8/decoder/decodeframe.c -@@ -73,10 +73,9 @@ void vp8_mb_init_dequantizer(VP8D_COMP *pbi, MACROBLOCKD *xd) - - /* Delta Value */ - else -- { - QIndex = pc->base_qindex + xd->segment_feature_data[MB_LVL_ALT_Q][mbmi->segment_id]; -- QIndex = (QIndex >= 0) ? ((QIndex <= MAXQ) ? QIndex : MAXQ) : 0; /* Clamp to valid range */ -- } -+ -+ QIndex = (QIndex >= 0) ? ((QIndex <= MAXQ) ? QIndex : MAXQ) : 0; /* Clamp to valid range */ - } - else - QIndex = pc->base_qindex; diff --git a/multimedia/libvpx/files/patch-mozilla-bug1224363 b/multimedia/libvpx/files/patch-mozilla-bug1224363 deleted file mode 100644 index 30069c7eafff..000000000000 --- a/multimedia/libvpx/files/patch-mozilla-bug1224363 +++ /dev/null @@ -1,29 +0,0 @@ -From 2e693eb80e705ea68e23eed19616d22b4778b45a Mon Sep 17 00:00:00 2001 -From: James Zern <jzern@google.com> -Date: Thu, 3 Dec 2015 16:18:48 -0800 -Subject: vp8: fix loop filter level clamping - -the loop filter level is transmitted as 6-bits + sign so needs to be clamped in -the delta + absolute case. - -BUG=https://bugzilla.mozilla.org/show_bug.cgi?id=1224363 - -Change-Id: Icbdca4fdbf043466429bd5c9d59dbe913bf153bc ---- - vp8/common/vp8_loopfilter.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git vp8/common/vp8_loopfilter.c vp8/common/vp8_loopfilter.c -index 8b55dff..756ad48 100644 ---- vp8/common/vp8_loopfilter.c -+++ vp8/common/vp8_loopfilter.c -@@ -141,8 +141,8 @@ void vp8_loop_filter_frame_init(VP8_COMMON *cm, - else /* Delta Value */ - { - lvl_seg += mbd->segment_feature_data[MB_LVL_ALT_LF][seg]; -- lvl_seg = (lvl_seg > 0) ? ((lvl_seg > 63) ? 63: lvl_seg) : 0; - } -+ lvl_seg = (lvl_seg > 0) ? ((lvl_seg > 63) ? 63: lvl_seg) : 0; - } - - if (!mbd->mode_ref_lf_delta_enabled) diff --git a/multimedia/libvpx/files/patch-mozilla-bug1224371 b/multimedia/libvpx/files/patch-mozilla-bug1224371 deleted file mode 100644 index 774589e1fe50..000000000000 --- a/multimedia/libvpx/files/patch-mozilla-bug1224371 +++ /dev/null @@ -1,31 +0,0 @@ -# HG changeset patch -# User Gerald Squelart <gsquelart@mozilla.com> -# Date 1451894747 -3600 -# Mon Jan 04 09:05:47 2016 +0100 -# Node ID 7e497a0b15cdfeca00bd1b9ad234785899073a4c -# Parent c2133ad4a73860ef18662c5144777e76652d4cde -Bug 1224371 - Cast uint8_t to uint32_t before shift. r=jya - -Note: C-style cast because it is C code. - -diff --git a/media/libvpx/vp9/decoder/vp9_decoder.c b/media/libvpx/vp9/decoder/vp9_decoder.c ---- vp9/decoder/vp9_decoder.c -+++ vp9/decoder/vp9_decoder.c -@@ -494,16 +494,16 @@ vpx_codec_err_t vp9_parse_superframe_ind - decrypt_cb(decrypt_state, x, clear_buffer, frames * mag); - x = clear_buffer; - } - - for (i = 0; i < frames; ++i) { - uint32_t this_sz = 0; - - for (j = 0; j < mag; ++j) -- this_sz |= (*x++) << (j * 8); -+ this_sz |= (uint32_t)(*x++) << (j * 8); - sizes[i] = this_sz; - } - *count = frames; - } - } - return VPX_CODEC_OK; - } diff --git a/multimedia/libvpx/files/patch-mozilla-bug1237848 b/multimedia/libvpx/files/patch-mozilla-bug1237848 deleted file mode 100644 index b14e2342139c..000000000000 --- a/multimedia/libvpx/files/patch-mozilla-bug1237848 +++ /dev/null @@ -1,134 +0,0 @@ -From 4f780e94a1fa54f22256e0f4d42a77c340a38fa1 Mon Sep 17 00:00:00 2001 -From: James Zern <jzern@google.com> -Date: Thu, 28 Jan 2016 12:53:41 -0800 -Subject: vp9/10: fix encoder crash on flush - -the lookahead buffer allocation is deferred to receipt of the first -frame to allow profile changes. if the encoder was flushed before -supplying any frames the encoder would crash trying to dereference the -NULL buffer. vp8 is unaffected. - -fixes mozilla bug: -https://bugzilla.mozilla.org/show_bug.cgi?id=1237848 - -Change-Id: Icee4b64de760476eee0d33b568f0a1010335ff13 ---- - test/encode_api_test.cc | 68 +++++++++++++++++++++++++++++++++++++++++++++ - test/test.mk | 1 + - vp10/encoder/lookahead.c | 2 +- - vp8/encoder/lookahead.c | 1 + - vp9/encoder/vp9_lookahead.c | 2 +- - 5 files changed, 72 insertions(+), 2 deletions(-) - create mode 100644 test/encode_api_test.cc - -diff --git test/encode_api_test.cc test/encode_api_test.cc -new file mode 100644 -index 0000000..a7200e6 ---- /dev/null -+++ test/encode_api_test.cc -@@ -0,0 +1,68 @@ -+/* -+ * Copyright (c) 2016 The WebM project authors. All Rights Reserved. -+ * -+ * Use of this source code is governed by a BSD-style license -+ * that can be found in the LICENSE file in the root of the source -+ * tree. An additional intellectual property rights grant can be found -+ * in the file PATENTS. All contributing project authors may -+ * be found in the AUTHORS file in the root of the source tree. -+ */ -+ -+#include "third_party/googletest/src/include/gtest/gtest.h" -+ -+#include "./vpx_config.h" -+#include "vpx/vp8cx.h" -+#include "vpx/vpx_encoder.h" -+ -+namespace { -+ -+#define NELEMENTS(x) static_cast<int>(sizeof(x) / sizeof(x[0])) -+ -+TEST(EncodeAPI, InvalidParams) { -+ static const vpx_codec_iface_t *kCodecs[] = { -+#if CONFIG_VP8_ENCODER -+ &vpx_codec_vp8_cx_algo, -+#endif -+#if CONFIG_VP9_ENCODER -+ &vpx_codec_vp9_cx_algo, -+#endif -+#if CONFIG_VP10_ENCODER -+ &vpx_codec_vp10_cx_algo, -+#endif -+ }; -+ uint8_t buf[1] = {0}; -+ vpx_image_t img; -+ vpx_codec_ctx_t enc; -+ vpx_codec_enc_cfg_t cfg; -+ -+ EXPECT_EQ(&img, vpx_img_wrap(&img, VPX_IMG_FMT_I420, 1, 1, 1, buf)); -+ -+ EXPECT_EQ(VPX_CODEC_INVALID_PARAM, vpx_codec_enc_init(NULL, NULL, NULL, 0)); -+ EXPECT_EQ(VPX_CODEC_INVALID_PARAM, vpx_codec_enc_init(&enc, NULL, NULL, 0)); -+ EXPECT_EQ(VPX_CODEC_INVALID_PARAM, vpx_codec_encode(NULL, NULL, 0, 0, 0, 0)); -+ EXPECT_EQ(VPX_CODEC_INVALID_PARAM, vpx_codec_encode(NULL, &img, 0, 0, 0, 0)); -+ EXPECT_EQ(VPX_CODEC_INVALID_PARAM, vpx_codec_destroy(NULL)); -+ EXPECT_EQ(VPX_CODEC_INVALID_PARAM, -+ vpx_codec_enc_config_default(NULL, NULL, 0)); -+ EXPECT_EQ(VPX_CODEC_INVALID_PARAM, -+ vpx_codec_enc_config_default(NULL, &cfg, 0)); -+ EXPECT_TRUE(vpx_codec_error(NULL) != NULL); -+ -+ for (int i = 0; i < NELEMENTS(kCodecs); ++i) { -+ SCOPED_TRACE(vpx_codec_iface_name(kCodecs[i])); -+ EXPECT_EQ(VPX_CODEC_INVALID_PARAM, -+ vpx_codec_enc_init(NULL, kCodecs[i], NULL, 0)); -+ EXPECT_EQ(VPX_CODEC_INVALID_PARAM, -+ vpx_codec_enc_init(&enc, kCodecs[i], NULL, 0)); -+ EXPECT_EQ(VPX_CODEC_INVALID_PARAM, -+ vpx_codec_enc_config_default(kCodecs[i], &cfg, 1)); -+ -+ EXPECT_EQ(VPX_CODEC_OK, vpx_codec_enc_config_default(kCodecs[i], &cfg, 0)); -+ EXPECT_EQ(VPX_CODEC_OK, vpx_codec_enc_init(&enc, kCodecs[i], &cfg, 0)); -+ EXPECT_EQ(VPX_CODEC_OK, vpx_codec_encode(&enc, NULL, 0, 0, 0, 0)); -+ -+ EXPECT_EQ(VPX_CODEC_OK, vpx_codec_destroy(&enc)); -+ } -+} -+ -+} // namespace -diff --git test/test.mk test/test.mk -index 80b57e5..e8e8304 100644 ---- test/test.mk -+++ test/test.mk -@@ -20,6 +20,7 @@ LIBVPX_TEST_SRCS-$(CONFIG_DECODERS) += ivf_video_source.h - LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS) += ../y4minput.h ../y4minput.c - LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS) += aq_segment_test.cc - LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS) += datarate_test.cc -+LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS) += encode_api_test.cc - LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS) += error_resilience_test.cc - LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS) += i420_video_source.h - LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS) += resize_test.cc -diff --git vp8/encoder/lookahead.c vp8/encoder/lookahead.c -index ce2ce08..6623385 100644 ---- vp8/encoder/lookahead.c -+++ vp8/encoder/lookahead.c -@@ -181,6 +181,7 @@ vp8_lookahead_pop(struct lookahead_ctx *ctx, - { - struct lookahead_entry* buf = NULL; - -+ assert(ctx != NULL); - if(ctx->sz && (drain || ctx->sz == ctx->max_sz - 1)) - { - buf = pop(ctx, &ctx->read_idx); -diff --git vp9/encoder/vp9_lookahead.c vp9/encoder/vp9_lookahead.c -index 8787be8..def9b8c 100644 ---- vp9/encoder/vp9_lookahead.c -+++ vp9/encoder/vp9_lookahead.c -@@ -207,7 +207,7 @@ struct lookahead_entry *vp9_lookahead_pop(struct lookahead_ctx *ctx, - int drain) { - struct lookahead_entry *buf = NULL; - -- if (ctx->sz && (drain || ctx->sz == ctx->max_sz - MAX_PRE_FRAMES)) { -+ if (ctx && ctx->sz && (drain || ctx->sz == ctx->max_sz - MAX_PRE_FRAMES)) { - buf = pop(ctx, &ctx->read_idx); - ctx->sz--; - } diff --git a/multimedia/libvpx/pkg-plist b/multimedia/libvpx/pkg-plist index f698419fc268..e75382537327 100644 --- a/multimedia/libvpx/pkg-plist +++ b/multimedia/libvpx/pkg-plist @@ -11,7 +11,7 @@ include/vpx/vpx_image.h include/vpx/vpx_integer.h lib/libvpx.a %%SHARED%%lib/libvpx.so -%%SHARED%%lib/libvpx.so.3 -%%SHARED%%lib/libvpx.so.3.0 -%%SHARED%%lib/libvpx.so.3.0.0 +%%SHARED%%lib/libvpx.so.4 +%%SHARED%%lib/libvpx.so.4.0 +%%SHARED%%lib/libvpx.so.4.0.0 libdata/pkgconfig/vpx.pc |