[libcamera-devel] [PATCH v3 6/7] v4l2: v4l2_compat: Use correct libcamera_dep dependency
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Sun Mar 8 00:44:12 CET 2020
Hi Kieran,
On Sat, Mar 07, 2020 at 10:52:29PM +0000, Kieran Bingham wrote:
> On 07/03/2020 21:13, Laurent Pinchart wrote:
> > The v4l2-compat shared library is declared as depending on
> > libcamera_deps. This is not correct, as libcamera_deps contains the
> > dependencies of libcamera itself. The correct dependency for users of
> > libcamera is libcamera_dep.
> >
> > Fixing this allows dropping libcamera_includes from the list of includes
> > required by v4l2-compat, and libcamera from the link_with list, as they
> > are already contained in libcamera_dep. We however need to add an
> > explicit dependency on libdl which was previously provided by
> > libcamera_deps.
> >
> > Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
>
> Aha excellent, and also this brings in libcamera_api as a dependency to
> v4l2_compat which it seems wasn't before!
>
> From:
>
> https://gitlab.com/libcamera/libcamera/-/jobs/463333443
> before this patch to:
> https://gitlab.com/libcamera/libcamera/-/jobs/463335113
>
> Where it can clearly be seen that the v4l2_compat library is now built
> much later in the sequences (and all generated files are now first which
> is good).
>
> Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
>
> > ---
> > src/v4l2/meson.build | 16 +++++++++-------
> > 1 file changed, 9 insertions(+), 7 deletions(-)
> >
> > diff --git a/src/v4l2/meson.build b/src/v4l2/meson.build
> > index 14ee3594747d..91f4170da852 100644
> > --- a/src/v4l2/meson.build
> > +++ b/src/v4l2/meson.build
> > @@ -5,11 +5,6 @@ v4l2_compat_sources = files([
> > 'v4l2_compat_manager.cpp',
> > ])
> >
> > -v4l2_compat_includes = [
> > - libcamera_includes,
> > - libcamera_internal_includes,
> > -]
> > -
> > v4l2_compat_cpp_args = [
> > # Meson enables large file support unconditionally, which redirect file
> > # operations to 64-bit versions. This results in some symbols being
> > @@ -21,11 +16,18 @@ v4l2_compat_cpp_args = [
> > '-fvisibility=hidden',
> > ]
> >
> > +v4l2_compat_deps = [
> > + cc.find_library('dl'),
> > +]
> > +
> > +v4l2_compat_includes = [
> > + libcamera_internal_includes,
>
> Hrm ... this could presumably now go straight into the
> include_directories declaration below.
>
> Do you think it will grow and merit staying as it's own array?
I'm not sure, I don't mind much either way. I'll inline both
v4l2_compat_deps and v4l2_compat_includes.
> > +]
> > +
> > v4l2_compat = shared_library('v4l2-compat',
> > v4l2_compat_sources,
> > name_prefix : '',
> > install : true,
> > - link_with : libcamera,
> > include_directories : v4l2_compat_includes,
> > - dependencies : libcamera_deps,
> > + dependencies : [ libcamera_dep, v4l2_compat_deps ],
> > cpp_args : v4l2_compat_cpp_args)
> >
--
Regards,
Laurent Pinchart
More information about the libcamera-devel
mailing list