[libcamera-devel] [PATCH] meson: Provide options to disable test/docs
Niklas Söderlund
niklas.soderlund at ragnatech.se
Wed Mar 20 17:25:51 CET 2019
Hi Kieran,
On 2019-03-20 16:20:56 +0000, Kieran Bingham wrote:
> Hi Niklas,
>
> On 20/03/2019 16:17, Niklas Söderlund wrote:
> > Hi Kieran,
> >
> > Thanks for your work.
> >
> > On 2019-03-20 15:47:48 +0000, Kieran Bingham wrote:
> >> It can be desirable to disable the compilation and processing of both
> >> the test suite and documentation for use cases such as packaging to an
> >> embedded target.
> >>
> >> Provide a new meson_options.txt file to allow disabling either or both
> >> of the tests and documentation components of libcamera.
> >>
> >> These options can be provided at the initial configuration time, for
> >> example:
> >>
> >> meson build -Dtests=false -Ddocumentation=false
> >
> > This seems to work as expected on my system :-)
> >
> > I'm a bit perplexed that options are enabled by default, my expectations
> > looking at the code would be that they would be disabled if not
> > explicitly enabled. But I assume this is just me struggling with
> > wrapping my head around meson ;-P
>
>
> https://mesonbuild.com/Build-options.html#booleans
>
> > Booleans may have values of either true or false. If no default value is supplied then true will be used as the default.
>
> I can append a " value : true" to the option to make this clearer if you
> prefer?
No the default behavior is fine, in fact I prefers to only modify things
if needed. I was just pointing out that without your example of that
explicitly disabling the options I would have assumed that we would not
build tests or documentation by default. Now I know how meson works so
it's fine from my point of view, thanks :-)
>
> --
> Regards
>
> Kieran
>
>
> >> or by reconfiguring an existing build tree:
> >>
> >> cd build
> >> meson configure -Ddocumentation=false
> >> meson configure -Dtests=false
> >>
> >> Signed-off-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
> >
> > Reviewed-by: Niklas Söderlund <niklas.soderlund at ragnatech.se>
> >
> >> ---
> >> meson.build | 10 ++++++++--
> >> meson_options.txt | 2 ++
> >> 2 files changed, 10 insertions(+), 2 deletions(-)
> >> create mode 100644 meson_options.txt
> >>
> >> diff --git a/meson.build b/meson.build
> >> index 4465a3851a30..43d4a57602bb 100644
> >> --- a/meson.build
> >> +++ b/meson.build
> >> @@ -27,9 +27,15 @@ libcamera_includes = include_directories('include')
> >>
> >> subdir('include')
> >> subdir('src')
> >> -subdir('test')
> >> subdir('utils')
> >> -subdir('Documentation')
> >> +
> >> +if get_option('tests')
> >> + subdir('test')
> >> +endif
> >> +
> >> +if get_option('documentation')
> >> + subdir('Documentation')
> >> +endif
> >>
> >> pkg_mod = import('pkgconfig')
> >> pkg_mod.generate(libraries : libcamera,
> >> diff --git a/meson_options.txt b/meson_options.txt
> >> new file mode 100644
> >> index 000000000000..c5df661a2286
> >> --- /dev/null
> >> +++ b/meson_options.txt
> >> @@ -0,0 +1,2 @@
> >> +option('tests', type : 'boolean')
> >> +option('documentation', type : 'boolean')
> >> --
> >> 2.19.1
> >>
> >> _______________________________________________
> >> libcamera-devel mailing list
> >> libcamera-devel at lists.libcamera.org
> >> https://lists.libcamera.org/listinfo/libcamera-devel
> >
>
> --
> Regards
> --
> Kieran
--
Regards,
Niklas Söderlund
More information about the libcamera-devel
mailing list