[libcamera-devel] Fork libyuv in libcamera codebase

Hirokazu Honda hiroh at chromium.org
Wed Jan 20 05:38:30 CET 2021


On Tue, Jan 19, 2021 at 6:09 PM Laurent Pinchart
<laurent.pinchart at ideasonboard.com> wrote:
>
> On Tue, Jan 19, 2021 at 08:55:37AM +0000, Kieran Bingham wrote:
> > On 19/01/2021 05:59, Hirokazu Honda wrote:
> > > On Tue, Jan 19, 2021 at 2:42 PM Laurent Pinchart wrote:
> > >> On Tue, Jan 19, 2021 at 11:06:45AM +0900, Hirokazu Honda wrote:
> > >>> Hi,
> > >>>
> > >>> Per the discussion in [1], we would fork libyuv in libcamera codebase
> > >>> for general image processing.
> > >>> A question is how to add the directory in libcamera.
> > >>> If a patch is sent, the patch is quite large.
> > >>> I think we would rather send a pull request or tree owners just check in it?
> > >>
> > >> A patch that imports the libyuv sources in libcamera would indeed be
> > >> very large. Would it be possible to use a meson subproject ?
> > >>
> > >
> > > That sounds good to me.
> > > Let me try.
> >
> > Look at how meson handles 'wraps' in particular.
> >
> > https://mesonbuild.com/Wrap-dependency-system-manual.html
> >
> > It should (I think) be possible to reference the libyuv project
> > separately, but libyuv might have to have a meson build system (which
> > you could add upstream I expect).
>
> We can also fork libyuv in a separate git tree, and meson integration
> there, and reference it as a subproject from libcamera. Down the road it
> would indeed be nice to upstream meson support to libyuv, but until that
> happens, the wrap can reference our clone.
>
> > It looks like you can also provide the meson integration as a separate
> > 'patch' on top within the wrap too, which also means we don't have to
> > keep a fork of libyuv as part of libcamera.
> >
> > >>> [1] https://lists.libcamera.org/pipermail/libcamera-devel/2020-December/015705.html
>

I found there was a way of building CMake based subprojects with
meson. https://mesonbuild.com/CMake-module.html#subproject-object
Although the document states "CMake based subprojects are also
supported but not guaranteed to work."
I adopted the way and succeeded in building libyuv with clang and gcc
on my Linux environment.
I uploaded the patch now. Please take a look.
Thanks in advance.

-Hiro

> --
> Regards,
>
> Laurent Pinchart


More information about the libcamera-devel mailing list