[OE-core] [PATCH 5/7] gst-plugins-good: fix 3.10 libc-headers build failure

Bruce Ashfield bruce.ashfield at windriver.com
Sun Aug 25 14:20:47 UTC 2013


On 13-08-25 2:36 AM, Jonathan Liu wrote:
> On 25/08/2013 3:16 PM, Bruce Ashfield wrote:
>> kernel commit 24b9f5017 [[media] V4L: Remove deprecated image
>> centering controls]
>> removed the definitions of V4L2_CID_HCENTER and V4L2_CID_VCENTER after
>> three
>> years of depreciation.
>>
>> The ioctl values are still free, and the case statement which
>> processess them
>> in v4l2 userspace falls through to the proper replacement. So in the
>> short
>> term, we can explicitly define them using the old absolute values, and
>> everything
>> will work.
>>
>> Signed-off-by: Bruce Ashfield <bruce.ashfield at windriver.com>
>> ---
>>   ...define-V4L2_CID_HCENTER-and-V4L2_CID_VCEN.patch |   45
>> ++++++++++++++++++++
>>   .../gstreamer/gst-plugins-good_0.10.31.bb          |    1 +
>>   2 files changed, 46 insertions(+)
>>   create mode 100644
>> meta/recipes-multimedia/gstreamer/gst-plugins-good-0.10.31/0001-v4l2_calls-define-V4L2_CID_HCENTER-and-V4L2_CID_VCEN.patch
>>
>>
>> diff --git
>> a/meta/recipes-multimedia/gstreamer/gst-plugins-good-0.10.31/0001-v4l2_calls-define-V4L2_CID_HCENTER-and-V4L2_CID_VCEN.patch
>> b/meta/recipes-multimedia/gstreamer/gst-plugins-good-0.10.31/0001-v4l2_calls-define-V4L2_CID_HCENTER-and-V4L2_CID_VCEN.patch
>>
>> new file mode 100644
>> index 0000000..bd0de58
>> --- /dev/null
>> +++
>> b/meta/recipes-multimedia/gstreamer/gst-plugins-good-0.10.31/0001-v4l2_calls-define-V4L2_CID_HCENTER-and-V4L2_CID_VCEN.patch
>>
>> @@ -0,0 +1,45 @@
>> +From ccb01de8096a32d86d47b0d92ec3416c57ee4d25 Mon Sep 17 00:00:00 2001
>> +From: Bruce Ashfield <bruce.ashfield at windriver.com>
>> +Date: Thu, 22 Aug 2013 12:15:54 -0400
>> +Subject: [PATCH] v4l2_calls: define V4L2_CID_HCENTER and
>> V4L2_CID_VCENTER
>> +
>> +kernel commit 24b9f5017 [[media] V4L: Remove deprecated image
>> centering controls]
>> +removed the definitions of V4L2_CID_HCENTER and V4L2_CID_VCENTER
>> after three
>> +years of depreciation.
>> +
>> +The ioctl values are still free, and the case statement which
>> processess them
>> +in v4l2 userspace falls through to the proper replacement. So in the
>> short
>> +term, we can explicitly define them using the old absolute values,
>> and everything
>> +will work.
> Missing Upstream-Status.

The patch is RFC, and I'm really doing in on behalf of khem .. so 
honestly, I knew this wasn't in the patch and it wasn't on the top of
my list when sending it out at 1:30 AM. I don't use them in kernel
changes, so they aren't in my typical workflow.

Saul or Richard can add the status if they take the patch.

Cheers,

Bruce

>
> Regards,
> Jonathan
>> +
>> +Signed-off-by: Bruce Ashfield <bruce.ashfield at windriver.com>
>> +---
>> + sys/v4l2/v4l2_calls.c |    9 +++++++--
>> + 1 file changed, 7 insertions(+), 2 deletions(-)
>> +
>> +diff --git a/sys/v4l2/v4l2_calls.c b/sys/v4l2/v4l2_calls.c
>> +index 309bfb6..3c64544 100644
>> +--- a/sys/v4l2/v4l2_calls.c
>> ++++ b/sys/v4l2/v4l2_calls.c
>> +@@ -54,11 +54,16 @@
>> + #include "gst/gst-i18n-plugin.h"
>> +
>> + /* Those are ioctl calls */
>> ++
>> ++/* V4L2_CID_HCENTER has been removed from the mainline kernel, but
>> ++   the ioctl space is still present. Since these values fall through
>> ++   to their replacement, it is safe (in the short term) to re-use the
>> ++    old values explictily */
>> + #ifndef V4L2_CID_HCENTER
>> +-#define V4L2_CID_HCENTER V4L2_CID_HCENTER_DEPRECATED
>> ++#define V4L2_CID_HCENTER V4L2_CID_BASE+22
>> + #endif
>> + #ifndef V4L2_CID_VCENTER
>> +-#define V4L2_CID_VCENTER V4L2_CID_VCENTER_DEPRECATED
>> ++#define V4L2_CID_VCENTER V4L2_CID_BASE+23
>> + #endif
>> +
>> + GST_DEBUG_CATEGORY_EXTERN (v4l2_debug);
>> +--
>> +1.7.10.4
>> +
>> diff --git
>> a/meta/recipes-multimedia/gstreamer/gst-plugins-good_0.10.31.bb
>> b/meta/recipes-multimedia/gstreamer/gst-plugins-good_0.10.31.bb
>> index daffcf1..d18e155 100644
>> --- a/meta/recipes-multimedia/gstreamer/gst-plugins-good_0.10.31.bb
>> +++ b/meta/recipes-multimedia/gstreamer/gst-plugins-good_0.10.31.bb
>> @@ -23,6 +23,7 @@ DEPENDS += "gst-plugins-base gconf cairo libpng zlib
>> libid3tag flac \
>>   inherit gettext gconf
>>   SRC_URI +=
>> "file://0001-v4l2-fix-build-with-recent-kernels-the-v4l2_buffer-i.patch"
>> +SRC_URI +=
>> "file://0001-v4l2_calls-define-V4L2_CID_HCENTER-and-V4L2_CID_VCEN.patch"
>>   EXTRA_OECONF += "--disable-aalib --disable-esd --disable-shout2
>> --disable-libcaca --disable-hal --without-check \
>>                    --disable-examples --disable-taglib"
>




More information about the Openembedded-core mailing list