[libcamera-devel] [PATCH] libcamera: Enable vimc pipeline handler when tests are enabled
Kieran Bingham
kieran.bingham at ideasonboard.com
Tue Feb 23 10:58:15 CET 2021
Hi Laurent,
On 23/02/2021 01:15, Laurent Pinchart wrote:
> The
How about:
The addition of the new IPA IPC mechanism compiles pipeline specific
headers to define the interface between the pipeline and the IPA.
This was optimised in 08ce394465b5 ("meson: ipa, proxy: Only build
proxies for enabled pipelines") to only build for enabled pipelines,
however the tests directly use the VIMC pipeline handler, and require
it to be built.
Create a local variable to store the requested pipelines from the user
configuration and extend the enabled pipelines to ensure that VIMC is
always enabled if the tests are also enabled
With a commit message as you wish:
Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> ---
> include/libcamera/ipa/meson.build | 2 +-
> meson.build | 13 ++++++++++++-
> src/ipa/meson.build | 2 +-
> src/libcamera/pipeline/meson.build | 2 +-
> 4 files changed, 15 insertions(+), 4 deletions(-)
>
> diff --git a/include/libcamera/ipa/meson.build b/include/libcamera/ipa/meson.build
> index a4d3f868dd41..2d72c1fcc8d6 100644
> --- a/include/libcamera/ipa/meson.build
> +++ b/include/libcamera/ipa/meson.build
> @@ -72,7 +72,7 @@ ipa_mojoms = []
> foreach file : ipa_mojom_files
> name = file.split('.')[0]
>
> - if not get_option('pipelines').contains(name)
> + if name not in pipelines
> continue
> endif
>
> diff --git a/meson.build b/meson.build
> index be77191d22c4..1768f6eaf98e 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -111,6 +111,17 @@ py_modules = []
> # Libraries used by multiple components
> liblttng = cc.find_library('lttng-ust', required : get_option('tracing'))
>
> +# Pipeline handlers
> +#
> +# Tests require the vimc pipeline handler, include it automatically when tests
> +# are enabled.
> +pipelines = get_option('pipelines')
> +
> +if get_option('test') and 'vimc' not in pipelines
> + message('Enabling vimc pipeline handler to support tests')
> + pipelines += ['vimc']
> +endif
> +
> # Utilities are parsed first to provide support for other components.
> subdir('utils')
>
> @@ -156,5 +167,5 @@ py_mod.find_installation('python3', modules: py_modules)
>
> ## Summarise Configurations
> summary({
> - 'Enabled pipelines': get_option('pipelines'),
> + 'Enabled pipelines': pipelines,
> }, section : 'Configuration')
> diff --git a/src/ipa/meson.build b/src/ipa/meson.build
> index 9d623f227a1f..df385eae84d3 100644
> --- a/src/ipa/meson.build
> +++ b/src/ipa/meson.build
> @@ -22,7 +22,7 @@ ipa_sign = files('ipa-sign.sh')
> ipas = ['ipu3', 'raspberrypi', 'rkisp1', 'vimc']
> ipa_names = []
>
> -foreach pipeline : get_option('pipelines')
> +foreach pipeline : pipelines
> if ipas.contains(pipeline)
> subdir(pipeline)
> ipa_names += join_paths(ipa_install_dir, ipa_name + '.so')
> diff --git a/src/libcamera/pipeline/meson.build b/src/libcamera/pipeline/meson.build
> index 46424493aa37..30dc5b97f1dc 100644
> --- a/src/libcamera/pipeline/meson.build
> +++ b/src/libcamera/pipeline/meson.build
> @@ -1,5 +1,5 @@
> # SPDX-License-Identifier: CC0-1.0
>
> -foreach pipeline : get_option('pipelines')
> +foreach pipeline : pipelines
> subdir(pipeline)
> endforeach
>
--
Regards
--
Kieran
More information about the libcamera-devel
mailing list