From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yann E. MORIN Date: Fri, 25 Jul 2014 18:40:56 +0200 Subject: [Buildroot] [PATCH] gst-fsl-plugins: fix includes for recent toolchains In-Reply-To: <1406270536-17145-1-git-send-email-bisson.gary@gmail.com> References: <1406270536-17145-1-git-send-email-bisson.gary@gmail.com> Message-ID: <20140725164056.GA3955@free.fr> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: buildroot@busybox.net Gary, All, On 2014-07-24 23:42 -0700, Gary Bisson spake thusly: > Build was failing starting with CodeSourcery 2013.11 due to > new v4l kernel headers. > > Signed-off-by: Gary Bisson > > --- > Yann, all, > I know this patch will look bad as we already discussed the use of -I instead of -idirafter. [can you wrap lines at < ~80 chars, please?] Indeed. WQe should be very (extremely!) carefull with this. Playing with non-sanitised kernel headers is really dangerous, and can come bite you at the most eunexpected moment. > However it has been reported and verified that this package doesn't build using recent toolchain such as CodeSourcery 2013.11. Care to share a defconfig with which I can reproduce the issue, please? I would like to see if there is not another solution to using -I and keep -idirafter if possible. > It seems to come from the fact that the kernel headers in the toolchain have been updated which brings some incompatibility. Hmmmm.. I seem to recall with had another such issue reported about CS toolchains a while ago... Can't find it again, however... :-/ > Using -idirafter, the v4l header picked up is from the toolchain which is missing some older structures like v4l2_dbg_chip_ident. This was removed between 3.10 and 3.11, indeed. I think the best fix would be something like: diff --git a/package/gstreamer/gst-fsl-plugins/Config.in b/package/gstreamer/gst-fsl-plugins/Config.in index 309e745..e0d961a 100644 --- a/package/gstreamer/gst-fsl-plugins/Config.in +++ b/package/gstreamer/gst-fsl-plugins/Config.in @@ -1,7 +1,7 @@ comment "gst-fsl-plugins needs an imx-specific Linux kernel to be built" depends on BR2_arm && !BR2_LINUX_KERNEL -comment "gst-fsl-plugins needs an (e)glibc toolchain" +comment "gst-fsl-plugins needs an (e)glibc toolchain w/ headers < 3.11" depends on BR2_arm depends on !BR2_TOOLCHAIN_USES_GLIBC @@ -10,6 +10,7 @@ config BR2_PACKAGE_GST_FSL_PLUGINS depends on BR2_LINUX_KERNEL depends on BR2_arm # Only relevant for i.MX depends on BR2_TOOLCHAIN_USES_GLIBC # libfslcodec + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11 # Old v4l2 API select BR2_PACKAGE_GST_PLUGINS_BASE select BR2_PACKAGE_LIBFSLVPUWRAP select BR2_PACKAGE_IMX_LIB After all, the minimum kernel headers version can be used backward, too. That would need confirmation by others, though... Regards, Yann E. MORIN, -- .-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'