[libcamera-devel] [PATCH v3 6/7] v4l2: v4l2_compat: Use correct libcamera_dep dependency
Kieran Bingham
kieran.bingham at ideasonboard.com
Sat Mar 7 23:52:29 CET 2020
Hi Laurent,
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?
> +]
> +
> 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
--
Kieran
More information about the libcamera-devel
mailing list