[oe] [meta-oe][PATCH] libvpx: upgrade to version 1.3.0
Martin Jansa
martin.jansa at gmail.com
Wed Jul 30 14:11:56 UTC 2014
On Wed, Jul 30, 2014 at 03:04:36PM +0200, Carlos Rafael Giani wrote:
> Signed-off-by: Carlos Rafael Giani <dv at pseudoterminal.org>
> ---
> meta-oe/recipes-multimedia/webm/libvpx.inc | 2 +
> .../0001-configure.sh-quote-local-variables.patch | 40 +++++++++++++
> .../webm/libvpx/CVE-2010-4203.patch | 69 ----------------------
> .../libvpx/do-not-hardcode-softfp-float-api.patch | 28 ---------
> meta-oe/recipes-multimedia/webm/libvpx_0.9.5.bb | 19 ------
> meta-oe/recipes-multimedia/webm/libvpx_1.3.0.bb | 18 ++++++
> 6 files changed, 60 insertions(+), 116 deletions(-)
> create mode 100644 meta-oe/recipes-multimedia/webm/libvpx/0001-configure.sh-quote-local-variables.patch
> delete mode 100644 meta-oe/recipes-multimedia/webm/libvpx/CVE-2010-4203.patch
> delete mode 100644 meta-oe/recipes-multimedia/webm/libvpx/do-not-hardcode-softfp-float-api.patch
> delete mode 100644 meta-oe/recipes-multimedia/webm/libvpx_0.9.5.bb
> create mode 100644 meta-oe/recipes-multimedia/webm/libvpx_1.3.0.bb
>
> diff --git a/meta-oe/recipes-multimedia/webm/libvpx.inc b/meta-oe/recipes-multimedia/webm/libvpx.inc
> index 4d8ba9d..963ac0b 100644
> --- a/meta-oe/recipes-multimedia/webm/libvpx.inc
> +++ b/meta-oe/recipes-multimedia/webm/libvpx.inc
> @@ -25,6 +25,8 @@ CONFIGUREOPTS = " \
> --enable-vp8 \
> --enable-libs \
> --disable-install-docs \
> + --disable-static \
> + --enable-shared \
> "
> do_configure() {
> ${S}/configure ${CONFIGUREOPTS}
> diff --git a/meta-oe/recipes-multimedia/webm/libvpx/0001-configure.sh-quote-local-variables.patch b/meta-oe/recipes-multimedia/webm/libvpx/0001-configure.sh-quote-local-variables.patch
> new file mode 100644
> index 0000000..bf94b2d
> --- /dev/null
> +++ b/meta-oe/recipes-multimedia/webm/libvpx/0001-configure.sh-quote-local-variables.patch
> @@ -0,0 +1,40 @@
> +From f45fe1668401d72c2937a52385b492216715c0f9 Mon Sep 17 00:00:00 2001
> +From: James Zern <jzern at google.com>
> +Date: Thu, 6 Mar 2014 15:58:37 -0800
> +Subject: [PATCH] configure.sh: quote local variables
> +
> +fixes issue #711
> +
> +specifying a multiword CC, e.g., CC='gcc -m32', would cause the failure
> +under dash
> +
> +reported in
> +https://bugs.gentoo.org/show_bug.cgi?id=498136
> +
> +patch by floppymaster at gmail dot com
> +
> +Upstream-Status: Backport [f45fe1668401d72c2937a52385b492216715c0f9]
> +
> +Change-Id: I2ba246f765646161538622739961ec0f6c2d8c2d
> +---
> + build/make/configure.sh | 4 ++--
> + 1 file changed, 2 insertions(+), 2 deletions(-)
> +
> +diff --git a/build/make/configure.sh b/build/make/configure.sh
> +index 449d1b9..43f8e77 100755
> +--- a/build/make/configure.sh
> ++++ b/build/make/configure.sh
> +@@ -405,8 +405,8 @@ true
> + }
> +
> + 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 "##" ""
> +--
> +1.8.3.2
> +
> diff --git a/meta-oe/recipes-multimedia/webm/libvpx/CVE-2010-4203.patch b/meta-oe/recipes-multimedia/webm/libvpx/CVE-2010-4203.patch
> deleted file mode 100644
> index 37f5108..0000000
> --- a/meta-oe/recipes-multimedia/webm/libvpx/CVE-2010-4203.patch
> +++ /dev/null
> @@ -1,69 +0,0 @@
> -From: John Koleszar <jkoleszar at google.com>
> -Date: Thu, 4 Nov 2010 20:59:26 +0000 (-0400)
> -Subject: fix integer promotion bug in partition size check
> -X-Git-Url: https://review.webmproject.org/gitweb?p=libvpx.git;a=commitdiff_plain;h=9fb80f7170ec48e23c3c7b477149eeb37081c699
> -
> -fix integer promotion bug in partition size check
> -
> -The check '(user_data_end - partition < partition_size)' must be
> -evaluated as a signed comparison, but because partition_size was
> -unsigned, the LHS was promoted to unsigned, causing an incorrect
> -result on 32-bit. Instead, check the upper and lower bounds of
> -the segment separately.
> -
> -Change-Id: I6266aba7fd7de084268712a3d2a81424ead7aa06
> ----
> -
> -diff --git a/vp8/decoder/decodframe.c b/vp8/decoder/decodframe.c
> -index 2d81d61..f5e49a1 100644
> ---- a/vp8/decoder/decodframe.c
> -+++ b/vp8/decoder/decodframe.c
> -@@ -462,7 +462,8 @@ static void setup_token_decoder(VP8D_COMP *pbi,
> - partition_size = user_data_end - partition;
> - }
> -
> -- if (user_data_end - partition < partition_size)
> -+ if (partition + partition_size > user_data_end
> -+ || partition + partition_size < partition)
> - vpx_internal_error(&pc->error, VPX_CODEC_CORRUPT_FRAME,
> - "Truncated packet or corrupt partition "
> - "%d length", i + 1);
> -@@ -580,7 +581,8 @@ int vp8_decode_frame(VP8D_COMP *pbi)
> - (data[0] | (data[1] << 8) | (data[2] << 16)) >> 5;
> - data += 3;
> -
> -- if (data_end - data < first_partition_length_in_bytes)
> -+ if (data + first_partition_length_in_bytes > data_end
> -+ || data + first_partition_length_in_bytes < data)
> - vpx_internal_error(&pc->error, VPX_CODEC_CORRUPT_FRAME,
> - "Truncated packet or corrupt partition 0 length");
> - vp8_setup_version(pc);
> -diff --git a/vp8/vp8_dx_iface.c b/vp8/vp8_dx_iface.c
> -index e7e5356..f0adf5b 100644
> ---- a/vp8/vp8_dx_iface.c
> -+++ b/vp8/vp8_dx_iface.c
> -@@ -253,8 +253,11 @@ static vpx_codec_err_t vp8_peek_si(const uint8_t *data,
> - unsigned int data_sz,
> - vpx_codec_stream_info_t *si)
> - {
> --
> - vpx_codec_err_t res = VPX_CODEC_OK;
> -+
> -+ if(data + data_sz <= data)
> -+ res = VPX_CODEC_INVALID_PARAM;
> -+ else
> - {
> - /* Parse uncompresssed part of key frame header.
> - * 3 bytes:- including version, frame type and an offset
> -@@ -331,7 +334,10 @@ static vpx_codec_err_t vp8_decode(vpx_codec_alg_priv_t *ctx,
> -
> - ctx->img_avail = 0;
> -
> -- /* Determine the stream parameters */
> -+ /* Determine the stream parameters. Note that we rely on peek_si to
> -+ * validate that we have a buffer that does not wrap around the top
> -+ * of the heap.
> -+ */
> - if (!ctx->si.h)
> - res = ctx->base.iface->dec.peek_si(data, data_sz, &ctx->si);
> -
> diff --git a/meta-oe/recipes-multimedia/webm/libvpx/do-not-hardcode-softfp-float-api.patch b/meta-oe/recipes-multimedia/webm/libvpx/do-not-hardcode-softfp-float-api.patch
> deleted file mode 100644
> index d871694..0000000
> --- a/meta-oe/recipes-multimedia/webm/libvpx/do-not-hardcode-softfp-float-api.patch
> +++ /dev/null
> @@ -1,28 +0,0 @@
> -From: Marcin Juszkiewicz <marcin.juszkiewicz at linaro.org>
> -
> -Upstream-Status: Inappopriate [upstream has it done in other way]
> -
> -Problem is solved upstream but we have quite old version so backporting patches
> -is waste of time.
> -
> ----
> - build/make/configure.sh | 4 ++--
> - 1 file changed, 2 insertions(+), 2 deletions(-)
> -
> ---- libvpx-v0.9.5.orig/build/make/configure.sh
> -+++ libvpx-v0.9.5/build/make/configure.sh
> -@@ -659,12 +659,12 @@ process_common_toolchain() {
> - if enabled iwmmxt || enabled iwmmxt2
> - then
> - check_add_asflags -mcpu=${tgt_isa}
> - elif enabled armv7
> - then
> -- check_add_cflags -march=armv7-a -mcpu=cortex-a8 -mfpu=neon -mfloat-abi=softfp #-ftree-vectorize
> -- check_add_asflags -mcpu=cortex-a8 -mfpu=neon -mfloat-abi=softfp #-march=armv7-a
> -+ check_add_cflags -march=armv7-a -mcpu=cortex-a8 -mfpu=neon #-ftree-vectorize
> -+ check_add_asflags -mcpu=cortex-a8 -mfpu=neon #-march=armv7-a
> - else
> - check_add_cflags -march=${tgt_isa}
> - check_add_asflags -march=${tgt_isa}
> - fi
> -
> diff --git a/meta-oe/recipes-multimedia/webm/libvpx_0.9.5.bb b/meta-oe/recipes-multimedia/webm/libvpx_0.9.5.bb
> deleted file mode 100644
> index 597d0e1..0000000
> --- a/meta-oe/recipes-multimedia/webm/libvpx_0.9.5.bb
> +++ /dev/null
> @@ -1,19 +0,0 @@
> -require libvpx.inc
> -
> -LIC_FILES_CHKSUM = "file://LICENSE;md5=6e8dee932c26f2dab503abf70c96d8bb"
> -
> -PR = "${INC_PR}.0"
> -
> -SRC_URI += "file://libvpx-configure-support-blank-prefix.patch \
> - file://do-not-hardcode-softfp-float-api.patch \
> - file://CVE-2010-4203.patch \
> -"
> -
> -SRC_URI[md5sum] = "4bf2f2c76700202c1fe9201fcb0680e3"
> -SRC_URI[sha256sum] = "2e93968afcded113a7e218de047feecf6659a089058803a9e40fb687de5f9bfa"
> -
> -CONFIGUREOPTS += " \
> - --prefix=${prefix} \
> - --libdir=${libdir} \
> -"
> -
> diff --git a/meta-oe/recipes-multimedia/webm/libvpx_1.3.0.bb b/meta-oe/recipes-multimedia/webm/libvpx_1.3.0.bb
> new file mode 100644
> index 0000000..87358bc
> --- /dev/null
> +++ b/meta-oe/recipes-multimedia/webm/libvpx_1.3.0.bb
> @@ -0,0 +1,18 @@
> +require libvpx.inc
> +
> +LIC_FILES_CHKSUM = "file://LICENSE;md5=d5b04755015be901744a78cc30d390d4"
> +
> +PR = "${INC_PR}.0"
You can drop this.
> +
> +SRC_URI += "file://libvpx-configure-support-blank-prefix.patch \
> + file://0001-configure.sh-quote-local-variables.patch \
> +"
> +
> +SRC_URI[md5sum] = "14783a148872f2d08629ff7c694eb31f"
> +SRC_URI[sha256sum] = "d3dcc8d84af51c6c382b214397c62402e37a799e8ebcda6f4217aef0010451a9"
> +
> +CONFIGUREOPTS += " \
> + --prefix=${prefix} \
> + --libdir=${libdir} \
> +"
Why not add these (and LIC_FILES_CHKSUM) in .inc file or maybe it's time to fold .inc file into
.bb as we don't expect to have multiple libvpx versions.
Regards,
--
Martin 'JaMa' Jansa jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-devel/attachments/20140730/438d1706/attachment-0002.sig>
More information about the Openembedded-devel
mailing list