[libcamera-devel] [PATCH] libcamera: Enable vimc pipeline handler when tests are enabled

Laurent Pinchart laurent.pinchart at ideasonboard.com
Tue Feb 23 11:44:56 CET 2021


Hi Kieran,

On Tue, Feb 23, 2021 at 09:58:15AM +0000, Kieran Bingham wrote:
> 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

I love your spell checker :-)

Thanks a lot, and sorry for messing up the commit message.

> 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,

Laurent Pinchart


More information about the libcamera-devel mailing list