Openembedded Devel Discussions
 help / color / mirror / Atom feed
From: Patrick Ohly <patrick.ohly@intel.com>
To: openembedded-devel@lists.openembedded.org
Subject: [meta-oe][PATCH 2/2] v4l-utils: fix compatibility with libjpeg-turbo
Date: Wed, 15 Jun 2016 17:08:02 +0200	[thread overview]
Message-ID: <1466003282-21411-2-git-send-email-patrick.ohly@intel.com> (raw)
In-Reply-To: <1466003282-21411-1-git-send-email-patrick.ohly@intel.com>

The libjpeg-turbo update to 1.5.0 broke components which embedd their
own, conflicting definitions of the jpeg_mem functions.

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
---
 .../jpeg_memsrcdest-extend-feature-check.patch     | 62 ++++++++++++++++++++++
 .../recipes-multimedia/v4l2apps/v4l-utils_1.6.2.bb |  1 +
 2 files changed, 63 insertions(+)
 create mode 100644 meta-oe/recipes-multimedia/v4l2apps/v4l-utils/jpeg_memsrcdest-extend-feature-check.patch

diff --git a/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/jpeg_memsrcdest-extend-feature-check.patch b/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/jpeg_memsrcdest-extend-feature-check.patch
new file mode 100644
index 0000000..17f8ba9
--- /dev/null
+++ b/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/jpeg_memsrcdest-extend-feature-check.patch
@@ -0,0 +1,62 @@
+From c40f7873d89fd88b0485fd94f45c139be41e1899 Mon Sep 17 00:00:00 2001
+From: Patrick Ohly <patrick.ohly@intel.com>
+Date: Wed, 15 Jun 2016 10:33:24 +0200
+Subject: [PATCH] jpeg_memsrcdest: extend feature check
+
+libjpeg.h in OpenEmbedded master (from libjpeg-turbo 1.5.0) provides
+these methods if "JPEG_LIB_VERSION >= 80 ||
+defined(MEM_SRCDST_SUPPORTED)".
+
+The support for the jpeg_mem functions was added even when not
+emulating the libjpeg8 API, controlled via the MEM_SRCDST_SUPPORTED
+define, so checking for the version alone is not enough anymore.
+
+See https://github.com/libjpeg-turbo/libjpeg-turbo/commit/ab70623eb29e09e67222be5b9e1ea320fe5aa0e9
+
+This fixes errors about conflicting declarations (signed vs. unsigned
+char).
+
+Upstream-Status: Submitted [http://article.gmane.org/gmane.linux.drivers.video-input-infrastructure/102965]
+
+Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
+---
+ lib/libv4lconvert/jpeg_memsrcdest.c | 4 ++--
+ lib/libv4lconvert/jpeg_memsrcdest.h | 4 ++++
+ 2 files changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/lib/libv4lconvert/jpeg_memsrcdest.c b/lib/libv4lconvert/jpeg_memsrcdest.c
+index b70af8e..8ada421 100644
+--- a/lib/libv4lconvert/jpeg_memsrcdest.c
++++ b/lib/libv4lconvert/jpeg_memsrcdest.c
+@@ -26,8 +26,8 @@
+ #include "jpeg_memsrcdest.h"
+ 
+ /* libjpeg8 and later come with their own (API compatible) memory source
+-   and dest */
+-#if JPEG_LIB_VERSION < 80
++   and dest, and older versions may have it backported */
++#if JPEG_LIB_VERSION < 80 && !defined(MEM_SRCDST_SUPPORTED)
+ 
+ /* Expanded data source object for memory input */
+ 
+diff --git a/lib/libv4lconvert/jpeg_memsrcdest.h b/lib/libv4lconvert/jpeg_memsrcdest.h
+index e971182..b13bf3f 100644
+--- a/lib/libv4lconvert/jpeg_memsrcdest.h
++++ b/lib/libv4lconvert/jpeg_memsrcdest.h
+@@ -1,5 +1,7 @@
+ #include <jpeglib.h>
+ 
++#if JPEG_LIB_VERSION < 80 && !defined(MEM_SRCDST_SUPPORTED)
++
+ void
+ jpeg_mem_src (j_decompress_ptr cinfo, unsigned char * buffer,
+ 	unsigned long bufsize);
+@@ -7,3 +9,5 @@ jpeg_mem_src (j_decompress_ptr cinfo, unsigned char * buffer,
+ void
+ jpeg_mem_dest (j_compress_ptr cinfo, unsigned char ** outbuffer,
+ 	unsigned long * outsize);
++
++#endif
+-- 
+2.1.4
+
diff --git a/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.6.2.bb b/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.6.2.bb
index 75a42a2..46cd942 100644
--- a/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.6.2.bb
+++ b/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.6.2.bb
@@ -16,6 +16,7 @@ SRC_URI = "http://linuxtv.org/downloads/v4l-utils/v4l-utils-${PV}.tar.bz2 \
            file://0001-Revert-media-ctl-Don-t-install-libmediactl-and-libv4.patch \
            file://mediactl-pkgconfig.patch \
            file://export-mediactl-headers.patch \
+           file://jpeg_memsrcdest-extend-feature-check.patch \
           "
 SRC_URI[md5sum] = "9cb3c178f937954e65bf30920af433ef"
 SRC_URI[sha256sum] = "d3d6eb1f0204fb11f3d318bfca35d5f73cc077f88fac7665a47856a16496be7d"
-- 
2.1.4



  reply	other threads:[~2016-06-15 15:08 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-15 10:45 State of bitbake world 2016-06-13 Martin Jansa
     [not found] ` <1466002419.9543.1.camel@intel.com>
2016-06-15 15:08   ` [meta-oe][PATCH 1/2] libgphoto2: fix compatibility with libjpeg-turbo Patrick Ohly
2016-06-15 15:08     ` Patrick Ohly [this message]
2016-06-16  9:09     ` Patrick Ohly
2016-06-15 15:29   ` [OE-core] State of bitbake world 2016-06-13 Martin Jansa

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1466003282-21411-2-git-send-email-patrick.ohly@intel.com \
    --to=patrick.ohly@intel.com \
    --cc=openembedded-devel@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox